C++: Store template typename argument declarator type

Differentiate class from typename. Used by a follow-up commit for pretty
printing, preserving the original declarator.

Change-Id: I496505f5062abb69d5552e5422db256d49d164c4
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
This commit is contained in:
Orgad Shaneh
2016-07-31 23:53:01 +03:00
committed by Orgad Shaneh
parent e920921f27
commit e919746808
3 changed files with 7 additions and 0 deletions

View File

@@ -187,6 +187,8 @@ public:
virtual ~TypenameArgument();
void setType(const FullySpecifiedType &type);
void setClassDeclarator(bool isClassDecl) { _isClassDeclarator = isClassDecl; }
bool isClassDeclarator() const { return _isClassDeclarator; }
// Symbol's interface
virtual FullySpecifiedType type() const;
@@ -202,6 +204,7 @@ protected:
private:
FullySpecifiedType _type;
bool _isClassDeclarator;
};
class CPLUSPLUS_EXPORT Block: public Scope