diff options
Diffstat (limited to 'gcc/testsuite/obj-c++.dg/strings/const-str-5.mm')
-rw-r--r-- | gcc/testsuite/obj-c++.dg/strings/const-str-5.mm | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/gcc/testsuite/obj-c++.dg/strings/const-str-5.mm b/gcc/testsuite/obj-c++.dg/strings/const-str-5.mm new file mode 100644 index 000000000..8c12a0c11 --- /dev/null +++ b/gcc/testsuite/obj-c++.dg/strings/const-str-5.mm @@ -0,0 +1,28 @@ +/* Positive test case for constant string layout. */ +/* Contributed by Ziemowit Laski <zlaski@apple.com>. */ + +/* { dg-do compile } */ +/* { dg-options "-fconstant-string-class=MyConstantString" } */ +/* { dg-options "-mno-constant-cfstrings -fconstant-string-class=MyConstantString" { target *-*-darwin* } } */ + +@interface MyBase { + const char *p; +} +@end + +@interface MyConstantString: MyBase { + union equiv_u { + void *u; + unsigned char *c; + } _contents; + unsigned int _count; +} +@end + +/* The NeXT runtime initializes the 'isa' pointer of string constants at + compile time. */ +#ifdef __NEXT_RUNTIME__ +extern void *_MyConstantStringClassReference; +#endif + +MyConstantString *str = @"Hello"; |