125 lines
1.9 KiB
Plaintext
125 lines
1.9 KiB
Plaintext
// RUN: %clang_cc1 -x objective-c++ -Wno-return-type -fblocks -fms-extensions -rewrite-objc %s -o %t-rw.cpp
|
|
// RUN: %clang_cc1 -fsyntax-only -Werror -Wno-address-of-temporary -D"Class=void*" -D"id=void*" -D"SEL=void*" -U__declspec -D"__declspec(X)=" %t-rw.cpp
|
|
|
|
@interface NSCheapMutableString {
|
|
@private
|
|
struct S s0;
|
|
union {
|
|
char *fat;
|
|
unsigned char *thin;
|
|
} contents;
|
|
|
|
struct {
|
|
unsigned int isFat:1;
|
|
unsigned int freeWhenDone:1;
|
|
unsigned int refs:30;
|
|
} flags;
|
|
|
|
struct S {
|
|
int iS1;
|
|
double dS1;
|
|
} others;
|
|
|
|
union U {
|
|
int iU1;
|
|
double dU1;
|
|
} u_others;
|
|
|
|
enum {
|
|
One, Two
|
|
} E1;
|
|
|
|
enum e {
|
|
Yes = 1,
|
|
No = 0
|
|
} BoOl;
|
|
|
|
struct S s1;
|
|
|
|
enum e E2;
|
|
|
|
union {
|
|
char *fat;
|
|
unsigned char *thin;
|
|
} Last_contents;
|
|
|
|
struct {
|
|
unsigned int isFat:1;
|
|
unsigned int freeWhenDone:1;
|
|
unsigned int refs:30;
|
|
} Last_flags;
|
|
}
|
|
@end
|
|
|
|
@interface III {
|
|
@private
|
|
struct S s0;
|
|
|
|
union {
|
|
char *fat;
|
|
unsigned char *thin;
|
|
} contents;
|
|
|
|
struct {
|
|
unsigned int isFat:1;
|
|
unsigned int freeWhenDone:1;
|
|
unsigned int refs:30;
|
|
} flags;
|
|
|
|
enum {
|
|
One1 = 1000, Two1, Three1
|
|
} E1;
|
|
|
|
struct S s1;
|
|
|
|
enum e E2;
|
|
|
|
union {
|
|
char *fat;
|
|
unsigned char *thin;
|
|
} Last_contents;
|
|
|
|
struct {
|
|
unsigned int isFat:1;
|
|
unsigned int freeWhenDone:1;
|
|
unsigned int refs:30;
|
|
} Last_flags;
|
|
}
|
|
@end
|
|
|
|
enum OUTSIDE {
|
|
yes
|
|
};
|
|
|
|
@interface MoreEnumTests {
|
|
@private
|
|
enum INSIDE {
|
|
no
|
|
} others;
|
|
|
|
enum OUTSIDE meetoo;
|
|
|
|
enum {
|
|
one,
|
|
two
|
|
} eu;
|
|
}
|
|
@end
|
|
|
|
@interface I {
|
|
enum INSIDE I1;
|
|
enum OUTSIDE I2;
|
|
enum ALSO_INSIDE {
|
|
maybe
|
|
} I3;
|
|
|
|
enum ALSO_INSIDE I4;
|
|
|
|
enum {
|
|
three,
|
|
four
|
|
} I5;
|
|
}
|
|
@end
|
|
|