From 55b8cf6afa1100c51175be385e3086a54f5eb9d8 Mon Sep 17 00:00:00 2001 From: Andrew Niefer Date: Mon, 28 Mar 2005 19:16:59 +0000 Subject: [PATCH] fix bug 89255 --- .../cdt/core/parser/tests/ast2/CompleteParser2Tests.java | 5 ++++- .../cdt/internal/core/dom/parser/cpp/CPPSemantics.java | 8 ++++++-- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ast2/CompleteParser2Tests.java b/core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ast2/CompleteParser2Tests.java index bfba5fe153c..babe9a0320f 100644 --- a/core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ast2/CompleteParser2Tests.java +++ b/core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ast2/CompleteParser2Tests.java @@ -1476,8 +1476,11 @@ public class CompleteParser2Tests extends TestCase { ICPPConstructor ctor = A.getConstructors()[0]; + IProblemBinding fp = (IProblemBinding) col.getName(12).resolveBinding(); + assertEquals( fp.getID(), IProblemBinding.SEMANTIC_NAME_NOT_FOUND ); + assertInstances( col, N, 3 ); - assertInstances( col, f, 2 ); + assertInstances( col, f, 1 ); assertInstances( col, A, 3 ); assertInstances( col, ctor, 2 ); } diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPSemantics.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPSemantics.java index fbfb7992be8..329b8ce06ac 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPSemantics.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPSemantics.java @@ -724,8 +724,12 @@ public class CPPSemantics { return; //if still not found, loop and check our containing scope - if( data.qualified() && !data.usingDirectives.isEmpty() ) - data.usingDirectivesOnly = true; + if( data.qualified() ) { + if( !data.usingDirectives.isEmpty() ) + data.usingDirectivesOnly = true; + else + break; + } if( blockItem != null ) node = blockItem;