1/* { dg-do compile { target *-*-osf5* } } */
2/* { dg-final { scan-assembler "xyzzy_one" } } */
3/* { dg-final { scan-assembler "xyzzy_two" } } */
4/* { dg-final { scan-assembler "xyzzz_three" } } */
5/* { dg-final { scan-assembler "four" } } */
6/* { dg-final { scan-assembler-not "_four" } } */
7
8#ifndef __PRAGMA_EXTERN_PREFIX
9#error
10#endif
11
12#pragma extern_prefix "xyzzy_"
13
14extern "C" int one(void);
15extern "C" int two(void);
16
17#pragma extern_prefix "xyzzz_"
18
19extern "C" int three(void);
20
21#pragma extern_prefix ""
22
23extern "C" int four(void);
24
25void *p[] = {
26  (void *) one, (void *) two, (void *) three, (void *) four
27};
28