You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Test.java:2: error: An unhandled exception was thrown by the Error Prone static analysis plugin.
private final Runnable r = () -> String.valueOf("");
^
Please report this at https://github.com/google/error-prone/issues/new and include the following:
error-prone version: 2.0.21
Stack Trace:
java.lang.NullPointerException
at com.google.errorprone.matchers.IsLastStatementInBlock.matches(IsLastStatementInBlock.java:31)
at com.google.errorprone.matchers.IsLastStatementInBlock.matches(IsLastStatementInBlock.java:25)
at com.google.errorprone.matchers.Matchers$4.matches(Matchers.java:127)
at com.google.errorprone.matchers.Matchers$5.matches(Matchers.java:146)
at com.google.errorprone.bugpatterns.AbstractReturnValueIgnored.expectedExceptionTest(AbstractReturnValueIgnored.java:163)
at com.google.errorprone.matchers.Matchers$3.matches(Matchers.java:112)
at com.google.errorprone.matchers.Matchers$4.matches(Matchers.java:127)
at com.google.errorprone.bugpatterns.AbstractReturnValueIgnored.matchMethodInvocation(AbstractReturnValueIgnored.java:80)
at com.google.errorprone.scanner.ErrorProneScanner.visitMethodInvocation(ErrorProneScanner.java:907)
at com.google.errorprone.scanner.ErrorProneScanner.visitMethodInvocation(ErrorProneScanner.java:146)
at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1644)
at com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:82)
at com.google.errorprone.scanner.Scanner.scan(Scanner.java:82)
at com.google.errorprone.scanner.Scanner.scan(Scanner.java:42)
at com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:90)
at com.sun.source.util.TreeScanner.visitLambdaExpression(TreeScanner.java:559)
at com.google.errorprone.scanner.ErrorProneScanner.visitLambdaExpression(ErrorProneScanner.java:833)
at com.google.errorprone.scanner.ErrorProneScanner.visitLambdaExpression(ErrorProneScanner.java:146)
at com.sun.tools.javac.tree.JCTree$JCLambda.accept(JCTree.java:1805)
at com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:82)
at com.google.errorprone.scanner.Scanner.scan(Scanner.java:82)
at com.google.errorprone.scanner.Scanner.scan(Scanner.java:42)
at com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:90)
at com.sun.source.util.TreeScanner.visitVariable(TreeScanner.java:223)
at com.google.errorprone.scanner.ErrorProneScanner.visitVariable(ErrorProneScanner.java:1156)
at com.google.errorprone.scanner.ErrorProneScanner.visitVariable(ErrorProneScanner.java:146)
at com.sun.tools.javac.tree.JCTree$JCVariableDecl.accept(JCTree.java:968)
at com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:82)
at com.google.errorprone.scanner.Scanner.scan(Scanner.java:82)
at com.google.errorprone.scanner.Scanner.scan(Scanner.java:42)
at com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:90)
at com.sun.source.util.TreeScanner.scan(TreeScanner.java:105)
at com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:113)
at com.sun.source.util.TreeScanner.visitClass(TreeScanner.java:187)
at com.google.errorprone.scanner.ErrorProneScanner.visitClass(ErrorProneScanner.java:590)
at com.google.errorprone.scanner.ErrorProneScanner.visitClass(ErrorProneScanner.java:146)
at com.sun.tools.javac.tree.JCTree$JCClassDecl.accept(JCTree.java:808)
at com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:82)
at com.google.errorprone.scanner.Scanner.scan(Scanner.java:82)
at com.google.errorprone.scanner.Scanner.scan(Scanner.java:42)
at com.sun.source.util.TreeScanner.scan(TreeScanner.java:105)
at com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:113)
at com.sun.source.util.TreeScanner.visitCompilationUnit(TreeScanner.java:144)
at com.google.errorprone.scanner.ErrorProneScanner.visitCompilationUnit(ErrorProneScanner.java:605)
at com.google.errorprone.scanner.ErrorProneScanner.visitCompilationUnit(ErrorProneScanner.java:146)
at com.sun.tools.javac.tree.JCTree$JCCompilationUnit.accept(JCTree.java:591)
at com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:56)
at com.google.errorprone.scanner.Scanner.scan(Scanner.java:64)
at com.google.errorprone.scanner.ErrorProneScannerTransformer.apply(ErrorProneScannerTransformer.java:41)
at com.google.errorprone.ErrorProneAnalyzer.finished(ErrorProneAnalyzer.java:145)
at com.sun.tools.javac.api.MultiTaskListener.finished(MultiTaskListener.java:120)
at com.sun.tools.javac.main.JavaCompiler.flow(JavaCompiler.java:1425)
at com.sun.tools.javac.main.JavaCompiler.flow(JavaCompiler.java:1374)
at com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:973)
at com.sun.tools.javac.api.JavacTaskImpl.lambda$doCall$0(JavacTaskImpl.java:100)
at com.sun.tools.javac.api.JavacTaskImpl.handleExceptions(JavacTaskImpl.java:142)
at com.sun.tools.javac.api.JavacTaskImpl.doCall(JavacTaskImpl.java:96)
at com.sun.tools.javac.api.JavacTaskImpl.call(JavacTaskImpl.java:90)
at com.google.errorprone.BaseErrorProneCompiler.run(BaseErrorProneCompiler.java:137)
at com.google.errorprone.BaseErrorProneCompiler.run(BaseErrorProneCompiler.java:108)
at com.google.errorprone.ErrorProneCompiler.run(ErrorProneCompiler.java:118)
at com.google.errorprone.ErrorProneCompiler.compile(ErrorProneCompiler.java:65)
at com.google.errorprone.ErrorProneCompiler.main(ErrorProneCompiler.java:44)
1 error
The issue seems to be triggered because Runnable#run is void, while the lambda expression isn't.
Workarounds:
Modify the lambda expression by enclosing the expression in a statement block (i.e., add curly braces).
Disable all checks which are a subclass of AbstractReturnValueIgnored (all are enabled by default): -XepCheckReturnValue:OFF -Xep:FutureReturnValueIgnored:OFF -Xep:ReturnValueIgnored:OFF -Xep:RectIntersectReturnValueIgnored:OFF.
The text was updated successfully, but these errors were encountered:
Consider this class:
Running Error Prone with default settings yields:
The issue seems to be triggered because
Runnable#run
isvoid
, while the lambda expression isn't.Workarounds:
AbstractReturnValueIgnored
(all are enabled by default):-XepCheckReturnValue:OFF -Xep:FutureReturnValueIgnored:OFF -Xep:ReturnValueIgnored:OFF -Xep:RectIntersectReturnValueIgnored:OFF
.The text was updated successfully, but these errors were encountered: