Module Name:    src
Committed By:   rillig
Date:           Fri Jul  7 00:20:39 UTC 2023

Modified Files:
        src/distrib/sets/lists/tests: mi
        src/tests/usr.bin/xlint/lint1: c11_atomic.c c11_generic_expression.c
            msg_350.c
Removed Files:
        src/tests/usr.bin/xlint/lint1: c99_atomic.c

Log Message:
tests/lint: merge duplicate tests for C11 _Atomic


To generate a diff of this commit:
cvs rdiff -u -r1.1274 -r1.1275 src/distrib/sets/lists/tests/mi
cvs rdiff -u -r1.3 -r1.4 src/tests/usr.bin/xlint/lint1/c11_atomic.c
cvs rdiff -u -r1.15 -r1.16 \
    src/tests/usr.bin/xlint/lint1/c11_generic_expression.c
cvs rdiff -u -r1.3 -r0 src/tests/usr.bin/xlint/lint1/c99_atomic.c
cvs rdiff -u -r1.1 -r1.2 src/tests/usr.bin/xlint/lint1/msg_350.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/distrib/sets/lists/tests/mi
diff -u src/distrib/sets/lists/tests/mi:1.1274 src/distrib/sets/lists/tests/mi:1.1275
--- src/distrib/sets/lists/tests/mi:1.1274	Wed Jul  5 11:36:56 2023
+++ src/distrib/sets/lists/tests/mi	Fri Jul  7 00:20:39 2023
@@ -1,4 +1,4 @@
-# $NetBSD: mi,v 1.1274 2023/07/05 11:36:56 rillig Exp $
+# $NetBSD: mi,v 1.1275 2023/07/07 00:20:39 rillig Exp $
 #
 # Note: don't delete entries from here - mark them as "obsolete" instead.
 #
@@ -6512,7 +6512,7 @@
 ./usr/tests/usr.bin/xlint/lint1/c23.c				tests-usr.bin-tests	compattestfile,atf
 ./usr/tests/usr.bin/xlint/lint1/c90.c				tests-usr.bin-tests	compattestfile,atf
 ./usr/tests/usr.bin/xlint/lint1/c90.exp				tests-obsolete		obsolete,atf
-./usr/tests/usr.bin/xlint/lint1/c99_atomic.c			tests-usr.bin-tests	compattestfile,atf
+./usr/tests/usr.bin/xlint/lint1/c99_atomic.c			tests-obsolete		obsolete,atf
 ./usr/tests/usr.bin/xlint/lint1/c99_bool_strict_suppressed.c	tests-usr.bin-tests	compattestfile,atf
 ./usr/tests/usr.bin/xlint/lint1/c99_bool_strict_suppressed.exp	tests-obsolete		obsolete
 ./usr/tests/usr.bin/xlint/lint1/c99_init_array.c		tests-obsolete		obsolete,atf

Index: src/tests/usr.bin/xlint/lint1/c11_atomic.c
diff -u src/tests/usr.bin/xlint/lint1/c11_atomic.c:1.3 src/tests/usr.bin/xlint/lint1/c11_atomic.c:1.4
--- src/tests/usr.bin/xlint/lint1/c11_atomic.c:1.3	Sat Jan 21 13:48:40 2023
+++ src/tests/usr.bin/xlint/lint1/c11_atomic.c	Fri Jul  7 00:20:39 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: c11_atomic.c,v 1.3 2023/01/21 13:48:40 rillig Exp $	*/
+/*	$NetBSD: c11_atomic.c,v 1.4 2023/07/07 00:20:39 rillig Exp $	*/
 # 3 "c11_atomic.c"
 
 /*
@@ -8,6 +8,7 @@
  * See also:
  *	C11 6.7.3 Type qualifiers
  *	C11 6.7.2.4 Atomic type specifiers
+ *	msg_350.c
  */
 
 /* lint1-extra-flags: -Ac11 */

Index: src/tests/usr.bin/xlint/lint1/c11_generic_expression.c
diff -u src/tests/usr.bin/xlint/lint1/c11_generic_expression.c:1.15 src/tests/usr.bin/xlint/lint1/c11_generic_expression.c:1.16
--- src/tests/usr.bin/xlint/lint1/c11_generic_expression.c:1.15	Tue Mar 28 14:44:34 2023
+++ src/tests/usr.bin/xlint/lint1/c11_generic_expression.c	Fri Jul  7 00:20:39 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: c11_generic_expression.c,v 1.15 2023/03/28 14:44:34 rillig Exp $	*/
+/*	$NetBSD: c11_generic_expression.c,v 1.16 2023/07/07 00:20:39 rillig Exp $	*/
 # 3 "c11_generic_expression.c"
 
 /*
@@ -11,7 +11,7 @@
  * C11 6.5.1.1 "Generic selection"
  */
 
-/* lint1-extra-flags: -Ac11 -X 351 */
+/* lint1-extra-flags: -Ac11 */
 
 /*
  * The type of 'var' is not compatible with any of the types from the
@@ -101,6 +101,7 @@ primary_expression(void)
  * which is then silently ignored by init_expr.  This situation is already
  * covered by the compilers, so there is no need for lint to double-check it.
  */
+/* expect+1: warning: missing 'extern' header declaration for 'x' [351] */
 const char *x = _Generic(
     1ULL + 1.0f,
     int: 1

Index: src/tests/usr.bin/xlint/lint1/msg_350.c
diff -u src/tests/usr.bin/xlint/lint1/msg_350.c:1.1 src/tests/usr.bin/xlint/lint1/msg_350.c:1.2
--- src/tests/usr.bin/xlint/lint1/msg_350.c:1.1	Sat Jan 21 13:07:22 2023
+++ src/tests/usr.bin/xlint/lint1/msg_350.c	Fri Jul  7 00:20:39 2023
@@ -1,8 +1,16 @@
-/*	$NetBSD: msg_350.c,v 1.1 2023/01/21 13:07:22 rillig Exp $	*/
+/*	$NetBSD: msg_350.c,v 1.2 2023/07/07 00:20:39 rillig Exp $	*/
 # 3 "msg_350.c"
 
 // Test for message 350: '_Atomic' requires C11 or later [350]
 
+/*
+ * The keyword '_Atomic' was added in C11.  This test ensures that in C99
+ * mode, the parser recognizes the keyword but flags it.
+ *
+ * See also:
+ *	c11_atomic.c
+ */
+
 /* expect+1: error: '_Atomic' requires C11 or later [350] */
 typedef _Atomic int atomic_int;
 
@@ -10,3 +18,13 @@ typedef _Atomic int atomic_int;
 typedef _Atomic struct {
 	int field;
 } atomic_struct;
+
+/* expect+3: error: '_Atomic' requires C11 or later [350] */
+/* expect+2: error: '_Atomic' requires C11 or later [350] */
+double *
+atomic_ptr_cmpexch(_Atomic(double *)*ptr_var, _Atomic(double *)new_value)
+{
+	double *old = *ptr_var;
+	*ptr_var = new_value;
+	return old;
+}

Reply via email to