diff options
author | Roberto Raggi <roberto.raggi@nokia.com> | 2010-08-16 11:13:20 +0200 |
---|---|---|
committer | Roberto Raggi <roberto.raggi@nokia.com> | 2010-08-16 11:13:20 +0200 |
commit | 833f097c1d9bd30d05b28f0f17bc4624e56d6e94 (patch) | |
tree | 652a907a8378ed0506f7ff7b082c14fe1476d013 /src/shared/cplusplus | |
parent | 5cc32e107915d818ca4ceb8f08441d3ec72ed86b (diff) | |
download | qt-creator-833f097c1d9bd30d05b28f0f17bc4624e56d6e94.tar.gz |
Get rid of Function::block/setBlock.
Diffstat (limited to 'src/shared/cplusplus')
-rw-r--r-- | src/shared/cplusplus/Bind.cpp | 1 | ||||
-rw-r--r-- | src/shared/cplusplus/Symbols.cpp | 15 | ||||
-rw-r--r-- | src/shared/cplusplus/Symbols.h | 4 |
3 files changed, 4 insertions, 16 deletions
diff --git a/src/shared/cplusplus/Bind.cpp b/src/shared/cplusplus/Bind.cpp index 89cdbf6ad4..97d2f491d6 100644 --- a/src/shared/cplusplus/Bind.cpp +++ b/src/shared/cplusplus/Bind.cpp @@ -1905,7 +1905,6 @@ bool Bind::visit(FunctionDefinitionAST *ast) if (CompoundStatementAST *c = ast->function_body->asCompoundStatement()) { if (c->symbol) { - fun->setBlock(c->symbol); fun->setEndOffset(c->symbol->endOffset()); } } diff --git a/src/shared/cplusplus/Symbols.cpp b/src/shared/cplusplus/Symbols.cpp index a2259e715a..121ea0364e 100644 --- a/src/shared/cplusplus/Symbols.cpp +++ b/src/shared/cplusplus/Symbols.cpp @@ -164,7 +164,6 @@ void TypenameArgument::visitSymbol0(SymbolVisitor *visitor) Function::Function(TranslationUnit *translationUnit, unsigned sourceLocation, const Name *name) : Scope(translationUnit, sourceLocation, name), - _block(0), _flags(0) { } @@ -189,12 +188,6 @@ int Function::methodKey() const void Function::setMethodKey(int key) { f._methodKey = key; } -Block *Function::block() const -{ return _block; } - -void Function::setBlock(Block *block) -{ _block = block; } - bool Function::isEqualTo(const Type *other) const { const Function *o = other->asFunctionType(); @@ -293,10 +286,10 @@ bool Function::hasReturnType() const unsigned Function::argumentCount() const { - if (_block) - return memberCount() - 1; - - return memberCount(); + const unsigned c = memberCount(); + if (c > 0 && memberAt(c - 1)->isBlock()) + return c - 1; + return c; } Symbol *Function::argumentAt(unsigned index) const diff --git a/src/shared/cplusplus/Symbols.h b/src/shared/cplusplus/Symbols.h index b3f388f977..dd7fe67a1a 100644 --- a/src/shared/cplusplus/Symbols.h +++ b/src/shared/cplusplus/Symbols.h @@ -297,9 +297,6 @@ public: int methodKey() const; void setMethodKey(int key); - Block *block() const; - void setBlock(Block *block); - FullySpecifiedType returnType() const; void setReturnType(const FullySpecifiedType &returnType); @@ -360,7 +357,6 @@ protected: private: FullySpecifiedType _returnType; - Block *_block; struct Flags { unsigned _isVirtual: 1; unsigned _isVariadic: 1; |