Skip to content

Lombok breaks NestedInstanceOfConditions and InstanceOfAndCastMatchWrongType #690

@davidmontoyago

Description

@davidmontoyago

Apache Maven 3.5.0 (ff8f5e7444045639af65f6095c62210b5713f426; 2017-04-03T15:39:06-04:00)
Java version: 1.8.0_131, vendor: Oracle Corporation
Lombok version: 1.16.16

java.lang.NullPointerException
        at lombok.javac.apt.LombokFileObjects.createEmpty(LombokFileObjects.java:123)
        at lombok.javac.apt.InterceptingJavaFileManager.getJavaFileForOutput(InterceptingJavaFileManager.java:47)
        at com.sun.tools.javac.processing.JavacFiler.createSourceOrClassFile(JavacFiler.java:478)
        at com.sun.tools.javac.processing.JavacFiler.createSourceFile(JavacFiler.java:417)
        at lombok.javac.apt.LombokProcessor.forceNewRound(LombokProcessor.java:333)
        at lombok.javac.apt.LombokProcessor.process(LombokProcessor.java:322)
        at lombok.core.AnnotationProcessor$JavacDescriptor.process(AnnotationProcessor.java:114)
        at lombok.core.AnnotationProcessor.process(AnnotationProcessor.java:164)
        at lombok.launch.AnnotationProcessorHider$AnnotationProcessor.process(AnnotationProcessor.java:74)
        at com.sun.tools.javac.processing.JavacProcessingEnvironment.callProcessor(JavacProcessingEnvironment.java:968)
        at com.sun.tools.javac.processing.JavacProcessingEnvironment.discoverAndRunProcs(JavacProcessingEnvironment.java:884)
        at com.sun.tools.javac.processing.JavacProcessingEnvironment.access$2200(JavacProcessingEnvironment.java:108)
        at com.sun.tools.javac.processing.JavacProcessingEnvironment$Round.run(JavacProcessingEnvironment.java:1204)
        at com.sun.tools.javac.processing.JavacProcessingEnvironment.doProcessing(JavacProcessingEnvironment.java:1313)
        at com.sun.tools.javac.main.JavaCompiler.processAnnotations(JavaCompiler.java:1267)
        at com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:943)
        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 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:825)
        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:208)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:154)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:146)
        at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:117)
        at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:81)
        at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51)
        at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:309)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:194)
        at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:107)
        at org.apache.maven.cli.MavenCli.execute(MavenCli.java:993)
        at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:345)
        at org.apache.maven.cli.MavenCli.main(MavenCli.java:191)
        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.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
        at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
        at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
        at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
error-prone version: 2.0.21                                                                                                                                                 
Stack Trace:                                                                                                                                                                
java.lang.ClassCastException: com.sun.tools.javac.tree.JCTree$JCBinary cannot be cast to com.sun.source.tree.ParenthesizedTree                                              
   at com.google.errorprone.bugpatterns.NestedInstanceOfConditions.matchIf(NestedInstanceOfConditions.java:53)                                                              
   at com.google.errorprone.scanner.ErrorProneScanner.visitIf(ErrorProneScanner.java:752)                                                                                   
   at com.google.errorprone.scanner.ErrorProneScanner.visitIf(ErrorProneScanner.java:146)                                                                                   
   at com.sun.tools.javac.tree.JCTree$JCIf.accept(JCTree.java:1427)                                                                                                         
   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.visitBlock(TreeScanner.java:248)                                                                                                      
   at com.google.errorprone.scanner.ErrorProneScanner.visitBlock(ErrorProneScanner.java:530)                                                                                
   at com.google.errorprone.scanner.ErrorProneScanner.visitBlock(ErrorProneScanner.java:146)                                                                                
   at com.sun.tools.javac.tree.JCTree$JCBlock.accept(JCTree.java:1026)                                                                                                      
   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.visitMethod(TreeScanner.java:206)                                                                                                     
   at com.google.errorprone.scanner.ErrorProneScanner.visitMethod(ErrorProneScanner.java:898)                                                                               
   at com.google.errorprone.scanner.ErrorProneScanner.visitMethod(ErrorProneScanner.java:146)                                                                               
   at com.sun.tools.javac.tree.JCTree$JCMethodDecl.accept(JCTree.java:898)                                                                                                  
   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 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:825)                                                                          
   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:208)                                                                                       
   at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:154)                                                                                       
   at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:146)                                                                                       
   at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:117)                                                              
   at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:81)                                                               
   at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51)                                                 
   at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128)                                                                               
   at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:309)                                                                                                        
   at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:194)                                                                                                        
   at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:107)                                                                                                          
   at org.apache.maven.cli.MavenCli.execute(MavenCli.java:993)                                                                                                              
   at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:345)                                                                                                               
   at org.apache.maven.cli.MavenCli.main(MavenCli.java:191)                                                                                                                 
   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.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)                                                                                   
   at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)                                                                                           
   at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)                                                                                 
   at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)                                                                                             

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions