akshattandon / projectlombok

Automatically exported from code.google.com/p/projectlombok
0 stars 0 forks source link

Error in JDT core during AST creation #811

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. Download the current eclipse (Eclipse Luna SR2 (4.4.2) Release for OSX 64)
2. Download the current lombok (1.16.4)
3. Install lombok in eclipse
4. Create a new workspace
5. Open my project at work (sorry, can't include that here)

What is the expected output? What do you see instead?
I expect eclipse to work normally, allowing me to set breakpoints & mark 
occurrences.  What happens is that, in certain java files, I can not set 
breakpoints, quick assist doesn't work, and mark occurrences doesn't.  Also I 
get a repeating trio of errors in the Error Log.

What version of the product are you using? On what operating system?
Lombok 1.16.4, OSX 10.10.1

Please provide any additional information below.
I'm not sure that this is a lombok issue, but it looks a lot like 
https://code.google.com/p/projectlombok/issues/detail?id=521 and the smallest 
change is to a "val", so maybe...

The smallest change that makes things work again is to alter one of the "val"s 
in the file; if I change it to the actual class name, things start to work 
again.  There are multiple other "val"s in the file, but they don't seem to 
cause problems.

The trio of errors is below.  If there's anything else I can get for you, 
please let me know.  I have incentive for this to work.

Error trio:

Error in JDT Core during AST creation
java.lang.IllegalArgumentException: startPos = 3340 and length is -3340.
This breaks the rule that lengths are not allowed to be negative. Affected Node:
java.lang.String[]
    at lombok.eclipse.agent.PatchDiagnostics.setSourceRangeCheck(PatchDiagnostics.java:33)
    at org.eclipse.jdt.core.dom.ASTNode.setSourceRange(ASTNode.java)
    at org.eclipse.jdt.core.dom.ASTConverter.setTypeAnnotationsAndSourceRangeOnArray(ASTConverter.java:3420)
    at org.eclipse.jdt.core.dom.ASTConverter.convertToArray(ASTConverter.java:3166)
    at org.eclipse.jdt.core.dom.ASTConverter.convertType(ASTConverter.java:3831)
    at org.eclipse.jdt.core.dom.ASTConverter.convertType(ASTConverter.java:3687)
    at org.eclipse.jdt.core.dom.ASTConverter.convertType(ASTConverter.java:3687)
    at org.eclipse.jdt.core.dom.ASTConverter.convertToVariableDeclarationStatement(ASTConverter.java:3439)
    at org.eclipse.jdt.core.dom.ASTConverter.checkAndAddMultipleLocalDeclaration(ASTConverter.java:454)
    at org.eclipse.jdt.core.dom.ASTConverter.convert(ASTConverter.java:1257)
    at org.eclipse.jdt.core.dom.ASTConverter.convert(ASTConverter.java:2865)
    at org.eclipse.jdt.core.dom.ASTConverter.convert(ASTConverter.java:2723)
    at org.eclipse.jdt.core.dom.ASTConverter.convert(ASTConverter.java:635)
    at org.eclipse.jdt.core.dom.ASTConverter.buildBodyDeclarations(ASTConverter.java:195)
    at org.eclipse.jdt.core.dom.ASTConverter.convert(ASTConverter.java:2958)
    at org.eclipse.jdt.core.dom.ASTConverter.convert(ASTConverter.java:1374)
    at org.eclipse.jdt.core.dom.CompilationUnitResolver.convert(CompilationUnitResolver.java:292)
    at org.eclipse.jdt.core.dom.ASTParser.internalCreateAST(ASTParser.java:1209)
    at org.eclipse.jdt.core.dom.ASTParser.createAST(ASTParser.java:809)
    at org.eclipse.jdt.internal.ui.javaeditor.ASTProvider$1.run(ASTProvider.java:544)
    at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
    at org.eclipse.jdt.internal.ui.javaeditor.ASTProvider.createAST(ASTProvider.java:537)
    at org.eclipse.jdt.internal.ui.javaeditor.ASTProvider.getAST(ASTProvider.java:480)
    at org.eclipse.jdt.ui.SharedASTProvider.getAST(SharedASTProvider.java:128)
    at org.eclipse.jdt.internal.ui.text.java.hover.NLSStringHover.internalGetHoverInfo(NLSStringHover.java:135)
    at org.eclipse.jdt.internal.ui.text.java.hover.NLSStringHover.getHoverInfo2(NLSStringHover.java:114)
    at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163)
    at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129)
    at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85)
    at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166)
eclipse.buildId=4.4.2.M20150204-1700
java.version=1.8.0_31
java.vendor=Oracle Corporation
BootLoader constants: OS=macosx, ARCH=x86_64, WS=cocoa, NL=en_US
Framework arguments:  -product org.eclipse.epp.package.java.product -keyring 
/Users/abrahamd/.eclipse_keyring -showlocation
Command-line arguments:  -os macosx -ws cocoa -arch x86_64 -product 
org.eclipse.epp.package.java.product -keyring /Users/abrahamd/.eclipse_keyring 
-showlocation

Problems occurred when invoking code from plug-in: "org.eclipse.jdt.ui".
java.lang.IllegalArgumentException: startPos = 3340 and length is -3340.
This breaks the rule that lengths are not allowed to be negative. Affected Node:
java.lang.String[]
    at lombok.eclipse.agent.PatchDiagnostics.setSourceRangeCheck(PatchDiagnostics.java:33)
    at org.eclipse.jdt.core.dom.ASTNode.setSourceRange(ASTNode.java)
    at org.eclipse.jdt.core.dom.ASTConverter.setTypeAnnotationsAndSourceRangeOnArray(ASTConverter.java:3420)
    at org.eclipse.jdt.core.dom.ASTConverter.convertToArray(ASTConverter.java:3166)
    at org.eclipse.jdt.core.dom.ASTConverter.convertType(ASTConverter.java:3831)
    at org.eclipse.jdt.core.dom.ASTConverter.convertType(ASTConverter.java:3687)
    at org.eclipse.jdt.core.dom.ASTConverter.convertType(ASTConverter.java:3687)
    at org.eclipse.jdt.core.dom.ASTConverter.convertToVariableDeclarationStatement(ASTConverter.java:3439)
    at org.eclipse.jdt.core.dom.ASTConverter.checkAndAddMultipleLocalDeclaration(ASTConverter.java:454)
    at org.eclipse.jdt.core.dom.ASTConverter.convert(ASTConverter.java:1257)
    at org.eclipse.jdt.core.dom.ASTConverter.convert(ASTConverter.java:2865)
    at org.eclipse.jdt.core.dom.ASTConverter.convert(ASTConverter.java:2723)
    at org.eclipse.jdt.core.dom.ASTConverter.convert(ASTConverter.java:635)
    at org.eclipse.jdt.core.dom.ASTConverter.buildBodyDeclarations(ASTConverter.java:195)
    at org.eclipse.jdt.core.dom.ASTConverter.convert(ASTConverter.java:2958)
    at org.eclipse.jdt.core.dom.ASTConverter.convert(ASTConverter.java:1374)
    at org.eclipse.jdt.core.dom.CompilationUnitResolver.convert(CompilationUnitResolver.java:292)
    at org.eclipse.jdt.core.dom.ASTParser.internalCreateAST(ASTParser.java:1209)
    at org.eclipse.jdt.core.dom.ASTParser.createAST(ASTParser.java:809)
    at org.eclipse.jdt.internal.ui.javaeditor.ASTProvider$1.run(ASTProvider.java:544)
    at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
    at org.eclipse.jdt.internal.ui.javaeditor.ASTProvider.createAST(ASTProvider.java:537)
    at org.eclipse.jdt.internal.ui.javaeditor.ASTProvider.getAST(ASTProvider.java:480)
    at org.eclipse.jdt.ui.SharedASTProvider.getAST(SharedASTProvider.java:128)
    at org.eclipse.jdt.internal.ui.text.java.hover.NLSStringHover.internalGetHoverInfo(NLSStringHover.java:135)
    at org.eclipse.jdt.internal.ui.text.java.hover.NLSStringHover.getHoverInfo2(NLSStringHover.java:114)
    at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163)
    at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129)
    at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85)
    at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166)
eclipse.buildId=4.4.2.M20150204-1700
java.version=1.8.0_31
java.vendor=Oracle Corporation
BootLoader constants: OS=macosx, ARCH=x86_64, WS=cocoa, NL=en_US
Framework arguments:  -product org.eclipse.epp.package.java.product -keyring 
/Users/abrahamd/.eclipse_keyring -showlocation
Command-line arguments:  -os macosx -ws cocoa -arch x86_64 -product 
org.eclipse.epp.package.java.product -keyring /Users/abrahamd/.eclipse_keyring 
-showlocation

Exception occurred during compilation unit conversion:
----------------------------------- SOURCE BEGIN 
-------------------------------------
(I removed the source as it belongs to the company I work for.  If you need 
something from it please talk to me privately and I'll see what I can do)
java.lang.IllegalArgumentException: startPos = 3340 and length is -3340.
This breaks the rule that lengths are not allowed to be negative. Affected Node:
java.lang.String[]
    at lombok.eclipse.agent.PatchDiagnostics.setSourceRangeCheck(PatchDiagnostics.java:33)
    at org.eclipse.jdt.core.dom.ASTNode.setSourceRange(ASTNode.java)
    at org.eclipse.jdt.core.dom.ASTConverter.setTypeAnnotationsAndSourceRangeOnArray(ASTConverter.java:3420)
    at org.eclipse.jdt.core.dom.ASTConverter.convertToArray(ASTConverter.java:3166)
    at org.eclipse.jdt.core.dom.ASTConverter.convertType(ASTConverter.java:3831)
    at org.eclipse.jdt.core.dom.ASTConverter.convertType(ASTConverter.java:3687)
    at org.eclipse.jdt.core.dom.ASTConverter.convertType(ASTConverter.java:3687)
    at org.eclipse.jdt.core.dom.ASTConverter.convertToVariableDeclarationStatement(ASTConverter.java:3439)
    at org.eclipse.jdt.core.dom.ASTConverter.checkAndAddMultipleLocalDeclaration(ASTConverter.java:454)
    at org.eclipse.jdt.core.dom.ASTConverter.convert(ASTConverter.java:1257)
    at org.eclipse.jdt.core.dom.ASTConverter.convert(ASTConverter.java:2865)
    at org.eclipse.jdt.core.dom.ASTConverter.convert(ASTConverter.java:2723)
    at org.eclipse.jdt.core.dom.ASTConverter.convert(ASTConverter.java:635)
    at org.eclipse.jdt.core.dom.ASTConverter.buildBodyDeclarations(ASTConverter.java:195)
    at org.eclipse.jdt.core.dom.ASTConverter.convert(ASTConverter.java:2958)
    at org.eclipse.jdt.core.dom.ASTConverter.convert(ASTConverter.java:1374)
    at org.eclipse.jdt.core.dom.CompilationUnitResolver.convert(CompilationUnitResolver.java:292)
    at org.eclipse.jdt.core.dom.ASTParser.internalCreateAST(ASTParser.java:1209)
    at org.eclipse.jdt.core.dom.ASTParser.createAST(ASTParser.java:809)
    at org.eclipse.jdt.internal.ui.javaeditor.ASTProvider$1.run(ASTProvider.java:544)
    at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
    at org.eclipse.jdt.internal.ui.javaeditor.ASTProvider.createAST(ASTProvider.java:537)
    at org.eclipse.jdt.internal.ui.javaeditor.ASTProvider.getAST(ASTProvider.java:480)
    at org.eclipse.jdt.ui.SharedASTProvider.getAST(SharedASTProvider.java:128)
    at org.eclipse.jdt.internal.ui.text.java.hover.NLSStringHover.internalGetHoverInfo(NLSStringHover.java:135)
    at org.eclipse.jdt.internal.ui.text.java.hover.NLSStringHover.getHoverInfo2(NLSStringHover.java:114)
    at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163)
    at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129)
    at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85)
    at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166)
eclipse.buildId=4.4.2.M20150204-1700
java.version=1.8.0_31
java.vendor=Oracle Corporation
BootLoader constants: OS=macosx, ARCH=x86_64, WS=cocoa, NL=en_US
Framework arguments:  -product org.eclipse.epp.package.java.product -keyring 
/Users/abrahamd/.eclipse_keyring -showlocation
Command-line arguments:  -os macosx -ws cocoa -arch x86_64 -product 
org.eclipse.epp.package.java.product -keyring /Users/abrahamd/.eclipse_keyring 
-showlocation

Original issue reported on code.google.com by danielma...@gmail.com on 6 May 2015 at 5:59