forked from qt-creator/qt-creator
[C++] Rewrite of the preprocessor.
This rewrite fixes a couple of issues with the pre-processor. It now supports: - macros in macro bodies - stringification of parameters [cpp.stringize] - the concatenation operator [cpp.concat] - #include MACRO_HERE - defined() inside macro bodies used in pp-conditions. Change-Id: Ifdb78041fb6afadf44f939a4bd66ce2832b8601f Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
This commit is contained in:
@@ -75,7 +75,7 @@ public:
|
||||
|
||||
public:
|
||||
Client();
|
||||
virtual ~Client();
|
||||
virtual ~Client() = 0;
|
||||
|
||||
virtual void macroAdded(const Macro ¯o) = 0;
|
||||
|
||||
@@ -85,13 +85,13 @@ public:
|
||||
virtual void startExpandingMacro(unsigned offset,
|
||||
const Macro ¯o,
|
||||
const QByteArray &originalText,
|
||||
bool inCondition = false,
|
||||
const QVector<MacroArgumentReference> &actuals
|
||||
= QVector<MacroArgumentReference>()) = 0;
|
||||
|
||||
virtual void stopExpandingMacro(unsigned offset,
|
||||
const Macro ¯o) = 0;
|
||||
|
||||
/// Start skipping from the given offset.
|
||||
virtual void startSkippingBlocks(unsigned offset) = 0;
|
||||
virtual void stopSkippingBlocks(unsigned offset) = 0;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user