Revert r309106 "Recommit r308327 2nd time: Add a warning for missing"
authorHans Wennborg <hans@hanshq.net>
Wed, 26 Jul 2017 21:29:24 +0000 (21:29 +0000)
committerHans Wennborg <hans@hanshq.net>
Wed, 26 Jul 2017 21:29:24 +0000 (21:29 +0000)
commitb4ece98a3493c67f5a4959c0c7143b82fad13906
treeefbf7ab7a8fdeda9fd698ece6b9159d8afbb36ce
parent3197eb69812f9ff1c0ef4b2a7b894397dec3de24
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
22 files changed:
clang/include/clang/Basic/DiagnosticGroups.td
clang/include/clang/Basic/DiagnosticSemaKinds.td
clang/include/clang/Lex/PPCallbacks.h
clang/include/clang/Sema/Sema.h
clang/include/clang/Serialization/ASTReader.h
clang/lib/Parse/ParsePragma.cpp
clang/lib/Sema/Sema.cpp
clang/lib/Sema/SemaAttr.cpp
clang/lib/Serialization/ASTReader.cpp
clang/lib/Serialization/ASTWriter.cpp
clang/test/OpenMP/declare_simd_messages.cpp
clang/test/PCH/pragma-pack.c
clang/test/PCH/suspicious-pragma-pack.c [deleted file]
clang/test/Parser/pragma-options.c
clang/test/Parser/pragma-options.cpp
clang/test/Parser/pragma-pack.c
clang/test/Sema/Inputs/pragma-pack1.h [deleted file]
clang/test/Sema/Inputs/pragma-pack2.h [deleted file]
clang/test/Sema/pragma-pack.c
clang/test/Sema/suspicious-pragma-pack.c [deleted file]
clang/test/SemaObjC/Inputs/empty.h [deleted file]
clang/test/SemaObjC/suspicious-pragma-pack.m [deleted file]