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
after disabling FallThrough to workaround #2638, I get another NPE now from ReferenceEquality while handling the same java/util/Formatter.java class:
/Users/iignatye/ws/jdk/open/src/java.base/share/classes/java/util/Formatter.java:4040: error: An unhandled exception was thrown by the Error Prone static analysis plugin.
if (l != null && l != Locale.US) {
^
Please report this at https://github.com/google/error-prone/issues/new and include the following:
error-prone version: 2.9.0
BugPattern: ReferenceEquality
Stack Trace:
com.google.common.util.concurrent.UncheckedExecutionException: java.lang.NullPointerException: Cannot invoke "java.util.List.iterator()" because the return value of "com.sun.source.tree.CaseTree.getStatements()" is null
at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2051)
at com.google.common.cache.LocalCache.get(LocalCache.java:3951)
at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:3974)
at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:4935)
at com.google.common.cache.LocalCache$LocalLoadingCache.getUnchecked(LocalCache.java:4941)
at com.google.errorprone.dataflow.DataFlow.methodDataflow(DataFlow.java:176)
at com.google.errorprone.dataflow.DataFlow.expressionDataflow(DataFlow.java:236)
at com.google.errorprone.dataflow.nullnesspropagation.NullnessAnalysis.getNullness(NullnessAnalysis.java:59)
at com.google.errorprone.bugpatterns.AbstractReferenceEquality.getNullness(AbstractReferenceEquality.java:182)
at com.google.errorprone.bugpatterns.AbstractReferenceEquality.addFixes(AbstractReferenceEquality.java:103)
at com.google.errorprone.bugpatterns.AbstractReferenceEquality.matchBinary(AbstractReferenceEquality.java:78)
at com.google.errorprone.scanner.ErrorProneScanner.processMatchers(ErrorProneScanner.java:450)
at com.google.errorprone.scanner.ErrorProneScanner.visitBinary(ErrorProneScanner.java:513)
at com.google.errorprone.scanner.ErrorProneScanner.visitBinary(ErrorProneScanner.java:151)
at jdk.compiler.interim/com.sun.tools.javac.tree.JCTree$JCBinary.accept(JCTree.java:2166)
at jdk.compiler.interim/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:86)
at com.google.errorprone.scanner.Scanner.scan(Scanner.java:74)
at com.google.errorprone.scanner.Scanner.scan(Scanner.java:48)
at jdk.compiler.interim/com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:96)
at jdk.compiler.interim/com.sun.source.util.TreeScanner.visitBinary(TreeScanner.java:722)
at com.google.errorprone.scanner.ErrorProneScanner.visitBinary(ErrorProneScanner.java:514)
at com.google.errorprone.scanner.ErrorProneScanner.visitBinary(ErrorProneScanner.java:151)
at jdk.compiler.interim/com.sun.tools.javac.tree.JCTree$JCBinary.accept(JCTree.java:2166)
at jdk.compiler.interim/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:86)
at com.google.errorprone.scanner.Scanner.scan(Scanner.java:74)
at com.google.errorprone.scanner.Scanner.scan(Scanner.java:48)
at jdk.compiler.interim/com.sun.source.util.TreeScanner.visitParenthesized(TreeScanner.java:661)
at com.google.errorprone.scanner.ErrorProneScanner.visitParenthesized(ErrorProneScanner.java:800)
at com.google.errorprone.scanner.ErrorProneScanner.visitParenthesized(ErrorProneScanner.java:151)
at jdk.compiler.interim/com.sun.tools.javac.tree.JCTree$JCParens.accept(JCTree.java:2022)
at jdk.compiler.interim/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:86)
at com.google.errorprone.scanner.Scanner.scan(Scanner.java:74)
at com.google.errorprone.scanner.Scanner.scan(Scanner.java:48)
at jdk.compiler.interim/com.sun.source.util.TreeScanner.visitIf(TreeScanner.java:485)
at com.google.errorprone.scanner.ErrorProneScanner.visitIf(ErrorProneScanner.java:655)
at com.google.errorprone.scanner.ErrorProneScanner.visitIf(ErrorProneScanner.java:151)
at jdk.compiler.interim/com.sun.tools.javac.tree.JCTree$JCIf.accept(JCTree.java:1565)
at jdk.compiler.interim/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:86)
at com.google.errorprone.scanner.Scanner.scan(Scanner.java:74)
at com.google.errorprone.scanner.Scanner.scan(Scanner.java:48)
at jdk.compiler.interim/com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:96)
at jdk.compiler.interim/com.sun.source.util.TreeScanner.scan(TreeScanner.java:111)
at jdk.compiler.interim/com.sun.source.util.TreeScanner.visitBlock(TreeScanner.java:272)
at com.google.errorprone.scanner.ErrorProneScanner.visitBlock(ErrorProneScanner.java:521)
at com.google.errorprone.scanner.ErrorProneScanner.visitBlock(ErrorProneScanner.java:151)
at jdk.compiler.interim/com.sun.tools.javac.tree.JCTree$JCBlock.accept(JCTree.java:1103)
at jdk.compiler.interim/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:86)
at com.google.errorprone.scanner.Scanner.scan(Scanner.java:74)
at com.google.errorprone.scanner.Scanner.scan(Scanner.java:48)
at jdk.compiler.interim/com.sun.source.util.TreeScanner.scan(TreeScanner.java:111)
at jdk.compiler.interim/com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:119)
at jdk.compiler.interim/com.sun.source.util.TreeScanner.visitCase(TreeScanner.java:403)
at com.google.errorprone.scanner.ErrorProneScanner.visitCase(ErrorProneScanner.java:535)
at com.google.errorprone.scanner.ErrorProneScanner.visitCase(ErrorProneScanner.java:151)
at jdk.compiler.interim/com.sun.tools.javac.tree.JCTree$JCCase.accept(JCTree.java:1357)
at jdk.compiler.interim/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:86)
at com.google.errorprone.scanner.Scanner.scan(Scanner.java:74)
at com.google.errorprone.scanner.Scanner.scan(Scanner.java:48)
at jdk.compiler.interim/com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:96)
at jdk.compiler.interim/com.sun.source.util.TreeScanner.scan(TreeScanner.java:111)
at jdk.compiler.interim/com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:119)
at jdk.compiler.interim/com.sun.source.util.TreeScanner.visitSwitch(TreeScanner.java:368)
at com.google.errorprone.scanner.ErrorProneScanner.visitSwitch(ErrorProneScanner.java:825)
at com.google.errorprone.scanner.ErrorProneScanner.visitSwitch(ErrorProneScanner.java:151)
at jdk.compiler.interim/com.sun.tools.javac.tree.JCTree$JCSwitch.accept(JCTree.java:1304)
at jdk.compiler.interim/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:86)
at com.google.errorprone.scanner.Scanner.scan(Scanner.java:74)
at com.google.errorprone.scanner.Scanner.scan(Scanner.java:48)
at jdk.compiler.interim/com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:96)
at jdk.compiler.interim/com.sun.source.util.TreeScanner.scan(TreeScanner.java:111)
at jdk.compiler.interim/com.sun.source.util.TreeScanner.visitBlock(TreeScanner.java:272)
at com.google.errorprone.scanner.ErrorProneScanner.visitBlock(ErrorProneScanner.java:521)
at com.google.errorprone.scanner.ErrorProneScanner.visitBlock(ErrorProneScanner.java:151)
at jdk.compiler.interim/com.sun.tools.javac.tree.JCTree$JCBlock.accept(JCTree.java:1103)
at jdk.compiler.interim/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:86)
at com.google.errorprone.scanner.Scanner.scan(Scanner.java:74)
at com.google.errorprone.scanner.Scanner.scan(Scanner.java:48)
at jdk.compiler.interim/com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:96)
at jdk.compiler.interim/com.sun.source.util.TreeScanner.visitMethod(TreeScanner.java:224)
at com.google.errorprone.scanner.ErrorProneScanner.visitMethod(ErrorProneScanner.java:741)
at com.google.errorprone.scanner.ErrorProneScanner.visitMethod(ErrorProneScanner.java:151)
at jdk.compiler.interim/com.sun.tools.javac.tree.JCTree$JCMethodDecl.accept(JCTree.java:953)
at jdk.compiler.interim/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:86)
at com.google.errorprone.scanner.Scanner.scan(Scanner.java:74)
at com.google.errorprone.scanner.Scanner.scan(Scanner.java:48)
at jdk.compiler.interim/com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:96)
at jdk.compiler.interim/com.sun.source.util.TreeScanner.scan(TreeScanner.java:111)
at jdk.compiler.interim/com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:119)
at jdk.compiler.interim/com.sun.source.util.TreeScanner.visitClass(TreeScanner.java:203)
at com.google.errorprone.scanner.ErrorProneScanner.visitClass(ErrorProneScanner.java:549)
at com.google.errorprone.scanner.ErrorProneScanner.visitClass(ErrorProneScanner.java:151)
at jdk.compiler.interim/com.sun.tools.javac.tree.JCTree$JCClassDecl.accept(JCTree.java:860)
at jdk.compiler.interim/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:86)
at com.google.errorprone.scanner.Scanner.scan(Scanner.java:74)
at com.google.errorprone.scanner.Scanner.scan(Scanner.java:48)
at jdk.compiler.interim/com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:96)
at jdk.compiler.interim/com.sun.source.util.TreeScanner.scan(TreeScanner.java:111)
at jdk.compiler.interim/com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:119)
at jdk.compiler.interim/com.sun.source.util.TreeScanner.visitClass(TreeScanner.java:203)
at com.google.errorprone.scanner.ErrorProneScanner.visitClass(ErrorProneScanner.java:549)
at com.google.errorprone.scanner.ErrorProneScanner.visitClass(ErrorProneScanner.java:151)
at jdk.compiler.interim/com.sun.tools.javac.tree.JCTree$JCClassDecl.accept(JCTree.java:860)
at jdk.compiler.interim/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:86)
at com.google.errorprone.scanner.Scanner.scan(Scanner.java:74)
at com.google.errorprone.scanner.Scanner.scan(Scanner.java:48)
at jdk.compiler.interim/com.sun.source.util.TreeScanner.scan(TreeScanner.java:111)
at jdk.compiler.interim/com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:119)
at jdk.compiler.interim/com.sun.source.util.TreeScanner.visitCompilationUnit(TreeScanner.java:152)
at com.google.errorprone.scanner.ErrorProneScanner.visitCompilationUnit(ErrorProneScanner.java:561)
at com.google.errorprone.scanner.ErrorProneScanner.visitCompilationUnit(ErrorProneScanner.java:151)
at jdk.compiler.interim/com.sun.tools.javac.tree.JCTree$JCCompilationUnit.accept(JCTree.java:614)
at jdk.compiler.interim/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:60)
at com.google.errorprone.scanner.Scanner.scan(Scanner.java:58)
at com.google.errorprone.scanner.ErrorProneScannerTransformer.apply(ErrorProneScannerTransformer.java:43)
at com.google.errorprone.ErrorProneAnalyzer.finished(ErrorProneAnalyzer.java:152)
at jdk.compiler.interim/com.sun.tools.javac.api.MultiTaskListener.finished(MultiTaskListener.java:132)
at jdk.compiler.interim/com.sun.tools.javac.main.JavaCompiler.flow(JavaCompiler.java:1394)
at jdk.compiler.interim/com.sun.tools.javac.main.JavaCompiler.flow(JavaCompiler.java:1341)
at jdk.compiler.interim/com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:933)
at jdk.compiler.interim/com.sun.tools.javac.main.Main.compile(Main.java:317)
at jdk.compiler.interim/com.sun.tools.javac.main.Main.compile(Main.java:176)
at jdk.compiler.interim/com.sun.tools.javac.Main.compile(Main.java:64)
at jdk.compiler.interim/com.sun.tools.javac.Main.main(Main.java:50)
Caused by: java.lang.NullPointerException: Cannot invoke "java.util.List.iterator()" because the return value of "com.sun.source.tree.CaseTree.getStatements()" is null
at org.checkerframework.errorprone.dataflow.cfg.builder.CFGTranslationPhaseOne$SwitchBuilder.buildCase(CFGTranslationPhaseOne.java:2190)
at org.checkerframework.errorprone.dataflow.cfg.builder.CFGTranslationPhaseOne$SwitchBuilder.build(CFGTranslationPhaseOne.java:2156)
at org.checkerframework.errorprone.dataflow.cfg.builder.CFGTranslationPhaseOne.visitSwitch(CFGTranslationPhaseOne.java:2086)
at org.checkerframework.errorprone.dataflow.cfg.builder.CFGTranslationPhaseOne.visitSwitch(CFGTranslationPhaseOne.java:198)
at jdk.compiler.interim/com.sun.tools.javac.tree.JCTree$JCSwitch.accept(JCTree.java:1304)
at jdk.compiler.interim/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:86)
at org.checkerframework.errorprone.dataflow.cfg.builder.CFGTranslationPhaseOne.visitBlock(CFGTranslationPhaseOne.java:2062)
at org.checkerframework.errorprone.dataflow.cfg.builder.CFGTranslationPhaseOne.visitBlock(CFGTranslationPhaseOne.java:198)
at jdk.compiler.interim/com.sun.tools.javac.tree.JCTree$JCBlock.accept(JCTree.java:1103)
at jdk.compiler.interim/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:86)
at org.checkerframework.errorprone.dataflow.cfg.builder.CFGTranslationPhaseOne$SwitchBuilder.buildCase(CFGTranslationPhaseOne.java:2191)
at org.checkerframework.errorprone.dataflow.cfg.builder.CFGTranslationPhaseOne$SwitchBuilder.build(CFGTranslationPhaseOne.java:2156)
at org.checkerframework.errorprone.dataflow.cfg.builder.CFGTranslationPhaseOne.visitSwitch(CFGTranslationPhaseOne.java:2086)
at org.checkerframework.errorprone.dataflow.cfg.builder.CFGTranslationPhaseOne.visitSwitch(CFGTranslationPhaseOne.java:198)
at jdk.compiler.interim/com.sun.tools.javac.tree.JCTree$JCSwitch.accept(JCTree.java:1304)
at jdk.compiler.interim/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:86)
at org.checkerframework.errorprone.dataflow.cfg.builder.CFGTranslationPhaseOne.visitBlock(CFGTranslationPhaseOne.java:2062)
at org.checkerframework.errorprone.dataflow.cfg.builder.CFGTranslationPhaseOne.visitBlock(CFGTranslationPhaseOne.java:198)
at jdk.compiler.interim/com.sun.tools.javac.tree.JCTree$JCBlock.accept(JCTree.java:1103)
at jdk.compiler.interim/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:60)
at org.checkerframework.errorprone.dataflow.cfg.builder.CFGTranslationPhaseOne.process(CFGTranslationPhaseOne.java:428)
at org.checkerframework.errorprone.dataflow.cfg.builder.CFGTranslationPhaseOne.process(CFGTranslationPhaseOne.java:467)
at org.checkerframework.errorprone.dataflow.cfg.builder.CFGBuilder.build(CFGBuilder.java:70)
at com.google.errorprone.dataflow.DataFlow$2.load(DataFlow.java:127)
at com.google.errorprone.dataflow.DataFlow$2.load(DataFlow.java:95)
at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3529)
at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2278)
at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2155)
at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2045)
... 122 more
The text was updated successfully, but these errors were encountered:
Hi again,
after disabling FallThrough to workaround #2638, I get another NPE now from ReferenceEquality while handling the same java/util/Formatter.java class:
The text was updated successfully, but these errors were encountered: