forked from qt-creator/qt-creator
Track more macro uses.
In particular macros that are only checked for definition or are expanded during the evaluation of an #if or #elif directive are now also added to the list available through Document::macroUses(). The names of undefined macros that are interesting (because they're used in an #ifdef or a defined(...)) are now available through Document::undefinedMacroUses(). Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
This commit is contained in:
@@ -75,12 +75,14 @@ public:
|
||||
virtual ~Client();
|
||||
|
||||
virtual void macroAdded(const Macro ¯o) = 0;
|
||||
virtual void sourceNeeded(QString &fileName, IncludeType mode,
|
||||
unsigned line) = 0; // ### FIX the signature.
|
||||
|
||||
virtual void passedMacroDefinitionCheck(unsigned offset, const Macro ¯o) = 0;
|
||||
virtual void failedMacroDefinitionCheck(unsigned offset, const QByteArray &name) = 0;
|
||||
|
||||
virtual void startExpandingMacro(unsigned offset,
|
||||
const Macro ¯o,
|
||||
const QByteArray &originalText,
|
||||
bool inCondition = false,
|
||||
const QVector<MacroArgumentReference> &actuals
|
||||
= QVector<MacroArgumentReference>()) = 0;
|
||||
|
||||
@@ -89,6 +91,9 @@ public:
|
||||
|
||||
virtual void startSkippingBlocks(unsigned offset) = 0;
|
||||
virtual void stopSkippingBlocks(unsigned offset) = 0;
|
||||
|
||||
virtual void sourceNeeded(QString &fileName, IncludeType mode,
|
||||
unsigned line) = 0; // ### FIX the signature.
|
||||
};
|
||||
|
||||
} // namespace CPlusPlus
|
||||
|
||||
Reference in New Issue
Block a user