1 static void a(void) __attribute__((context)); // KO 2 static void b(void) __attribute__((context())); // KO 3 static void c(void) __attribute__((context 1)); // KO 4 static void d(void) __attribute__((context 1,2)); // KO 5 static void e(void) __attribute__((context (1))); // !!!! 6 static void f(void) __attribute__((context(0))); // !!!! 7 static void g(void) __attribute__((context(0,1,2,3))); // KO 8 9 static void h(void) __attribute__((context (1,2))); // OK 10 static void i(void) __attribute__((context(0,1))); // OK 11 static void j(void) __attribute__((context(0,1,2))); // OK 12 13 extern int u, v; 14 static void x(void) __attribute__((context(0,1,v))); 15 static void y(void) __attribute__((context(0,u,1))); 16 static void z(void) __attribute__((context(0,u))); 17 18 /* 19 * check-name: attr-context 20 * 21 * check-error-start 22 attr-context.c:1:43: error: Expected ( after context attribute 23 attr-context.c:1:43: error: got ) 24 attr-context.c:2:44: error: Expected , after context 1st argument 25 attr-context.c:2:44: error: got ) 26 attr-context.c:3:44: error: Expected ( after context attribute 27 attr-context.c:3:44: error: got 1 28 attr-context.c:4:44: error: Expected ( after context attribute 29 attr-context.c:4:44: error: got 1 30 attr-context.c:5:46: error: Expected , after context 1st argument 31 attr-context.c:5:46: error: got ) 32 attr-context.c:6:45: error: Expected , after context 1st argument 33 attr-context.c:6:45: error: got ) 34 attr-context.c:7:49: error: Expected ) after context 3rd argument 35 attr-context.c:7:49: error: got , 36 attr-context.c:14:48: error: bad constant expression 37 attr-context.c:15:46: error: bad constant expression 38 attr-context.c:16:46: error: bad constant expression 39 * check-error-end 40 */ 41