1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-08-09 09:15:38 +02:00

188324: apply fix

This commit is contained in:
Andrew Ferguson 2007-05-23 08:36:16 +00:00
parent 2a67c5a321
commit 59db7018c7
3 changed files with 19 additions and 8 deletions

View file

@ -69,10 +69,8 @@ public abstract class IndexBindingResolutionTestBase extends BaseTestCase {
protected ITestStrategy strategy;
public void setStrategy(ITestStrategy strategy) {
if(this.strategy==null) {
this.strategy = strategy;
}
}
protected void setUp() throws Exception {
super.setUp();

View file

@ -54,6 +54,18 @@ public class IndexCPPBindingResolutionBugs extends IndexBindingResolutionTestBas
setStrategy(new SinglePDOMTestStrategy(true));
}
// namespace ns {class A{};}
// ns::A a;
// class B {};
public void test188324() throws Exception {
IASTName name= findNames("B", 1)[0];
IBinding b0= getBindingFromASTName("ns::A", 2);
assertInstance(b0, ICPPNamespace.class);
ICPPNamespace ns= (ICPPNamespace) b0;
assertEquals(0, ns.getNamespaceScope().getBindings(name, false, false).length);
}
// template<typename T>
// class C : public C<T> {};

View file

@ -90,13 +90,14 @@ public abstract class CompositeScope implements IIndexScope {
/**
* A convenience method for processing an array of bindings with {@link CompositeScope#processUncertainBinding(IBinding)}
* @param fragmentBindings
* @return
* Returns an empty array if the input parameter is null
* @param frgBindings
* @return a non-null IBinding[]
*/
protected final IBinding[] processUncertainBindings(IBinding[] fragmentBindings) {
IBinding[] result= new IBinding[fragmentBindings.length];
protected final IBinding[] processUncertainBindings(IBinding[] frgBindings) {
IBinding[] result= new IBinding[frgBindings==null ? 0 : frgBindings.length];
for(int i=0; i<result.length; i++) {
result[i]= processUncertainBinding(fragmentBindings[i]);
result[i]= processUncertainBinding(frgBindings[i]);
}
return result;
}