diff options
Diffstat (limited to 'gcc/testsuite/g++.dg/other/pragma-ep-1.C')
-rw-r--r-- | gcc/testsuite/g++.dg/other/pragma-ep-1.C | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.dg/other/pragma-ep-1.C b/gcc/testsuite/g++.dg/other/pragma-ep-1.C new file mode 100644 index 000000000..9362943a5 --- /dev/null +++ b/gcc/testsuite/g++.dg/other/pragma-ep-1.C @@ -0,0 +1,27 @@ +/* { dg-do compile { target *-*-osf5* } } */ +/* { dg-final { scan-assembler "xyzzy_one" } } */ +/* { dg-final { scan-assembler "xyzzy_two" } } */ +/* { dg-final { scan-assembler "xyzzz_three" } } */ +/* { dg-final { scan-assembler "four" } } */ +/* { dg-final { scan-assembler-not "_four" } } */ + +#ifndef __PRAGMA_EXTERN_PREFIX +#error +#endif + +#pragma extern_prefix "xyzzy_" + +extern "C" int one(void); +extern "C" int two(void); + +#pragma extern_prefix "xyzzz_" + +extern "C" int three(void); + +#pragma extern_prefix "" + +extern "C" int four(void); + +int (*p[])(void) = { + one, two, three, four +}; |