Community
Participate
Working Groups
2.0 with update 2.0.1 Having the AST for class E public class E { public E() { int i; int k; } } Look at statements of E: AST has 3 statements, including SuperConstructorInvocation with strange position.
i think the ast should contain only nodes that exist in the code or, there could be a flag indicating that it is not the case
i think there's now no way to differentiate between: class Inner{ Inner(int t){ } } and class Inner{ Inner(int t){ super(); } } except for the length of the super call, which is 12 (!) in the second case
I think it makes sense to remove synthetic constructors from the AST. I will investigate.
Synthetic constructor calls are flagged as ImplicitSuper. So I am simply filter them out when converting them. So this method body reports 3 statements: A() { super(); int i; int j; } and this one reports only two statements: A() { int i; int j; } Fixed and released in 2.1 stream.
Verified.
Regression tests added (test0399, test0400).