From 9608af7ad2c7a234f2665d70487edcdad17925e8 Mon Sep 17 00:00:00 2001 From: Roberto Raggi Date: Mon, 28 Mar 2011 13:21:37 +0200 Subject: Added support to C++ symbols rewriting. This should simplify full C++ template instantiations. Reviewed-by: Christian Kamm --- src/libs/3rdparty/cplusplus/Symbol.cpp | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'src/libs/3rdparty/cplusplus/Symbol.cpp') diff --git a/src/libs/3rdparty/cplusplus/Symbol.cpp b/src/libs/3rdparty/cplusplus/Symbol.cpp index 3810357670..b7caa001c9 100644 --- a/src/libs/3rdparty/cplusplus/Symbol.cpp +++ b/src/libs/3rdparty/cplusplus/Symbol.cpp @@ -28,6 +28,7 @@ #include "SymbolVisitor.h" #include "NameVisitor.h" #include "Scope.h" +#include "Templates.h" #include using namespace CPlusPlus; @@ -102,6 +103,24 @@ Symbol::Symbol(TranslationUnit *translationUnit, unsigned sourceLocation, const setName(name); } +Symbol::Symbol(Clone *clone, Subst *subst, Symbol *original) + : _name(clone->name(original->_name, subst)), + _scope(0), + _next(0), + _fileId(clone->control()->stringLiteral(original->fileName(), original->fileNameLength())), + _sourceLocation(original->_sourceLocation), + _hashCode(original->_hashCode), + _storage(original->_storage), + _visibility(original->_visibility), + _index(0), + _line(original->_line), + _column(original->_column), + _isGenerated(original->_isGenerated), + _isDeprecated(original->_isDeprecated), + _isUnavailable(original->_isUnavailable) +{ +} + Symbol::~Symbol() { } -- cgit v1.2.1