1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-04-29 19:45:01 +02:00

Cosmetics.

This commit is contained in:
Sergey Prigogin 2012-06-05 10:31:26 -07:00
parent a2f501987d
commit c67276494e
7 changed files with 1119 additions and 1108 deletions

View file

@ -155,7 +155,7 @@ public class AST2TemplateTests extends AST2BaseTest {
ICPPField t2 = (ICPPField) col.getName(5).resolveBinding();
assertSame(t1.getType(), T);
assertSame(((IPointerType)t2.getType()).getType(), T);
assertSame(((IPointerType) t2.getType()).getType(), T);
ICPPVariable a = (ICPPVariable) col.getName(9).resolveBinding();
@ -170,20 +170,20 @@ public class AST2TemplateTests extends AST2BaseTest {
ICPPField t = (ICPPField) col.getName(11).resolveBinding();
assertTrue(t instanceof ICPPSpecialization);
assertSame(((ICPPSpecialization)t).getSpecializedBinding(), t1);
assertSame(((ICPPSpecialization) t).getSpecializedBinding(), t1);
assertSame(t.getScope(), A_int_Scope);
IType type = t.getType();
assertTrue(type instanceof IBasicType);
assertEquals(((IBasicType)type).getType(), IBasicType.t_int);
assertEquals(((IBasicType) type).getType(), IBasicType.t_int);
t = (ICPPField) col.getName(13).resolveBinding();
assertTrue(t instanceof ICPPSpecialization);
assertSame(((ICPPSpecialization)t).getSpecializedBinding(), t2);
assertSame(((ICPPSpecialization) t).getSpecializedBinding(), t2);
assertSame(t.getScope(), A_int_Scope);
type = t.getType();
assertTrue(type instanceof IPointerType);
assertTrue(((IPointerType)type).getType() instanceof IBasicType);
assertEquals(((IBasicType)((IPointerType)type).getType()).getType(), IBasicType.t_int);
assertTrue(((IPointerType) type).getType() instanceof IBasicType);
assertEquals(((IBasicType) ((IPointerType) type).getType()).getType(), IBasicType.t_int);
}
// template < class T > class A {
@ -204,7 +204,7 @@ public class AST2TemplateTests extends AST2BaseTest {
IFunctionType ft = f.getType();
assertSame(ft.getReturnType(), T);
assertSame(((IPointerType)ft.getParameterTypes()[0]).getType(), T);
assertSame(((IPointerType) ft.getParameterTypes()[0]).getType(), T);
ICPPClassType A_int = (ICPPClassType) col.getName(7).resolveBinding();
assertTrue(A_int instanceof ICPPTemplateInstance);
@ -212,10 +212,10 @@ public class AST2TemplateTests extends AST2BaseTest {
ICPPMethod f_int = (ICPPMethod) col.getName(11).resolveBinding();
assertTrue(f_int instanceof ICPPSpecialization);
assertSame(((ICPPSpecialization)f_int).getSpecializedBinding(), f);
assertSame(((ICPPSpecialization) f_int).getSpecializedBinding(), f);
ft = f_int.getType();
assertTrue(ft.getReturnType() instanceof IBasicType);
assertTrue(((IPointerType)ft.getParameterTypes()[0]).getType() instanceof IBasicType);
assertTrue(((IPointerType) ft.getParameterTypes()[0]).getType() instanceof IBasicType);
}
// template <class T > void f(T);
@ -246,7 +246,7 @@ public class AST2TemplateTests extends AST2BaseTest {
ICPPFunction f3 = (ICPPFunction) col.getName(11).resolveBinding();
assertTrue(f3 instanceof ICPPTemplateInstance);
assertSame(((ICPPTemplateInstance)f3).getTemplateDefinition(), f);
assertSame(((ICPPTemplateInstance) f3).getTemplateDefinition(), f);
assertInstances(col, T, 5);
}
@ -325,7 +325,7 @@ public class AST2TemplateTests extends AST2BaseTest {
// the instantiation of A<T> has to be deferred.
assertInstance(b0, ICPPUnknownBinding.class);
final ICPPBinding parent = ((ICPPInternalUnknownScope)b0.getScope()).getScopeBinding();
final ICPPBinding parent = ((ICPPInternalUnknownScope) b0.getScope()).getScopeBinding();
assertInstance(parent, ICPPDeferredClassInstance.class);
assertSame(((ICPPDeferredClassInstance) parent).getSpecializedBinding(), A);
@ -360,7 +360,7 @@ public class AST2TemplateTests extends AST2BaseTest {
IFunction f2 = (IFunction) col.getName(5).resolveBinding();
assertTrue(f2 instanceof ICPPTemplateInstance);
assertSame(((ICPPTemplateInstance)f2).getTemplateDefinition(), f1);
assertSame(((ICPPTemplateInstance) f2).getTemplateDefinition(), f1);
}
// template < class T > void f(T); // #1
@ -385,7 +385,7 @@ public class AST2TemplateTests extends AST2BaseTest {
IFunction f = (IFunction) col.getName(14).resolveBinding();
assertTrue(f instanceof ICPPTemplateInstance);
assertSame(((ICPPTemplateInstance)f).getTemplateDefinition(), f3);
assertSame(((ICPPTemplateInstance) f).getTemplateDefinition(), f3);
}
// template < class T > void f(T); // #1
@ -459,11 +459,11 @@ public class AST2TemplateTests extends AST2BaseTest {
ICPPVariable a2 = (ICPPVariable) col.getName(15).resolveBinding();
assertTrue(a2 instanceof ICPPSpecialization);
assertSame(((ICPPSpecialization)a2).getSpecializedBinding(), a);
assertSame(((ICPPSpecialization) a2).getSpecializedBinding(), a);
IType at = a2.getType();
assertTrue(at instanceof IPointerType);
assertSame(((IPointerType)at).getType(), ((IPointerType)bt).getType());
assertSame(((IPointerType) at).getType(), ((IPointerType) bt).getType());
}
// template < class T1, class T2, int I > class A {}; //#1
@ -546,7 +546,7 @@ public class AST2TemplateTests extends AST2BaseTest {
ICPPFunction ref = (ICPPFunction) col.getName(6).resolveBinding();
assertTrue(ref instanceof ICPPTemplateInstance);
assertSame(((ICPPTemplateInstance)ref).getTemplateDefinition(), f);
assertSame(((ICPPTemplateInstance) ref).getTemplateDefinition(), f);
}
// template<class T> void f(T);
@ -560,7 +560,7 @@ public class AST2TemplateTests extends AST2BaseTest {
ICPPFunction ref = (ICPPFunction) col.getName(6).resolveBinding();
assertTrue(ref instanceof ICPPTemplateInstance);
assertSame(((ICPPTemplateInstance)ref).getTemplateDefinition(), f);
assertSame(((ICPPTemplateInstance) ref).getTemplateDefinition(), f);
}
// template<class X, class Y> X f(Y);
@ -591,7 +591,7 @@ public class AST2TemplateTests extends AST2BaseTest {
ICPPFunctionTemplate f = (ICPPFunctionTemplate) col.getName(1).resolveBinding();
ICPPFunction ref = (ICPPFunction) col.getName(5).resolveBinding();
assertTrue(ref instanceof ICPPTemplateInstance);
assertSame(((ICPPTemplateInstance)ref).getTemplateDefinition(), f);
assertSame(((ICPPTemplateInstance) ref).getTemplateDefinition(), f);
}
// template<class T> void f(T); // #1
@ -640,7 +640,7 @@ public class AST2TemplateTests extends AST2BaseTest {
ICPPClassType x2 = (ICPPClassType) col.getName(4).resolveBinding();
assertTrue(x1 instanceof ICPPTemplateInstance);
assertSame(((ICPPTemplateInstance)x1).getTemplateDefinition(), X);
assertSame(((ICPPTemplateInstance) x1).getTemplateDefinition(), X);
assertSame(x1, x2);
}
@ -663,19 +663,19 @@ public class AST2TemplateTests extends AST2BaseTest {
assertNotSame(f1, f2);
assertTrue(f1 instanceof ICPPTemplateInstance);
assertSame(((ICPPTemplateInstance)f1).getTemplateDefinition(), f);
assertSame(((ICPPTemplateInstance) f1).getTemplateDefinition(), f);
assertTrue(f2 instanceof ICPPTemplateInstance);
assertSame(((ICPPTemplateInstance)f2).getTemplateDefinition(), f);
assertSame(((ICPPTemplateInstance) f2).getTemplateDefinition(), f);
IType fr1 = f1.getType().getReturnType();
IType fr2 = f2.getType().getReturnType();
assertTrue(fr1 instanceof IBasicType);
assertEquals(((IBasicType)fr1).getType(), IBasicType.t_int);
assertEquals(((IBasicType) fr1).getType(), IBasicType.t_int);
assertTrue(fr2 instanceof IPointerType);
assertTrue(((IPointerType)fr2).getType() instanceof IBasicType);
assertEquals(((IBasicType) ((IPointerType)fr2).getType()).getType(), IBasicType.t_char);
assertTrue(((IPointerType) fr2).getType() instanceof IBasicType);
assertEquals(((IBasicType) ((IPointerType) fr2).getType()).getType(), IBasicType.t_char);
}
// template<class T> void f(T) { }
@ -696,10 +696,10 @@ public class AST2TemplateTests extends AST2BaseTest {
assertSame(f2.getSpecializedBinding(), f1);
assertSame(g2.getSpecializedBinding(), g1);
assertFalse(((ICPPFunction)f1).isInline());
assertTrue(((ICPPFunction)g1).isInline());
assertTrue(((ICPPFunction)f2).isInline());
assertFalse(((ICPPFunction)g2).isInline());
assertFalse(((ICPPFunction) f1).isInline());
assertTrue(((ICPPFunction) g1).isInline());
assertTrue(((ICPPFunction) f2).isInline());
assertFalse(((ICPPFunction) g2).isInline());
}
// template<class T> class X {
@ -732,10 +732,10 @@ public class AST2TemplateTests extends AST2BaseTest {
assertTrue(a2 instanceof ICPPSpecialization);
assertTrue(a3 instanceof ICPPSpecialization);
assertTrue(a4 instanceof ICPPSpecialization);
assertSame(((ICPPSpecialization)a1).getSpecializedBinding(), a);
assertSame(((ICPPSpecialization)a2).getSpecializedBinding(), a);
assertSame(((ICPPSpecialization)a3).getSpecializedBinding(), a);
assertSame(((ICPPSpecialization)a4).getSpecializedBinding(), a);
assertSame(((ICPPSpecialization) a1).getSpecializedBinding(), a);
assertSame(((ICPPSpecialization) a2).getSpecializedBinding(), a);
assertSame(((ICPPSpecialization) a3).getSpecializedBinding(), a);
assertSame(((ICPPSpecialization) a4).getSpecializedBinding(), a);
}
// template<class T> class Y;
@ -759,7 +759,7 @@ public class AST2TemplateTests extends AST2BaseTest {
ICPPClassType y2 = (ICPPClassType) col.getName(6).resolveBinding();
assertTrue(y2 instanceof ICPPTemplateInstance);
assertSame(((ICPPTemplateInstance)y2).getTemplateDefinition(), Y);
assertSame(((ICPPTemplateInstance) y2).getTemplateDefinition(), Y);
}
// template < class T, class U > void f (T (*) (T, U));
@ -779,7 +779,7 @@ public class AST2TemplateTests extends AST2BaseTest {
IBinding g2 = col.getName(14).resolveBinding();
assertTrue(f2 instanceof ICPPTemplateInstance);
assertSame(((ICPPTemplateInstance)f2).getTemplateDefinition(), f1);
assertSame(((ICPPTemplateInstance) f2).getTemplateDefinition(), f1);
assertSame(g1, g2);
}
@ -809,11 +809,11 @@ public class AST2TemplateTests extends AST2BaseTest {
ICPPField u2 = (ICPPField) col.getName(11).resolveBinding();
assertTrue(u2 instanceof ICPPSpecialization);
assertSame(((ICPPSpecialization)u2).getSpecializedBinding(), u1);
assertSame(((ICPPSpecialization) u2).getSpecializedBinding(), u1);
IType type = u2.getType();
assertTrue(type instanceof IBasicType);
assertEquals(((IBasicType)type).getType(), IBasicType.t_int);
assertEquals(((IBasicType) type).getType(), IBasicType.t_int);
}
// template < class T > class A {
@ -878,18 +878,18 @@ public class AST2TemplateTests extends AST2BaseTest {
ICPPField pA2 = (ICPPField) col.getName(17).resolveBinding();
assertTrue(f2 instanceof ICPPSpecialization);
assertSame(((ICPPSpecialization)f2).getSpecializedBinding(), f);
assertSame(((ICPPSpecialization) f2).getSpecializedBinding(), f);
assertTrue(pA2 instanceof ICPPSpecialization);
assertSame(((ICPPSpecialization)pA2).getSpecializedBinding(), pA);
assertSame(((ICPPSpecialization) pA2).getSpecializedBinding(), pA);
IType paT = pA2.getType();
assertTrue(paT instanceof IPointerType);
assertSame(((IPointerType)paT).getType(), AI);
assertSame(((IPointerType) paT).getType(), AI);
IParameter p = f2.getParameters()[0];
IType pT = p.getType();
assertTrue(pT instanceof IPointerType);
assertSame(((IPointerType)pT).getType(), AI);
assertSame(((IPointerType) pT).getType(), AI);
}
// template <class T> struct A {
@ -916,7 +916,7 @@ public class AST2TemplateTests extends AST2BaseTest {
ICPPMethod f1_2 = (ICPPMethod) col.getName(11).resolveBinding();
assertNotSame(f1, f1_2);
assertTrue(f1_2 instanceof ICPPSpecialization);
assertSame(((ICPPSpecialization)f1_2).getSpecializedBinding(), f1);
assertSame(((ICPPSpecialization) f1_2).getSpecializedBinding(), f1);
ICPPClassType A2 = (ICPPClassType) col.getName(9).resolveBinding();
assertTrue(A2 instanceof ICPPTemplateInstance);
@ -924,9 +924,9 @@ public class AST2TemplateTests extends AST2BaseTest {
ICPPMethod f2_2 = (ICPPMethod) col.getName(16).resolveBinding();
assertTrue(f2_2 instanceof ICPPSpecialization);
IBinding speced = ((ICPPSpecialization)f2_2).getSpecializedBinding();
IBinding speced = ((ICPPSpecialization) f2_2).getSpecializedBinding();
assertTrue(speced instanceof ICPPFunctionTemplate && speced instanceof ICPPSpecialization);
assertSame(((ICPPSpecialization)speced).getSpecializedBinding(), f2);
assertSame(((ICPPSpecialization) speced).getSpecializedBinding(), f2);
ICPPClassType A3 = (ICPPClassType) col.getName(14).resolveBinding();
assertSame(A2, A3);
@ -940,7 +940,7 @@ public class AST2TemplateTests extends AST2BaseTest {
assertSame(r1, f1_2);
assertTrue(r2 instanceof ICPPTemplateInstance);
assertSame(((ICPPTemplateInstance)r2).getTemplateDefinition(), speced);
assertSame(((ICPPTemplateInstance) r2).getTemplateDefinition(), speced);
assertSame(r3, f2_2);
}
@ -963,7 +963,7 @@ public class AST2TemplateTests extends AST2BaseTest {
ICPPClassType r2 = (ICPPClassType) col.getName(7).resolveBinding();
assertTrue(r1 instanceof ICPPTemplateInstance);
assertSame(((ICPPTemplateInstance)r1).getTemplateDefinition(), A1);
assertSame(((ICPPTemplateInstance) r1).getTemplateDefinition(), A1);
assertSame(r2, A2);
}
@ -1039,14 +1039,14 @@ public class AST2TemplateTests extends AST2BaseTest {
ICPPMethod f1 = (ICPPMethod) col.getName(20).resolveBinding();
assertTrue(f1 instanceof ICPPSpecialization);
assertTrue(((ICPPSpecialization)f1).getSpecializedBinding() instanceof ICPPMethod);
ICPPMethod f2 = (ICPPMethod) ((ICPPSpecialization)f1).getSpecializedBinding();
assertTrue(((ICPPSpecialization) f1).getSpecializedBinding() instanceof ICPPMethod);
ICPPMethod f2 = (ICPPMethod) ((ICPPSpecialization) f1).getSpecializedBinding();
assertTrue(f2 instanceof ICPPSpecialization);
assertSame(((ICPPSpecialization)f2).getSpecializedBinding(), f);
assertSame(((ICPPSpecialization) f2).getSpecializedBinding(), f);
IFunctionType ft = f1.getType();
assertTrue(ft.getReturnType() instanceof IBasicType);
assertEquals(((IBasicType)ft.getReturnType()).getType(), IBasicType.t_int);
assertEquals(((IBasicType) ft.getReturnType()).getType(), IBasicType.t_int);
assertSame(ft.getParameterTypes()[0], C);
}
@ -1109,23 +1109,23 @@ public class AST2TemplateTests extends AST2BaseTest {
ICPPField y2 = (ICPPField) col.getName(23).resolveBinding();
assertTrue(y2 instanceof ICPPSpecialization);
assertSame(((ICPPSpecialization)y2).getSpecializedBinding(), y);
assertSame(((ICPPSpecialization) y2).getSpecializedBinding(), y);
IType t = y2.getType();
assertTrue(t instanceof ICPPTemplateInstance);
assertSame(((ICPPTemplateInstance)t).getTemplateDefinition(), A1);
assertSame(((ICPPTemplateInstance) t).getTemplateDefinition(), A1);
ICPPField x3 = (ICPPField) col.getName(24).resolveBinding();
assertTrue(x3 instanceof ICPPSpecialization);
assertEquals(((ICPPSpecialization)x3).getSpecializedBinding(), x1);
assertEquals(((ICPPSpecialization) x3).getSpecializedBinding(), x1);
ICPPField z2 = (ICPPField) col.getName(26).resolveBinding();
assertTrue(z2 instanceof ICPPSpecialization);
assertSame(((ICPPSpecialization)z2).getSpecializedBinding(), z);
assertSame(((ICPPSpecialization) z2).getSpecializedBinding(), z);
t = z2.getType();
assertTrue(t instanceof ICPPTemplateInstance);
assertSame(((ICPPTemplateInstance)t).getTemplateDefinition(), A2);
assertSame(((ICPPTemplateInstance) t).getTemplateDefinition(), A2);
ICPPField x4 = (ICPPField) col.getName(27).resolveBinding();
assertTrue(x4 instanceof ICPPSpecialization);
assertEquals(((ICPPSpecialization)x4).getSpecializedBinding(), x2);
assertEquals(((ICPPSpecialization) x4).getSpecializedBinding(), x2);
}
// template <class T> class A {
@ -1150,16 +1150,16 @@ public class AST2TemplateTests extends AST2BaseTest {
ICPPField t2 = (ICPPField) col.getName(11).resolveBinding();
assertTrue(t2 instanceof ICPPSpecialization);
assertSame(((ICPPSpecialization)t2).getSpecializedBinding(), t);
assertSame(((ICPPSpecialization) t2).getSpecializedBinding(), t);
IType type = t2.getType();
assertTrue(type instanceof ITypedef);
assertTrue(type instanceof ICPPSpecialization);
assertSame(((ICPPSpecialization)type).getSpecializedBinding(), _T);
assertSame(((ICPPSpecialization) type).getSpecializedBinding(), _T);
type = ((ITypedef)type).getType();
type = ((ITypedef) type).getType();
assertTrue(type instanceof IBasicType);
assertEquals(((IBasicType)type).getType(), IBasicType.t_int);
assertEquals(((IBasicType) type).getType(), IBasicType.t_int);
}
// template <class T> class A {
@ -1186,16 +1186,16 @@ public class AST2TemplateTests extends AST2BaseTest {
ICPPField t2 = (ICPPField) col.getName(13).resolveBinding();
assertTrue(b2 instanceof ICPPSpecialization);
assertSame(((ICPPSpecialization)b2).getSpecializedBinding(), b);
assertSame(((ICPPSpecialization) b2).getSpecializedBinding(), b);
IType type = b2.getType();
assertTrue(type instanceof ICPPSpecialization);
assertSame(((ICPPSpecialization)type).getSpecializedBinding(), B);
assertSame(((ICPPSpecialization) type).getSpecializedBinding(), B);
assertTrue(t2 instanceof ICPPSpecialization);
assertSame(((ICPPSpecialization)t2).getSpecializedBinding(), t);
assertSame(((ICPPSpecialization) t2).getSpecializedBinding(), t);
assertTrue(t2.getType() instanceof IBasicType);
assertEquals(((IBasicType)t2.getType()).getType(), IBasicType.t_int);
assertEquals(((IBasicType) t2.getType()).getType(), IBasicType.t_int);
}
// template <class T> class A {
@ -1239,18 +1239,18 @@ public class AST2TemplateTests extends AST2BaseTest {
ICPPField s2 = (ICPPField) col.getName(21).resolveBinding();
assertTrue(s2 instanceof ICPPSpecialization);
assertSame(((ICPPSpecialization)s2).getSpecializedBinding(), s);
assertSame(((ICPPSpecialization) s2).getSpecializedBinding(), s);
IType t = s2.getType();
// assertTrue(t instanceof ITypedef);
// assertTrue(t instanceof ICPPSpecialization);
// assertSame(((ICPPSpecialization)t).getSpecializedBinding(), _xx);
// assertSame(((ICPPSpecialization) t).getSpecializedBinding(), _xx);
t = ((ITypedef)t).getType();
t = ((ITypedef) t).getType();
assertTrue(t instanceof ICPPSpecialization);
assertSame(((ICPPSpecialization)t).getSpecializedBinding(), X2);
assertSame(((ICPPSpecialization) t).getSpecializedBinding(), X2);
t = ((ITypedef)t).getType();
t = ((ITypedef) t).getType();
assertSame(t, B);
}
@ -1469,7 +1469,7 @@ public class AST2TemplateTests extends AST2BaseTest {
assertSame(((ICPPTemplateInstance)A2).getTemplateDefinition(), A);
ICPPMethod f2 = (ICPPMethod) col.getName(17).resolveBinding();
assertTrue(f2 instanceof ICPPSpecialization);
assertSame(((ICPPSpecialization)f2).getSpecializedBinding(), f);
assertSame(((ICPPSpecialization) f2).getSpecializedBinding(), f);
ICPPTemplateParameter TR = (ICPPTemplateParameter) col.getName(19).resolveBinding();
assertSame(T, TR);
@ -1492,7 +1492,7 @@ public class AST2TemplateTests extends AST2BaseTest {
ICPPMethod h2 = (ICPPMethod) col.getName(54).resolveBinding();
assertTrue(h2 instanceof ICPPSpecialization);
assertSame(((ICPPSpecialization)h2).getSpecializedBinding(), h);
assertSame(((ICPPSpecialization) h2).getSpecializedBinding(), h);
}
// namespace N {
@ -1551,7 +1551,7 @@ public class AST2TemplateTests extends AST2BaseTest {
ICPPFunction s2 = (ICPPFunction) col.getName(8).resolveBinding();
assertTrue(s2 instanceof ICPPTemplateInstance);
assertSame(((ICPPTemplateInstance)s2).getTemplateDefinition(), s);
assertSame(((ICPPTemplateInstance) s2).getTemplateDefinition(), s);
ICPPClassType A3 = (ICPPClassType) col.getName(10).resolveBinding();
assertTrue(A3 instanceof ICPPTemplateInstance);
@ -1576,7 +1576,7 @@ public class AST2TemplateTests extends AST2BaseTest {
ICPPFunctionTemplate s1 = (ICPPFunctionTemplate) col.getName(5).resolveBinding();
ICPPFunction s2 = (ICPPFunction) col.getName(10).resolveBinding();
assertTrue(s2 instanceof ICPPTemplateInstance);
assertSame(((ICPPTemplateInstance)s2).getTemplateDefinition(), s1);
assertSame(((ICPPTemplateInstance) s2).getTemplateDefinition(), s1);
ICPPClassType A3 = (ICPPClassType) col.getName(11).resolveBinding();
assertSame(A2, A3);
@ -1595,7 +1595,7 @@ public class AST2TemplateTests extends AST2BaseTest {
IASTName f = col.getName(6);
IASTFunctionDefinition fdef = (IASTFunctionDefinition) f.getParent().getParent();
IASTExpressionStatement statement = (IASTExpressionStatement) ((IASTCompoundStatement)fdef.getBody()).getStatements()[0];
IASTExpressionStatement statement = (IASTExpressionStatement) ((IASTCompoundStatement) fdef.getBody()).getStatements()[0];
IType type = statement.getExpression().getExpressionType();
assertTrue(type.isSameType(p.getType()));
@ -1662,11 +1662,11 @@ public class AST2TemplateTests extends AST2BaseTest {
IBinding r = col.getName(33).resolveBinding();
assertTrue(r instanceof ICPPSpecialization);
assertSame(((ICPPSpecialization)r).getSpecializedBinding(), begin);
assertSame(((ICPPSpecialization) r).getSpecializedBinding(), begin);
r = col.getName(36).resolveBinding();
assertTrue(r instanceof ICPPSpecialization);
assertSame(((ICPPSpecialization)r).getSpecializedBinding(), end);
assertSame(((ICPPSpecialization) r).getSpecializedBinding(), end);
assertSame(foo, col.getName(39).resolveBinding());
assertSame(foo, col.getName(41).resolveBinding());
@ -1692,8 +1692,8 @@ public class AST2TemplateTests extends AST2BaseTest {
IType type = t.getType();
assertTrue(type instanceof ICPPSpecialization);
assertSame(((ICPPSpecialization)type).getSpecializedBinding(), _T);
assertSame(((IPointerType)((ITypedef)type).getType()).getType(), B);
assertSame(((ICPPSpecialization) type).getSpecializedBinding(), _T);
assertSame(((IPointerType) ((ITypedef) type).getType()).getType(), B);
assertSame(i, col.getName(14).resolveBinding());
}
@ -1858,7 +1858,7 @@ public class AST2TemplateTests extends AST2BaseTest {
IBinding b = col.getName(9).resolveBinding(); // resolve the binding of the ICPPASTTemplateId first
assertTrue(b instanceof ICPPTemplateInstance);
assertSame(((ICPPTemplateInstance)b).getSpecializedBinding(), f1);
assertSame(((ICPPTemplateInstance) b).getSpecializedBinding(), f1);
assertSame(f1, col.getName(10).resolveBinding());
@ -1885,7 +1885,7 @@ public class AST2TemplateTests extends AST2BaseTest {
ICPPClassType a = (ICPPClassType) col.getName(5).resolveBinding();
assertTrue(a instanceof ICPPTemplateInstance);
assertSame(((ICPPTemplateInstance)a).getTemplateDefinition(), A);
assertSame(((ICPPTemplateInstance) a).getTemplateDefinition(), A);
assertSame(local, col.getName(7).resolveBinding());
}
@ -1928,7 +1928,7 @@ public class AST2TemplateTests extends AST2BaseTest {
ICPPClassTemplate complex = (ICPPClassTemplate) col.getName(1).resolveBinding();
ICPPClassType cspec = (ICPPClassType) col.getName(2).resolveBinding();
assertTrue(cspec instanceof ICPPSpecialization);
assertSame(((ICPPSpecialization)cspec).getSpecializedBinding(), complex);
assertSame(((ICPPSpecialization) cspec).getSpecializedBinding(), complex);
assertSame(complex, col.getName(5).resolveBinding());
assertSame(cspec, col.getName(6).resolveBinding());
@ -2374,7 +2374,7 @@ public class AST2TemplateTests extends AST2BaseTest {
assertInstance(tid.resolveBinding(), ICPPTemplateInstance.class); // *D<int>*(5, 6)
assertInstance(tid.resolveBinding(), ICPPConstructor.class); // *D<int>*(5, 6)
IBinding tidSpc= ((ICPPTemplateInstance)tid.resolveBinding()).getSpecializedBinding();
IBinding tidSpc= ((ICPPTemplateInstance) tid.resolveBinding()).getSpecializedBinding();
assertInstance(tidSpc, ICPPConstructor.class);
assertInstance(tidSpc, ICPPSpecialization.class);
assertInstance(tidSpc, ICPPFunctionTemplate.class);
@ -2807,7 +2807,7 @@ public class AST2TemplateTests extends AST2BaseTest {
tu.accept(col);
assertInstance(col.getName(3), ICPPASTTemplateId.class);
assertInstance(((ICPPASTTemplateId)col.getName(3)).getTemplateArguments()[0], ICPPASTUnaryExpression.class);
assertInstance(((ICPPASTTemplateId) col.getName(3)).getTemplateArguments()[0], ICPPASTUnaryExpression.class);
}
// template<class T1, int q> class C {};

View file

@ -7038,7 +7038,7 @@ public class AST2Tests extends AST2BaseTest {
// newArray var5;
//
// void foo() {
// /* The type of the arraysubscript expression should be struct s
// /* The type of the array subscript expression should be struct s
// * each of the following statements
// */
// var1[1].a = 1;

View file

@ -6,7 +6,7 @@
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* Markus Schorn - initial API and implementation
* Markus Schorn - initial API and implementation
*******************************************************************************/
package org.eclipse.cdt.internal.core.model.ext;
@ -17,7 +17,6 @@ import org.eclipse.cdt.core.model.ICElement;
import org.eclipse.cdt.core.parser.ast.ASTAccessVisibility;
public class FieldHandle extends CElementHandle implements org.eclipse.cdt.core.model.IField {
private ASTAccessVisibility fVisibility;
private String fTypeName;
private boolean fIsStatic;

View file

@ -6,7 +6,7 @@
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* John Camelon (IBM Rational Software) - Initial API and implementation
* John Camelon (IBM Rational Software) - Initial API and implementation
*******************************************************************************/
package org.eclipse.cdt.core.dom.ast;
@ -142,7 +142,8 @@ public interface IASTUnaryExpression extends IASTExpression {
* <code>OPERAND</code> represents the relationship between an <code>IASTUnaryExpression</code> and
* it's nested <code>IASTExpression</code>.
*/
public static final ASTNodeProperty OPERAND = new ASTNodeProperty("IASTUnaryExpression.OPERAND - IASTExpression (operand) for IASTUnaryExpression"); //$NON-NLS-1$
public static final ASTNodeProperty OPERAND =
new ASTNodeProperty("IASTUnaryExpression.OPERAND - IASTExpression (operand) for IASTUnaryExpression"); //$NON-NLS-1$
/**
* Get the operand.

View file

@ -19,6 +19,7 @@ import static org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.ExpressionT
import static org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.ExpressionTypes.typeFromReturnType;
import static org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.ExpressionTypes.valueCategoryFromFunctionCall;
import static org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.ExpressionTypes.valueCategoryFromReturnType;
import static org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.SemanticUtil.COND_TDEF;
import static org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.SemanticUtil.CVTYPE;
import static org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.SemanticUtil.REF;
import static org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.SemanticUtil.TDEF;
@ -40,6 +41,7 @@ import org.eclipse.cdt.core.dom.ast.IProblemBinding;
import org.eclipse.cdt.core.dom.ast.ISemanticProblem;
import org.eclipse.cdt.core.dom.ast.IType;
import org.eclipse.cdt.core.dom.ast.cpp.ICPPASTExpressionList;
import org.eclipse.cdt.core.dom.ast.cpp.ICPPASTFieldReference;
import org.eclipse.cdt.core.dom.ast.cpp.ICPPASTFunctionCallExpression;
import org.eclipse.cdt.core.dom.ast.cpp.ICPPClassType;
import org.eclipse.cdt.core.dom.ast.cpp.ICPPFunction;
@ -260,15 +262,16 @@ public class CPPASTFunctionCallExpression extends ASTNode
@Override
public IType getExpressionType() {
// Handle explicit type conversion in functional notation.
IType t= isExplicitTypeConversion();
if (t != null) {
if (t instanceof IProblemBinding) {
IType type= isExplicitTypeConversion();
if (type != null) {
if (type instanceof IProblemBinding) {
return ProblemType.UNRESOLVED_NAME;
}
return prvalueType(t);
return prvalueType(type);
}
t= SemanticUtil.getNestedType(functionName.getExpressionType(), TDEF | REF | CVTYPE);
type= SemanticUtil.getNestedType(functionName.getExpressionType(), COND_TDEF | REF | CVTYPE);
IType t = SemanticUtil.getNestedType(type, TDEF | REF | CVTYPE);
if (t instanceof ICPPClassType) {
if (overload == UNINITIALIZED_FUNCTION) {
overload = CPPSemantics.findOverloadedOperator(this, (ICPPClassType) t);
@ -283,9 +286,16 @@ public class CPPASTFunctionCallExpression extends ASTNode
t= SemanticUtil.getNestedType(((IPointerType) t).getType(), TDEF | REF | CVTYPE);
}
if (t instanceof IFunctionType) {
return typeFromReturnType(((IFunctionType) t).getReturnType());
type = typeFromReturnType(((IFunctionType) t).getReturnType());
if (functionName instanceof ICPPASTFieldReference) {
IType ownerType = ((ICPPASTFieldReference) functionName).getFieldOwnerType();
t = SemanticUtil.substituteTypedef(type, ownerType);
if (t != null)
type = t;
}
return type;
}
if (CPPTemplates.isDependentType(t))
if (CPPTemplates.isDependentType(type))
return CPPUnknownClass.createUnnamedInstance();
return new ProblemType(ISemanticProblem.TYPE_UNKNOWN_FOR_EXPRESSION);

View file

@ -50,7 +50,8 @@ public class CPPFunctionSpecialization extends CPPSpecialization implements ICPP
this(orig, owner, argMap, null);
}
public CPPFunctionSpecialization(ICPPFunction orig, IBinding owner, ICPPTemplateParameterMap argMap, ICPPClassSpecialization context) {
public CPPFunctionSpecialization(ICPPFunction orig, IBinding owner, ICPPTemplateParameterMap argMap,
ICPPClassSpecialization context) {
super(orig, owner, argMap);
fContext= context;
}

View file

@ -6,8 +6,8 @@
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* Andrew Niefer (IBM) - Initial API and implementation
* Markus Schorn (Wind River Systems)
* Andrew Niefer (IBM) - Initial API and implementation
* Markus Schorn (Wind River Systems)
*******************************************************************************/
package org.eclipse.cdt.internal.core.dom.parser.cpp;
@ -24,31 +24,31 @@ import org.eclipse.cdt.core.dom.ast.cpp.ICPPTemplateParameterMap;
/**
* The specialization of a method in the context of a class-specialization.
*/
public class CPPMethodSpecialization extends CPPFunctionSpecialization
implements ICPPMethod {
public class CPPMethodSpecialization extends CPPFunctionSpecialization implements ICPPMethod {
public CPPMethodSpecialization(ICPPMethod orig, ICPPClassType owner, ICPPTemplateParameterMap argMap ) {
super(orig, owner, argMap );
public CPPMethodSpecialization(ICPPMethod orig, ICPPClassType owner, ICPPTemplateParameterMap argMap) {
super(orig, owner, argMap);
}
@Override
public boolean isVirtual() {
ICPPMethod f = (ICPPMethod) getSpecializedBinding();
if( f != null )
if (f != null)
return f.isVirtual();
IASTNode definition = getDefinition();
if( definition != null ){
if (definition != null) {
IASTNode node = definition.getParent();
while( node instanceof IASTDeclarator )
while(node instanceof IASTDeclarator)
node = node.getParent();
ICPPASTDeclSpecifier declSpec = null;
if( node instanceof IASTSimpleDeclaration )
declSpec = (ICPPASTDeclSpecifier) ((IASTSimpleDeclaration)node).getDeclSpecifier();
else if( node instanceof IASTFunctionDefinition )
declSpec = (ICPPASTDeclSpecifier) ((IASTFunctionDefinition)node).getDeclSpecifier();
if (node instanceof IASTSimpleDeclaration) {
declSpec = (ICPPASTDeclSpecifier) ((IASTSimpleDeclaration) node).getDeclSpecifier();
} else if (node instanceof IASTFunctionDefinition) {
declSpec = (ICPPASTDeclSpecifier) ((IASTFunctionDefinition) node).getDeclSpecifier();
}
if( declSpec != null ){
if (declSpec != null) {
return declSpec.isVirtual();
}
}
@ -58,7 +58,7 @@ public class CPPMethodSpecialization extends CPPFunctionSpecialization
@Override
public int getVisibility() {
ICPPMethod f = (ICPPMethod) getSpecializedBinding();
if( f != null )
if (f != null)
return f.getVisibility();
return 0;
}
@ -79,7 +79,7 @@ public class CPPMethodSpecialization extends CPPFunctionSpecialization
@Override
public boolean isExplicit() {
return ((ICPPMethod)getSpecializedBinding()).isExplicit();
return ((ICPPMethod) getSpecializedBinding()).isExplicit();
}
@Override