Community
Participate
Working Groups
BETA_JAVA8: There are a bunch of checks in SelectionEngine + CompletionEngine that look like the following: if (scope.referenceContext instanceof AbstractMethodDeclaration) { // ... } All these places need to upgrade to LambdaExpression as a potential reference context. Example that breaks: interface I { void foo(); } public class X { public static void main(String[] args) { I i = () -> { syso| // no proposals here. }; } }
*** Bug 416996 has been marked as a duplicate of this bug. ***
Fix and tests available here: http://git.eclipse.org/c/jdt/eclipse.jdt.core.git/commit/?h=BETA_JAVA8&id=0c0e9f808d4509f3cefc470c2105f7ba1290fdb7
We still do not get the proposals in the following example: interface I { void foo(); } public class X { I i = () -> { syso| // no proposals here. }; }
Fix and tests released here: http://git.eclipse.org/c/jdt/eclipse.jdt.core.git/commit/?h=BETA_JAVA8&id=5ceefbeb66afbd6b6f84ecf2da328f9e9c0ece67 We were setting the parent node of the completion node to be the field declaration. This was inhibiting us from recognizing that completion is occurring in a statement start location.