(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.dg/
attr-access-3.c
       1  /* PR middle-end/97879 - ICE on invalid mode in attribute access
       2     { dg-do compile }
       3     { dg-options "-Wall" } */
       4  
       5  #define A(...) __attribute__ ((access (__VA_ARGS__)))
       6  
       7  A (" ", 1) void f1 (int *);       // { dg-error "attribute 'access' mode '\" \"' is not an identifier; expected one of 'read_only', 'read_write', 'write_only', or 'none'" }
       8             void f1 (int *);
       9  
      10  
      11  A ("none", 1) void f2 (char *);   // { dg-error "not an identifier" }
      12                void f2 (char *);
      13  
      14  A (1) void f3 ();                 // { dg-error "not an identifier" }
      15  
      16  A (1, 2) void f4 ();              // { dg-error "not an identifier" }
      17  A (2., 3.) void f5 ();            // { dg-error "not an identifier" }
      18  
      19  // Verify that copying a valid access attribute doesn't cause errors.
      20  A (read_only, 1, 2)         void f6 (void*, int);
      21  __attribute__ ((copy (f6))) void f7 (void*, int);