-
Notifications
You must be signed in to change notification settings - Fork 763
Closed
Description
Minimal class that seems to trigger the issue:
enum Enum {
C(0);
Enum(final int i) {
/* Assignment to field not necessary to trigger issue. */
}
}
Stack trace:
/some/local/path/including/company/package/name/Enum.java:6: error: An unhandled exception was thrown by the Error Prone static analysis plugin.
Enum(final int i) {
^
Please report this at https://github.com/google/error-prone/issues/new and include the following:
error-prone version: 2.0.12
Stack Trace:
java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
at java.util.ArrayList.rangeCheck(ArrayList.java:653)
at java.util.ArrayList.get(ArrayList.java:429)
at com.google.errorprone.bugpatterns.ArgumentParameterSwap.evaluateNames(ArgumentParameterSwap.java:112)
at com.google.errorprone.bugpatterns.ArgumentParameterSwap.matchMethodInvocation(ArgumentParameterSwap.java:84)
at com.google.errorprone.scanner.ErrorProneScanner.visitMethodInvocation(ErrorProneScanner.java:952)
at com.google.errorprone.scanner.ErrorProneScanner.visitMethodInvocation(ErrorProneScanner.java:144)
at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1614)
at com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:72)
at com.google.errorprone.scanner.Scanner.scan(Scanner.java:89)
at com.google.errorprone.scanner.Scanner.scan(Scanner.java:43)
at com.sun.source.util.TreeScanner.visitExpressionStatement(TreeScanner.java:434)
at com.google.errorprone.scanner.ErrorProneScanner.visitExpressionStatement(ErrorProneScanner.java:758)
at com.google.errorprone.scanner.ErrorProneScanner.visitExpressionStatement(ErrorProneScanner.java:144)
at com.sun.tools.javac.tree.JCTree$JCExpressionStatement.accept(JCTree.java:1424)
at com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:72)
at com.google.errorprone.scanner.Scanner.scan(Scanner.java:89)
at com.google.errorprone.scanner.Scanner.scan(Scanner.java:43)
at com.sun.source.util.TreeScanner.scan(TreeScanner.java:106)
at com.sun.source.util.TreeScanner.visitBlock(TreeScanner.java:249)
at com.google.errorprone.scanner.ErrorProneScanner.visitBlock(ErrorProneScanner.java:575)
at com.google.errorprone.scanner.ErrorProneScanner.visitBlock(ErrorProneScanner.java:144)
at com.sun.tools.javac.tree.JCTree$JCBlock.accept(JCTree.java:996)
at com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:72)
at com.google.errorprone.scanner.Scanner.scan(Scanner.java:89)
at com.google.errorprone.scanner.Scanner.scan(Scanner.java:43)
at com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:91)
at com.sun.source.util.TreeScanner.visitMethod(TreeScanner.java:207)
at com.google.errorprone.scanner.ErrorProneScanner.visitMethod(ErrorProneScanner.java:943)
at com.google.errorprone.scanner.ErrorProneScanner.visitMethod(ErrorProneScanner.java:144)
at com.sun.tools.javac.tree.JCTree$JCMethodDecl.accept(JCTree.java:868)
at com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:72)
at com.google.errorprone.scanner.Scanner.scan(Scanner.java:89)
at com.google.errorprone.scanner.Scanner.scan(Scanner.java:43)
at com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:91)
at com.sun.source.util.TreeScanner.scan(TreeScanner.java:106)
at com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:114)
at com.sun.source.util.TreeScanner.visitClass(TreeScanner.java:188)
at com.google.errorprone.scanner.ErrorProneScanner.visitClass(ErrorProneScanner.java:635)
at com.google.errorprone.scanner.ErrorProneScanner.visitClass(ErrorProneScanner.java:144)
at com.sun.tools.javac.tree.JCTree$JCClassDecl.accept(JCTree.java:778)
at com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:72)
at com.google.errorprone.scanner.Scanner.scan(Scanner.java:89)
at com.google.errorprone.scanner.Scanner.scan(Scanner.java:43)
at com.sun.source.util.TreeScanner.scan(TreeScanner.java:106)
at com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:114)
at com.sun.source.util.TreeScanner.visitCompilationUnit(TreeScanner.java:145)
at com.google.errorprone.scanner.ErrorProneScanner.visitCompilationUnit(ErrorProneScanner.java:650)
at com.google.errorprone.scanner.ErrorProneScanner.visitCompilationUnit(ErrorProneScanner.java:144)
at com.sun.tools.javac.tree.JCTree$JCCompilationUnit.accept(JCTree.java:561)
at com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:53)
at com.google.errorprone.scanner.Scanner.scan(Scanner.java:68)
at com.google.errorprone.scanner.ErrorProneScannerTransformer.apply(ErrorProneScannerTransformer.java:43)
at com.google.errorprone.ErrorProneAnalyzer.finished(ErrorProneAnalyzer.java:123)
at com.sun.tools.javac.api.MultiTaskListener.finished(MultiTaskListener.java:113)
at com.sun.tools.javac.main.JavaCompiler.flow(JavaCompiler.java:1303)
at com.sun.tools.javac.main.JavaCompiler.flow(JavaCompiler.java:1247)
at com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:858)
at com.sun.tools.javac.main.Main.compile(Main.java:253)
at com.google.errorprone.BaseErrorProneCompiler.run(BaseErrorProneCompiler.java:187)
at com.google.errorprone.BaseErrorProneCompiler.run(BaseErrorProneCompiler.java:98)
at com.google.errorprone.ErrorProneCompiler.run(ErrorProneCompiler.java:128)
at com.google.errorprone.ErrorProneCompiler.compile(ErrorProneCompiler.java:70)
at org.codehaus.plexus.compiler.javac.errorprone.JavacCompilerWithErrorProne$CompilerInvoker.compile(JavacCompilerWithErrorProne.java:219)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.codehaus.plexus.compiler.javac.errorprone.JavacCompilerWithErrorProne.performCompile(JavacCompilerWithErrorProne.java:91)
at org.apache.maven.plugin.compiler.AbstractCompilerMojo.execute(AbstractCompilerMojo.java:886)
at org.apache.maven.plugin.compiler.CompilerMojo.execute(CompilerMojo.java:129)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:134)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:207)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:116)
at org.apache.maven.lifecycle.internal.builder.multithreaded.MultiThreadedBuilder$1.call(MultiThreadedBuilder.java:185)
at org.apache.maven.lifecycle.internal.builder.multithreaded.MultiThreadedBuilder$1.call(MultiThreadedBuilder.java:181)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Metadata
Metadata
Assignees
Labels
No labels