| /* PR c/58346 */ | |
| /* { dg-do compile } */ | |
| void | |
| foo (void) | |
| { | |
| __PTRDIFF_TYPE__ d; | |
| const int i = 0; | |
| int a1[2][0], a2[2][0]; | |
| int b1[3][i], b2[4][i]; | |
| d = a1 - a2; /* { dg-error "arithmetic on pointer to an empty aggregate" } */ | |
| __asm volatile ("" : "+g" (d)); | |
| /* No error here for C. */ | |
| d = b1 - b2; /* { dg-error "arithmetic on pointer to an empty aggregate" "" { target c++ } } */ | |
| __asm volatile ("" : "+g" (d)); | |
| } |