Home | History | Annotate | Line # | Download | only in lint1
      1 /*	$NetBSD: msg_350.c,v 1.4 2024/03/01 17:22:55 rillig Exp $	*/
      2 # 3 "msg_350.c"
      3 
      4 // Test for message: '_Atomic' requires C11 or later [350]
      5 
      6 /*
      7  * The keyword '_Atomic' was added in C11.  This test ensures that in C99
      8  * mode, the parser recognizes the keyword but flags it.
      9  *
     10  * See also:
     11  *	c11_atomic.c
     12  */
     13 
     14 /* lint1-extra-flags: -X 351 */
     15 
     16 /* expect+1: error: '_Atomic' requires C11 or later [350] */
     17 typedef _Atomic int atomic_int;
     18 
     19 /* expect+1: error: '_Atomic' requires C11 or later [350] */
     20 typedef _Atomic struct {
     21 	int field;
     22 } atomic_struct;
     23 
     24 /* expect+3: error: '_Atomic' requires C11 or later [350] */
     25 /* expect+2: error: '_Atomic' requires C11 or later [350] */
     26 double *
     27 atomic_ptr_cmpexch(_Atomic(double *)*ptr_var, _Atomic(double *)new_value)
     28 {
     29 	double *old = *ptr_var;
     30 	*ptr_var = new_value;
     31 	return old;
     32 }
     33