forked from qt-creator/qt-creator
C++11: add support for static_assert.
Change-Id: I82d8d60acaa9265fd25e0a3734855b19bdef9c06 Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
This commit is contained in:
35
src/libs/3rdparty/cplusplus/AST.h
vendored
35
src/libs/3rdparty/cplusplus/AST.h
vendored
@@ -254,6 +254,7 @@ public:
|
||||
virtual SizeofExpressionAST *asSizeofExpression() { return 0; }
|
||||
virtual SpecifierAST *asSpecifier() { return 0; }
|
||||
virtual StatementAST *asStatement() { return 0; }
|
||||
virtual StaticAssertDeclarationAST *asStaticAssertDeclaration() { return 0; }
|
||||
virtual StringLiteralAST *asStringLiteral() { return 0; }
|
||||
virtual SwitchStatementAST *asSwitchStatement() { return 0; }
|
||||
virtual TemplateDeclarationAST *asTemplateDeclaration() { return 0; }
|
||||
@@ -3062,6 +3063,40 @@ protected:
|
||||
virtual bool match0(AST *, ASTMatcher *);
|
||||
};
|
||||
|
||||
class CPLUSPLUS_EXPORT StaticAssertDeclarationAST: public DeclarationAST
|
||||
{
|
||||
public:
|
||||
unsigned static_assert_token;
|
||||
unsigned lparen_token;
|
||||
ExpressionAST *expression;
|
||||
unsigned comma_token;
|
||||
ExpressionAST *string_literal;
|
||||
unsigned rparen_token;
|
||||
unsigned semicolon_token;
|
||||
|
||||
public:
|
||||
StaticAssertDeclarationAST()
|
||||
: static_assert_token(0)
|
||||
, lparen_token(0)
|
||||
, expression(0)
|
||||
, comma_token(0)
|
||||
, string_literal(0)
|
||||
, rparen_token(0)
|
||||
, semicolon_token(0)
|
||||
{}
|
||||
|
||||
virtual StaticAssertDeclarationAST *asStaticAssertDeclaration() { return this; }
|
||||
|
||||
virtual unsigned firstToken() const;
|
||||
virtual unsigned lastToken() const;
|
||||
|
||||
virtual StaticAssertDeclarationAST *clone(MemoryPool *pool) const;
|
||||
|
||||
protected:
|
||||
virtual void accept0(ASTVisitor *visitor);
|
||||
virtual bool match0(AST *, ASTMatcher *);
|
||||
};
|
||||
|
||||
class CPLUSPLUS_EXPORT StringLiteralAST: public ExpressionAST
|
||||
{
|
||||
public:
|
||||
|
||||
Reference in New Issue
Block a user