diff options
author | Orgad Shaneh <orgad.shaneh@audiocodes.com> | 2015-03-04 10:59:19 +0200 |
---|---|---|
committer | Orgad Shaneh <orgads@gmail.com> | 2015-03-05 06:23:31 +0000 |
commit | 93f57a99a1e9df7e427c346ef78fd1955ee89669 (patch) | |
tree | f8c8bad53368781078d39b3c3db684307e067687 /src/libs/cplusplus/LookupContext.cpp | |
parent | 0b996210f6e0b7d98e505dd313fdc1ed69de3217 (diff) | |
download | qt-creator-93f57a99a1e9df7e427c346ef78fd1955ee89669.tar.gz |
C++: Fix nested type resolving in member functions
Task-number: QTCREATORBUG-13976
Task-number: QTCREATORBUG-13978
Change-Id: I598f9cb99ffd044abfc6ed9aa16d4a3045985008
Reviewed-by: Przemyslaw Gorszkowski <pgorszkowski@gmail.com>
Diffstat (limited to 'src/libs/cplusplus/LookupContext.cpp')
-rw-r--r-- | src/libs/cplusplus/LookupContext.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/libs/cplusplus/LookupContext.cpp b/src/libs/cplusplus/LookupContext.cpp index 512700c016..35be29d6f2 100644 --- a/src/libs/cplusplus/LookupContext.cpp +++ b/src/libs/cplusplus/LookupContext.cpp @@ -1705,11 +1705,14 @@ bool CreateBindings::visit(Declaration *decl) bool CreateBindings::visit(Function *function) { + ClassOrNamespace *previous = _currentClassOrNamespace; + _currentClassOrNamespace = lookupType(function, previous); for (unsigned i = 0, count = function->memberCount(); i < count; ++i) { Symbol *s = function->memberAt(i); if (Block *b = s->asBlock()) visit(b); } + _currentClassOrNamespace = previous; return false; } |