diff options
author | Roberto Raggi <roberto.raggi@nokia.com> | 2010-08-13 15:28:22 +0200 |
---|---|---|
committer | Roberto Raggi <roberto.raggi@nokia.com> | 2010-08-13 16:55:43 +0200 |
commit | 6659e3ecba7279f933280ea3f07fcc0730476b64 (patch) | |
tree | 1ce653215ff765bf180431647269979446964468 | |
parent | f79187ca9772b70a07694becabd936b0184337ed (diff) | |
download | qt-creator-6659e3ecba7279f933280ea3f07fcc0730476b64.tar.gz |
Use the new binder
-rw-r--r-- | src/libs/cplusplus/CppDocument.cpp | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/src/libs/cplusplus/CppDocument.cpp b/src/libs/cplusplus/CppDocument.cpp index e86cb18b2e..f54420ee73 100644 --- a/src/libs/cplusplus/CppDocument.cpp +++ b/src/libs/cplusplus/CppDocument.cpp @@ -31,6 +31,7 @@ #include "FastPreprocessor.h" #include "LookupContext.h" #include "Overview.h" +#include "Bind.h" #include <Control.h> #include <TranslationUnit.h> @@ -545,21 +546,18 @@ void Document::check(CheckMode mode) if (! isParsed()) parse(); - Semantic semantic(_translationUnit); + _globalNamespace = _control->newNamespace(0); + Bind semantic(_translationUnit); if (mode == FastCheck) semantic.setSkipFunctionBodies(true); - _globalNamespace = _control->newNamespace(0); - Scope *globals = _globalNamespace; if (! _translationUnit->ast()) return; // nothing to do. if (TranslationUnitAST *ast = _translationUnit->ast()->asTranslationUnit()) { - for (DeclarationListAST *decl = ast->declaration_list; decl; decl = decl->next) { - semantic.check(decl->value, globals); - } + semantic(ast, _globalNamespace); } else if (ExpressionAST *ast = _translationUnit->ast()->asExpression()) { - semantic.check(ast, globals); + semantic(ast, _globalNamespace); } } |