summaryrefslogtreecommitdiffstats
path: root/test/Sema/pragma-pack-2.c
diff options
context:
space:
mode:
Diffstat (limited to 'test/Sema/pragma-pack-2.c')
-rw-r--r--test/Sema/pragma-pack-2.c58
1 files changed, 12 insertions, 46 deletions
diff --git a/test/Sema/pragma-pack-2.c b/test/Sema/pragma-pack-2.c
index 3e6234c..4a4c202 100644
--- a/test/Sema/pragma-pack-2.c
+++ b/test/Sema/pragma-pack-2.c
@@ -19,52 +19,6 @@ struct s1 {
extern int a1[offsetof(struct s1, f1) == 2 ? 1 : -1];
#pragma pack(pop)
-// Test scope of definition
-
-#pragma pack(push, 2)
-struct s2_0 {
-#pragma pack(pop)
- char f0;
- int f1;
-};
-extern int a2_0[offsetof(struct s2_0, f1) == 2 ? 1 : -1];
-
-struct s2_1 {
- char f0;
-#pragma pack(push, 2)
- int f1;
-#pragma pack(pop)
-};
-extern int a2_1[offsetof(struct s2_1, f1) == 4 ? 1 : -1];
-
-struct s2_2 {
- char f0;
- int f1;
-#pragma pack(push, 2)
-};
-#pragma pack(pop)
-extern int a2_2[offsetof(struct s2_2, f1) == 4 ? 1 : -1];
-
-struct s2_3 {
- char f0;
-#pragma pack(push, 2)
- struct s2_3_0 {
-#pragma pack(pop)
- int f0;
- } f1;
-};
-extern int a2_3[offsetof(struct s2_3, f1) == 2 ? 1 : -1];
-
-struct s2_4 {
- char f0;
- struct s2_4_0 {
- int f0;
-#pragma pack(push, 2)
- } f1;
-#pragma pack(pop)
-};
-extern int a2_4[offsetof(struct s2_4, f1) == 4 ? 1 : -1];
-
#pragma pack(1)
struct s3_0 {
char f0;
@@ -91,3 +45,15 @@ struct s4_1 {
};
extern int a4_0[offsetof(struct s4_0, f1) == 1 ? 1 : -1];
extern int a4_1[offsetof(struct s4_1, f1) == 4 ? 1 : -1];
+
+void f() {
+ #pragma pack(push, 2)
+ struct s5_0 {
+ char f0;
+ struct s2_4_0 {
+ int f0;
+ } f1;
+ };
+ #pragma pack(pop)
+ extern int s5_0[offsetof(struct s5_0, f1) == 2 ? 1 : -1];
+}
OpenPOWER on IntegriCloud