Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8139242

compiler crashes with exception on bitwise operations of different size privitive numeric types

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Duplicate
    • Icon: P1 P1
    • None
    • 9.1
    • tools
    • None

      Code:

      $ cat CompilerException.java
      public class CompilerException {
          public static void main(String... args) {
              byte b = (byte)0;
              float f = 0.f;
              long a = b & f;
          }
      }

      Javac version - latest downloaded:

      $ javac -version
      javac 1.9.0-ea

      Actual compilation result:

      $ javac CompilerException.java
      An exception has occurred in the compiler (1.9.0-ea). Please file a bug at the Java Bug Database (http://bugreport.java.com/bugreport/) after checking the database for duplicates. Include your program and the following diagnostic in your report. Thank you.
      java.lang.NullPointerException
      at com.sun.tools.javac.comp.TransTypes.visitBinary(TransTypes.java:753)
      at com.sun.tools.javac.tree.JCTree$JCBinary.accept(JCTree.java:1945)
      at com.sun.tools.javac.tree.TreeTranslator.translate(TreeTranslator.java:58)
      at com.sun.tools.javac.comp.TransTypes.translate(TransTypes.java:488)
      at com.sun.tools.javac.comp.TransTypes.visitVarDef(TransTypes.java:544)
      at com.sun.tools.javac.tree.JCTree$JCVariableDecl.accept(JCTree.java:920)
      at com.sun.tools.javac.tree.TreeTranslator.translate(TreeTranslator.java:58)
      at com.sun.tools.javac.tree.TreeTranslator.translate(TreeTranslator.java:70)
      at com.sun.tools.javac.tree.TreeTranslator.visitBlock(TreeTranslator.java:167)
      at com.sun.tools.javac.tree.JCTree$JCBlock.accept(JCTree.java:984)
      at com.sun.tools.javac.tree.TreeTranslator.translate(TreeTranslator.java:58)
      at com.sun.tools.javac.comp.TransTypes.translate(TransTypes.java:488)
      at com.sun.tools.javac.comp.TransTypes.visitMethodDef(TransTypes.java:523)
      at com.sun.tools.javac.tree.JCTree$JCMethodDecl.accept(JCTree.java:836)
      at com.sun.tools.javac.tree.TreeTranslator.translate(TreeTranslator.java:58)
      at com.sun.tools.javac.tree.TreeTranslator.translate(TreeTranslator.java:70)
      at com.sun.tools.javac.tree.TreeTranslator.visitClassDef(TreeTranslator.java:139)
      at com.sun.tools.javac.comp.TransTypes.translateClass(TransTypes.java:947)
      at com.sun.tools.javac.comp.TransTypes.visitClassDef(TransTypes.java:509)
      at com.sun.tools.javac.tree.JCTree$JCClassDecl.accept(JCTree.java:744)
      at com.sun.tools.javac.tree.TreeTranslator.translate(TreeTranslator.java:58)
      at com.sun.tools.javac.comp.TransTypes.translate(TransTypes.java:488)
      at com.sun.tools.javac.comp.TransTypes.translateTopLevelClass(TransTypes.java:971)
      at com.sun.tools.javac.main.JavaCompiler.desugar(JavaCompiler.java:1455)
      at com.sun.tools.javac.main.JavaCompiler.desugar(JavaCompiler.java:1326)
      at com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:871)
      at com.sun.tools.javac.main.Main.compile(Main.java:254)
      at com.sun.tools.javac.main.Main.compile(Main.java:142)
      at com.sun.tools.javac.Main.compile(Main.java:56)
      at com.sun.tools.javac.Main.main(Main.java:42)

      Expected result:

      Have compiler.err.operator.cant.be.applied.1 error.

            Unassigned Unassigned
            spikalev Sergei Pikalev (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: