diff options
author | Anders Carlsson <andersca@mac.com> | 2009-08-08 18:23:56 +0000 |
---|---|---|
committer | Anders Carlsson <andersca@mac.com> | 2009-08-08 18:23:56 +0000 |
commit | 68e0b68289ee13644956c71995133c77da6008c6 (patch) | |
tree | ff21db5e5893e46bc7f430c340c4eb263f9e41aa /clang/lib/Frontend/PCHWriter.cpp | |
parent | 31cceaeb680cc53e76e1261bc53d60b0844d607e (diff) | |
download | bcm5719-llvm-68e0b68289ee13644956c71995133c77da6008c6.tar.gz bcm5719-llvm-68e0b68289ee13644956c71995133c77da6008c6.zip |
Introduce a new PragmaPack attribute, and use it for #pragma pack. The PackedAttr now only represents __attribute__((packed)).
This is necessary because #pragma pack and __attribute__((packed)) have different semantics. No functionality change yet, but this lays the groundwork for fixing a record layout bug.
llvm-svn: 78483
Diffstat (limited to 'clang/lib/Frontend/PCHWriter.cpp')
-rw-r--r-- | clang/lib/Frontend/PCHWriter.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/clang/lib/Frontend/PCHWriter.cpp b/clang/lib/Frontend/PCHWriter.cpp index 69247d3e859..0e570a61abb 100644 --- a/clang/lib/Frontend/PCHWriter.cpp +++ b/clang/lib/Frontend/PCHWriter.cpp @@ -1698,10 +1698,13 @@ void PCHWriter::WriteAttributeRecord(const Attr *Attr) { case Attr::Overloadable: break; - case Attr::Packed: - Record.push_back(cast<PackedAttr>(Attr)->getAlignment()); + case Attr::PragmaPack: + Record.push_back(cast<PragmaPackAttr>(Attr)->getAlignment()); break; + case Attr::Packed: + break; + case Attr::Pure: break; |