From: Chris Lattner Date: Sun, 7 Oct 2007 07:57:27 +0000 (+0000) Subject: add a hasMacroDefinition() method to IdentifierInfo, strength reduce a X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=9c46de446d18f4a28446cb798d4131bd05515699;p=clang add a hasMacroDefinition() method to IdentifierInfo, strength reduce a call to getMacroInfo to call it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@42725 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/Lex/HeaderSearch.cpp b/Lex/HeaderSearch.cpp index 96c86939b7..00a36eef63 100644 --- a/Lex/HeaderSearch.cpp +++ b/Lex/HeaderSearch.cpp @@ -329,7 +329,8 @@ bool HeaderSearch::ShouldEnterIncludeFile(const FileEntry *File, bool isImport){ // Next, check to see if the file is wrapped with #ifndef guards. If so, and // if the macro that guards it is defined, we know the #include has no effect. - if (FileInfo.ControllingMacro && FileInfo.ControllingMacro->getMacroInfo()) { + if (FileInfo.ControllingMacro && + FileInfo.ControllingMacro->hasMacroDefinition()) { ++NumMultiIncludeFileOptzn; return false; } diff --git a/include/clang/Lex/IdentifierTable.h b/include/clang/Lex/IdentifierTable.h index 44565a3395..a4d10e56e9 100644 --- a/include/clang/Lex/IdentifierTable.h +++ b/include/clang/Lex/IdentifierTable.h @@ -70,6 +70,12 @@ public: GetStringMapEntryFromValue(*this).getKeyLength(); } + /// hasMacroDefinition - Return true if this identifier is #defined to some + /// other value. + bool hasMacroDefinition() const { + return HasMacro; + } + /// getMacroInfo - Return macro information about this identifier, or null if /// it is not a macro. MacroInfo *getMacroInfo() const {