diff options
author | Volodymyr Zibarov <gogan419@gmail.com> | 2020-05-14 23:07:05 +0300 |
---|---|---|
committer | Volodymyr Zibarov <gogan419@gmail.com> | 2020-05-29 12:39:28 +0000 |
commit | 9ee693ee229d28bd618e8dd44bc6b12750d43a29 (patch) | |
tree | 7a2a4dd6679fd3647228b5c39d1fc2724ff133a3 /src/libs/3rdparty/cplusplus/ASTVisitor.h | |
parent | be97943372bc80d2440daa20cd658599d765b9a9 (diff) |
C++: fix built-in code model to work with shared_ptr on MSVC 2017
These changes target Find Usages feature to work with shared_ptr.
Improve libs/3rdparty/cplusplus and plugins/cplusplus:
parse __declspec() attribute,
call to variadic function template without specified template arguments,
if constexpr,
c++11 attributes [[value]],
function templates with default parameters,
resolve order for function vs template with default parameter,
template operator->() with default arguments,
template specialization with numeric values,
find best partial specialization,
fix partial specialization for non-first specialized argument
Fixes: QTCREATORBUG-7866
Fixes: QTCREATORBUG-20781
Fixes: QTCREATORBUG-22857
Fixes: QTCREATORBUG-17825
Change-Id: I31a080f7729edfb2ee9650f1aff48daeba5a673b
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: Nikolai Kosjar <pinaceae.pinus@gmail.com>
Diffstat (limited to 'src/libs/3rdparty/cplusplus/ASTVisitor.h')
-rw-r--r-- | src/libs/3rdparty/cplusplus/ASTVisitor.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/libs/3rdparty/cplusplus/ASTVisitor.h b/src/libs/3rdparty/cplusplus/ASTVisitor.h index a1740e12cd..7f45d4d06d 100644 --- a/src/libs/3rdparty/cplusplus/ASTVisitor.h +++ b/src/libs/3rdparty/cplusplus/ASTVisitor.h @@ -138,6 +138,7 @@ public: virtual bool visit(LinkageSpecificationAST *) { return true; } virtual bool visit(MemInitializerAST *) { return true; } virtual bool visit(MemberAccessAST *) { return true; } + virtual bool visit(MsvcDeclspecSpecifierAST *) { return true; } virtual bool visit(NamedTypeSpecifierAST *) { return true; } virtual bool visit(NamespaceAST *) { return true; } virtual bool visit(NamespaceAliasDefinitionAST *) { return true; } @@ -202,6 +203,7 @@ public: virtual bool visit(SimpleSpecifierAST *) { return true; } virtual bool visit(SizeofExpressionAST *) { return true; } virtual bool visit(StaticAssertDeclarationAST *) { return true; } + virtual bool visit(StdAttributeSpecifierAST *) { return true; } virtual bool visit(StringLiteralAST *) { return true; } virtual bool visit(SwitchStatementAST *) { return true; } virtual bool visit(TemplateDeclarationAST *) { return true; } @@ -289,6 +291,7 @@ public: virtual void endVisit(LinkageSpecificationAST *) {} virtual void endVisit(MemInitializerAST *) {} virtual void endVisit(MemberAccessAST *) {} + virtual void endVisit(MsvcDeclspecSpecifierAST *) {} virtual void endVisit(NamedTypeSpecifierAST *) {} virtual void endVisit(NamespaceAST *) {} virtual void endVisit(NamespaceAliasDefinitionAST *) {} @@ -353,6 +356,7 @@ public: virtual void endVisit(SimpleSpecifierAST *) {} virtual void endVisit(SizeofExpressionAST *) {} virtual void endVisit(StaticAssertDeclarationAST *) {} + virtual void endVisit(StdAttributeSpecifierAST *) {} virtual void endVisit(StringLiteralAST *) {} virtual void endVisit(SwitchStatementAST *) {} virtual void endVisit(TemplateDeclarationAST *) {} |