(root)/
gcc-13.2.0/
gcc/
testsuite/
c-c++-common/
pr77624-2.c
       1  /* PR middle-end/77624 */
       2  /* { dg-do compile } */
       3  
       4  void
       5  foo (int *a)
       6  {
       7    double b = 0;
       8    __atomic_is_lock_free (2, a, 2);	/* { dg-error "too many arguments" } */
       9    __atomic_is_lock_free (2);		/* { dg-error "too few arguments" } */
      10    __atomic_is_lock_free (2, b);		/* { dg-error "incompatible type" "" { target c } } */
      11  					/* { dg-message "expected" "" { target c } .-1 } */
      12  					/* { dg-error "convert" "" { target c++ } .-2 } */
      13    __atomic_is_lock_free (2, 0);
      14  }
      15  
      16  void
      17  bar (int *a)
      18  {
      19    double b = 0;
      20    __atomic_always_lock_free (2, a, 2);	/* { dg-error "too many arguments" } */
      21    __atomic_always_lock_free (2);	/* { dg-error "too few arguments" } */
      22    __atomic_always_lock_free (2, b);	/* { dg-error "incompatible type" "" { target c } } */
      23  					/* { dg-message "expected" "" { target c } .-1 } */
      24  					/* { dg-error "convert" "" { target c++ } .-2 } */
      25    __atomic_always_lock_free (2, 0);
      26  }