summaryrefslogtreecommitdiffstats
path: root/clang/test
diff options
context:
space:
mode:
authorHans Wennborg <hans@hanshq.net>2017-07-26 21:29:24 +0000
committerHans Wennborg <hans@hanshq.net>2017-07-26 21:29:24 +0000
commitb4ece98a3493c67f5a4959c0c7143b82fad13906 (patch)
treeefbf7ab7a8fdeda9fd698ece6b9159d8afbb36ce /clang/test
parent3197eb69812f9ff1c0ef4b2a7b894397dec3de24 (diff)
downloadbcm5719-llvm-b4ece98a3493c67f5a4959c0c7143b82fad13906.tar.gz
bcm5719-llvm-b4ece98a3493c67f5a4959c0c7143b82fad13906.zip
Revert r309106 "Recommit r308327 2nd time: Add a warning for missing"
The warning fires on non-suspicious code in Chromium. Reverting until a solution is figured out. > Recommit r308327 2nd time: Add a warning for missing > '#pragma pack (pop)' and suspicious uses of '#pragma pack' in included files > > The first recommit (r308441) caused a "non-default #pragma pack value might > change the alignment of struct or union members in the included file" warning > in LLVM itself. This recommit tweaks the added warning to avoid warnings for > #includes that don't have any records that are affected by the non-default > alignment. This tweak avoids the previously emitted warning in LLVM. > > Original message: > > This commit adds a new -Wpragma-pack warning. It warns in the following cases: > > - When a translation unit is missing terminating #pragma pack (pop) directives. > - When entering an included file if the current alignment value as determined > by '#pragma pack' directives is different from the default alignment value. > - When leaving an included file that changed the state of the current alignment > value. > > rdar://10184173 > > Differential Revision: https://reviews.llvm.org/D35484 llvm-svn: 309186
Diffstat (limited to 'clang/test')
-rw-r--r--clang/test/OpenMP/declare_simd_messages.cpp2
-rw-r--r--clang/test/PCH/pragma-pack.c30
-rw-r--r--clang/test/PCH/suspicious-pragma-pack.c8
-rw-r--r--clang/test/Parser/pragma-options.c2
-rw-r--r--clang/test/Parser/pragma-options.cpp2
-rw-r--r--clang/test/Parser/pragma-pack.c2
-rw-r--r--clang/test/Sema/Inputs/pragma-pack1.h27
-rw-r--r--clang/test/Sema/Inputs/pragma-pack2.h8
-rw-r--r--clang/test/Sema/pragma-pack.c5
-rw-r--r--clang/test/Sema/suspicious-pragma-pack.c49
-rw-r--r--clang/test/SemaObjC/Inputs/empty.h1
-rw-r--r--clang/test/SemaObjC/suspicious-pragma-pack.m6
12 files changed, 19 insertions, 123 deletions
diff --git a/clang/test/OpenMP/declare_simd_messages.cpp b/clang/test/OpenMP/declare_simd_messages.cpp
index af46283f9a5..15971eb14de 100644
--- a/clang/test/OpenMP/declare_simd_messages.cpp
+++ b/clang/test/OpenMP/declare_simd_messages.cpp
@@ -1,4 +1,4 @@
-// RUN: %clang_cc1 -triple=x86_64-pc-win32 -verify -fopenmp -x c++ -std=c++11 -fms-extensions -Wno-pragma-pack %s
+// RUN: %clang_cc1 -triple=x86_64-pc-win32 -verify -fopenmp -x c++ -std=c++11 -fms-extensions %s
// expected-error@+1 {{expected an OpenMP directive}}
#pragma omp declare
diff --git a/clang/test/PCH/pragma-pack.c b/clang/test/PCH/pragma-pack.c
index 7b45e045b39..47a55700235 100644
--- a/clang/test/PCH/pragma-pack.c
+++ b/clang/test/PCH/pragma-pack.c
@@ -1,21 +1,21 @@
// Test this without pch.
-// RUN: %clang_cc1 -triple x86_64-apple-darwin10 %s -include %s -verify -fsyntax-only -Wno-pragma-pack -DSET
-// RUN: %clang_cc1 -triple x86_64-apple-darwin10 %s -include %s -verify -fsyntax-only -Wno-pragma-pack -DRESET
-// RUN: %clang_cc1 -triple x86_64-apple-darwin10 %s -include %s -verify -fsyntax-only -Wno-pragma-pack -DPUSH
-// RUN: %clang_cc1 -triple x86_64-apple-darwin10 %s -include %s -verify -fsyntax-only -Wno-pragma-pack -DPUSH_POP
-// RUN: %clang_cc1 -triple x86_64-apple-darwin10 %s -include %s -verify -fsyntax-only -Wno-pragma-pack -DPUSH_POP_LABEL
+// RUN: %clang_cc1 -triple x86_64-apple-darwin10 %s -include %s -verify -fsyntax-only -DSET
+// RUN: %clang_cc1 -triple x86_64-apple-darwin10 %s -include %s -verify -fsyntax-only -DRESET
+// RUN: %clang_cc1 -triple x86_64-apple-darwin10 %s -include %s -verify -fsyntax-only -DPUSH
+// RUN: %clang_cc1 -triple x86_64-apple-darwin10 %s -include %s -verify -fsyntax-only -DPUSH_POP
+// RUN: %clang_cc1 -triple x86_64-apple-darwin10 %s -include %s -verify -fsyntax-only -DPUSH_POP_LABEL
// Test with pch.
-// RUN: %clang_cc1 -triple x86_64-apple-darwin10 %s -Wno-pragma-pack -DSET -emit-pch -o %t
-// RUN: %clang_cc1 -triple x86_64-apple-darwin10 %s -Wno-pragma-pack -DSET -verify -include-pch %t
-// RUN: %clang_cc1 -triple x86_64-apple-darwin10 %s -Wno-pragma-pack -DRESET -emit-pch -o %t
-// RUN: %clang_cc1 -triple x86_64-apple-darwin10 %s -Wno-pragma-pack -DRESET -verify -include-pch %t
-// RUN: %clang_cc1 -triple x86_64-apple-darwin10 %s -Wno-pragma-pack -DPUSH -emit-pch -o %t
-// RUN: %clang_cc1 -triple x86_64-apple-darwin10 %s -Wno-pragma-pack -DPUSH -verify -include-pch %t
-// RUN: %clang_cc1 -triple x86_64-apple-darwin10 %s -Wno-pragma-pack -DPUSH_POP -emit-pch -o %t
-// RUN: %clang_cc1 -triple x86_64-apple-darwin10 %s -Wno-pragma-pack -DPUSH_POP -verify -include-pch %t
-// RUN: %clang_cc1 -triple x86_64-apple-darwin10 %s -Wno-pragma-pack -DPUSH_POP_LABEL -emit-pch -o %t
-// RUN: %clang_cc1 -triple x86_64-apple-darwin10 %s -Wno-pragma-pack -DPUSH_POP_LABEL -verify -include-pch %t
+// RUN: %clang_cc1 -triple x86_64-apple-darwin10 %s -DSET -emit-pch -o %t
+// RUN: %clang_cc1 -triple x86_64-apple-darwin10 %s -DSET -verify -include-pch %t
+// RUN: %clang_cc1 -triple x86_64-apple-darwin10 %s -DRESET -emit-pch -o %t
+// RUN: %clang_cc1 -triple x86_64-apple-darwin10 %s -DRESET -verify -include-pch %t
+// RUN: %clang_cc1 -triple x86_64-apple-darwin10 %s -DPUSH -emit-pch -o %t
+// RUN: %clang_cc1 -triple x86_64-apple-darwin10 %s -DPUSH -verify -include-pch %t
+// RUN: %clang_cc1 -triple x86_64-apple-darwin10 %s -DPUSH_POP -emit-pch -o %t
+// RUN: %clang_cc1 -triple x86_64-apple-darwin10 %s -DPUSH_POP -verify -include-pch %t
+// RUN: %clang_cc1 -triple x86_64-apple-darwin10 %s -DPUSH_POP_LABEL -emit-pch -o %t
+// RUN: %clang_cc1 -triple x86_64-apple-darwin10 %s -DPUSH_POP_LABEL -verify -include-pch %t
#ifndef HEADER
#define HEADER
diff --git a/clang/test/PCH/suspicious-pragma-pack.c b/clang/test/PCH/suspicious-pragma-pack.c
deleted file mode 100644
index 01a66af34bb..00000000000
--- a/clang/test/PCH/suspicious-pragma-pack.c
+++ /dev/null
@@ -1,8 +0,0 @@
-// RUN: %clang_cc1 -triple x86_64-apple-darwin10 %s -verify -emit-pch -o %t
-// RUN: %clang_cc1 -triple x86_64-apple-darwin10 %s -verify -include-pch %t
-
-#ifndef HEADER
-#define HEADER
-#pragma pack (push, 1)
-#endif
-// expected-warning@-2 {{unterminated '#pragma pack (push, ...)' at end of file}}
diff --git a/clang/test/Parser/pragma-options.c b/clang/test/Parser/pragma-options.c
index a35f0b087eb..d168a2751a2 100644
--- a/clang/test/Parser/pragma-options.c
+++ b/clang/test/Parser/pragma-options.c
@@ -1,4 +1,4 @@
-// RUN: %clang_cc1 -triple i386-apple-darwin9 -Wno-pragma-pack -fsyntax-only -verify %s
+// RUN: %clang_cc1 -triple i386-apple-darwin9 -fsyntax-only -verify %s
/* expected-warning {{expected 'align' following '#pragma options'}} */ #pragma options
/* expected-warning {{expected '=' following '#pragma options align'}} */ #pragma options align
diff --git a/clang/test/Parser/pragma-options.cpp b/clang/test/Parser/pragma-options.cpp
index 8f5a2152c7b..84cd38dfb3c 100644
--- a/clang/test/Parser/pragma-options.cpp
+++ b/clang/test/Parser/pragma-options.cpp
@@ -1,4 +1,4 @@
-// RUN: %clang_cc1 -triple i386-apple-darwin9 -Wno-pragma-pack -fsyntax-only -verify %s
+// RUN: %clang_cc1 -triple i386-apple-darwin9 -fsyntax-only -verify %s
// expected-no-diagnostics
class C {
diff --git a/clang/test/Parser/pragma-pack.c b/clang/test/Parser/pragma-pack.c
index d2aefaa888f..0859f4157ce 100644
--- a/clang/test/Parser/pragma-pack.c
+++ b/clang/test/Parser/pragma-pack.c
@@ -1,4 +1,4 @@
-// RUN: %clang_cc1 -fsyntax-only -Wno-pragma-pack -verify %s
+// RUN: %clang_cc1 -fsyntax-only -verify %s
// Note that this puts the expected lines before the directives to work around
// limitations in the -verify mode.
diff --git a/clang/test/Sema/Inputs/pragma-pack1.h b/clang/test/Sema/Inputs/pragma-pack1.h
deleted file mode 100644
index abbf8a8609f..00000000000
--- a/clang/test/Sema/Inputs/pragma-pack1.h
+++ /dev/null
@@ -1,27 +0,0 @@
-
-#ifndef NO_RECORD_1
-struct ReceivesPragma { };
-#endif
-
-#ifdef SET_FIRST_HEADER
-#pragma pack (16)
-#ifndef SET_SECOND_HEADER
-// expected-note@-2 2 {{previous '#pragma pack' directive that modifies alignment is here}}
-#else
-// expected-note@-4 1 {{previous '#pragma pack' directive that modifies alignment is here}}
-#endif
-// expected-warning@+3 {{non-default #pragma pack value changes the alignment of struct or union members in the included file}}
-#endif
-
-#include "pragma-pack2.h"
-
-#ifdef SET_SECOND_HEADER
-// expected-warning@-3 {{the current #pragma pack aligment value is modified in the included file}}
-#endif
-
-#ifdef PUSH_POP_FIRST_HEADER
-// This is fine, we don't change the current value.
-#pragma pack (push, 4)
-
-#pragma pack (pop)
-#endif
diff --git a/clang/test/Sema/Inputs/pragma-pack2.h b/clang/test/Sema/Inputs/pragma-pack2.h
deleted file mode 100644
index a41621544d7..00000000000
--- a/clang/test/Sema/Inputs/pragma-pack2.h
+++ /dev/null
@@ -1,8 +0,0 @@
-
-#ifndef NO_RECORD_2
-struct S { int x; };
-#endif
-
-#ifdef SET_SECOND_HEADER
-#pragma pack (8) // expected-note 2 {{previous '#pragma pack' directive that modifies alignment is here}}
-#endif
diff --git a/clang/test/Sema/pragma-pack.c b/clang/test/Sema/pragma-pack.c
index 84a946368ff..e93ce42148c 100644
--- a/clang/test/Sema/pragma-pack.c
+++ b/clang/test/Sema/pragma-pack.c
@@ -25,8 +25,3 @@
#pragma pack(pop, 16)
/* expected-warning {{value of #pragma pack(show) == 16}} */ #pragma pack(show)
-
-// Warn about unbalanced pushes.
-#pragma pack (push,4) // expected-warning {{unterminated '#pragma pack (push, ...)' at end of file}}
-#pragma pack (push) // expected-warning {{unterminated '#pragma pack (push, ...)' at end of file}}
-#pragma pack ()
diff --git a/clang/test/Sema/suspicious-pragma-pack.c b/clang/test/Sema/suspicious-pragma-pack.c
deleted file mode 100644
index 5990c785fce..00000000000
--- a/clang/test/Sema/suspicious-pragma-pack.c
+++ /dev/null
@@ -1,49 +0,0 @@
-// RUN: %clang_cc1 -triple i686-apple-darwin9 -fsyntax-only -I %S/Inputs -DSAFE -verify %s
-// RUN: %clang_cc1 -triple i686-apple-darwin9 -fsyntax-only -I %S/Inputs -DPUSH_HERE -DSAFE -verify %s
-// RUN: %clang_cc1 -triple i686-apple-darwin9 -fsyntax-only -I %S/Inputs -DPUSH_HERE -DPUSH_SET_HERE -verify %s
-// RUN: %clang_cc1 -triple i686-apple-darwin9 -fsyntax-only -I %S/Inputs -DPUSH_HERE -DRESET_HERE -DSAFE -verify %s
-// RUN: %clang_cc1 -triple i686-apple-darwin9 -fsyntax-only -I %S/Inputs -DPUSH_HERE -DSET_FIRST_HEADER -DWARN_MODIFIED_HEADER -verify %s
-// RUN: %clang_cc1 -triple i686-apple-darwin9 -fsyntax-only -I %S/Inputs -DPUSH_HERE -DRESET_HERE -DSET_FIRST_HEADER -DWARN_MODIFIED_HEADER -verify %s
-// RUN: %clang_cc1 -triple i686-apple-darwin9 -fsyntax-only -I %S/Inputs -DPUSH_HERE -DPUSH_SET_HERE -DSET_FIRST_HEADER -DWARN_MODIFIED_HEADER -verify %s
-// RUN: %clang_cc1 -triple i686-apple-darwin9 -fsyntax-only -I %S/Inputs -DPUSH_HERE -DPUSH_SET_HERE -DSET_SECOND_HEADER -DWARN_MODIFIED_HEADER -verify %s
-// RUN: %clang_cc1 -triple i686-apple-darwin9 -fsyntax-only -I %S/Inputs -DPUSH_HERE -DPUSH_SET_HERE -DSET_FIRST_HEADER -DSET_SECOND_HEADER -DWARN_MODIFIED_HEADER -verify %s
-
-// RUN: %clang_cc1 -triple i686-apple-darwin9 -fsyntax-only -I %S/Inputs -DPUSH_POP_FIRST_HEADER -DSAFE -verify %s
-
-// RUN: %clang_cc1 -triple i686-apple-darwin9 -fsyntax-only -I %S/Inputs -DPUSH_SET_HERE -DNO_RECORD_1 -DNO_RECORD_2 -DSAFE -verify %s
-// RUN: %clang_cc1 -triple i686-apple-darwin9 -fsyntax-only -I %S/Inputs -DPUSH_SET_HERE -DNO_RECORD_1 -verify %s
-
-#ifdef SAFE
-// expected-no-diagnostics
-#endif
-
-#ifdef PUSH_HERE
-#pragma pack (push)
-#endif
-
-#ifdef PUSH_SET_HERE
-#pragma pack (push, 4)
-#ifndef SAFE
-// expected-note@-2 {{previous '#pragma pack' directive that modifies alignment is here}}
-// expected-warning@+9 {{non-default #pragma pack value changes the alignment of struct or union members in the included file}}
-#endif
-#endif
-
-#ifdef RESET_HERE
-#pragma pack (4)
-#pragma pack () // no warning after reset as the value is default.
-#endif
-
-#include "pragma-pack1.h"
-
-#ifdef WARN_MODIFIED_HEADER
-// expected-warning@-3 {{the current #pragma pack aligment value is modified in the included file}}
-#endif
-
-#ifdef PUSH_SET_HERE
-#pragma pack (pop)
-#endif
-
-#ifdef PUSH_HERE
-#pragma pack (pop)
-#endif
diff --git a/clang/test/SemaObjC/Inputs/empty.h b/clang/test/SemaObjC/Inputs/empty.h
deleted file mode 100644
index 6b3def4d7ae..00000000000
--- a/clang/test/SemaObjC/Inputs/empty.h
+++ /dev/null
@@ -1 +0,0 @@
-struct S { int x; };
diff --git a/clang/test/SemaObjC/suspicious-pragma-pack.m b/clang/test/SemaObjC/suspicious-pragma-pack.m
deleted file mode 100644
index 6c33e0ed3e9..00000000000
--- a/clang/test/SemaObjC/suspicious-pragma-pack.m
+++ /dev/null
@@ -1,6 +0,0 @@
-// RUN: %clang_cc1 -triple i686-apple-darwin9 -fsyntax-only -I%S/Inputs -verify %s
-
-#pragma pack (push, 1) // expected-note {{previous '#pragma pack' directive that modifies alignment is here}}
-#import "empty.h" // expected-warning {{non-default #pragma pack value changes the alignment of struct or union members in the included file}}
-
-#pragma pack (pop)
OpenPOWER on IntegriCloud