blob: 45dd1aaad11b09b32c2d1277fdcbf82235f67d9c [file] [log] [blame]
/* PR middle-end/97879 - ICE on invalid mode in attribute access
{ dg-do compile }
{ dg-options "-Wall" } */
#define A(...) __attribute__ ((access (__VA_ARGS__)))
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'" }
void f1 (int *);
A ("none", 1) void f2 (char *); // { dg-error "not an identifier" }
void f2 (char *);
A (1) void f3 (); // { dg-error "not an identifier" }
A (1, 2) void f4 (); // { dg-error "not an identifier" }
A (2., 3.) void f5 (); // { dg-error "not an identifier" }
// Verify that copying a valid access attribute doesn't cause errors.
A (read_only, 1, 2) void f6 (void*, int);
__attribute__ ((copy (f6))) void f7 (void*, int);