47 lines
1.7 KiB
C
47 lines
1.7 KiB
C
// Test that qualifiers on asm are allowed in any order.
|
|
// { dg-do compile }
|
|
// { dg-options "-std=c++98" }
|
|
|
|
void
|
|
f ()
|
|
{
|
|
asm volatile goto ("" :::: lab);
|
|
asm volatile inline ("" :::);
|
|
asm inline volatile ("" :::);
|
|
asm inline goto ("" :::: lab);
|
|
asm goto volatile ("" :::: lab);
|
|
asm goto inline ("" :::: lab);
|
|
|
|
asm volatile inline goto ("" :::: lab);
|
|
asm volatile goto inline ("" :::: lab);
|
|
asm inline volatile goto ("" :::: lab);
|
|
asm inline goto volatile ("" :::: lab);
|
|
asm goto volatile inline ("" :::: lab);
|
|
asm goto inline volatile ("" :::: lab);
|
|
|
|
/* Duplicates are not allowed. */
|
|
asm goto volatile volatile ("" :::: lab); /* { dg-error "" } */
|
|
asm volatile goto volatile ("" :::: lab); /* { dg-error "" } */
|
|
asm volatile volatile goto ("" :::: lab); /* { dg-error "" } */
|
|
asm goto goto volatile ("" :::: lab); /* { dg-error "" } */
|
|
asm goto volatile goto ("" :::: lab); /* { dg-error "" } */
|
|
asm volatile goto goto ("" :::: lab); /* { dg-error "" } */
|
|
|
|
asm inline volatile volatile ("" :::); /* { dg-error "" } */
|
|
asm volatile inline volatile ("" :::); /* { dg-error "" } */
|
|
asm volatile volatile inline ("" :::); /* { dg-error "" } */
|
|
asm inline inline volatile ("" :::); /* { dg-error "" } */
|
|
asm inline volatile inline ("" :::); /* { dg-error "" } */
|
|
asm volatile inline inline ("" :::); /* { dg-error "" } */
|
|
|
|
asm goto inline inline ("" :::: lab); /* { dg-error "" } */
|
|
asm inline goto inline ("" :::: lab); /* { dg-error "" } */
|
|
asm inline inline goto ("" :::: lab); /* { dg-error "" } */
|
|
asm goto goto inline ("" :::: lab); /* { dg-error "" } */
|
|
asm goto inline goto ("" :::: lab); /* { dg-error "" } */
|
|
asm inline goto goto ("" :::: lab); /* { dg-error "" } */
|
|
|
|
lab:
|
|
;
|
|
}
|