1 /* Gcc 3.3.1 deprecates memory inputs of non-lvalues.  */
2 /* { dg-do compile } */
3 
test(void)4 void test(void)
5 {
6   register int r;
7   register int r2;
8   int i;
9   static int m;
10   int *p;
11 
12   __asm__ ("" : : "m"(r));	/* { dg-error "" } */
13   __asm__ ("" : : "m"(i));
14   __asm__ ("" : : "m"(m));
15   __asm__ ("" : : "m"(0));	/* { dg-error "" } */
16   __asm__ ("" : : "m"(i+1));	/* { dg-error "" } */
17   __asm__ ("" : : "m"(*p++));
18 
19   __asm__ ("" : : "g"(r));
20   __asm__ ("" : : "g"(i));
21   __asm__ ("" : : "g"(m));
22   __asm__ ("" : : "g"(0));
23   __asm__ ("" : : "g"(i+1));
24 
25   __asm__ ("" : "=m"(r2));	/* { dg-error "" } */
26   __asm__ ("" : "=m"(i));
27   __asm__ ("" : "=m"(m));
28 }
29