summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2013-04-26 12:31:12 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2013-04-26 12:31:12 +0000
commit210257fb33566259aac7facbb5b10feccbe5dc5a (patch)
treef406186c099eca3f96aae183f461cbc917c54fad
parentaec90531f98b1df7253b26585d51c54cba903230 (diff)
downloadbcm5719-llvm-210257fb33566259aac7facbb5b10feccbe5dc5a.tar.gz
bcm5719-llvm-210257fb33566259aac7facbb5b10feccbe5dc5a.zip
Use bitfilds.
On a 32 bit build this moves LinkageSpecDecl from 52 to 48 bytes. llvm-svn: 180601
-rw-r--r--clang/include/clang/AST/DeclCXX.h6
1 files changed, 3 insertions, 3 deletions
diff --git a/clang/include/clang/AST/DeclCXX.h b/clang/include/clang/AST/DeclCXX.h
index ab6fcba4d7e..c483dde1f51 100644
--- a/clang/include/clang/AST/DeclCXX.h
+++ b/clang/include/clang/AST/DeclCXX.h
@@ -2351,12 +2351,12 @@ public:
};
private:
/// Language - The language for this linkage specification.
- LanguageIDs Language;
+ unsigned Language : 3;
/// True if this linkage spec has brances. This is needed so that hasBraces()
/// returns the correct result while the linkage spec body is being parsed.
/// Once RBraceLoc has been set this is not used, so it doesn't need to be
/// serialized.
- bool HasBraces;
+ unsigned HasBraces : 1;
/// ExternLoc - The source location for the extern keyword.
SourceLocation ExternLoc;
/// RBraceLoc - The source location for the right brace (if valid).
@@ -2376,7 +2376,7 @@ public:
static LinkageSpecDecl *CreateDeserialized(ASTContext &C, unsigned ID);
/// \brief Return the language specified by this linkage specification.
- LanguageIDs getLanguage() const { return Language; }
+ LanguageIDs getLanguage() const { return LanguageIDs(Language); }
/// \brief Set the language specified by this linkage specification.
void setLanguage(LanguageIDs L) { Language = L; }
OpenPOWER on IntegriCloud