nashorn/src/jdk/nashorn/internal/codegen/Attr.java
changeset 16235 cc200fdc3478
parent 16233 95d3e01c04c3
child 16262 75513555e603
equal deleted inserted replaced
16234:86cb162cec6c 16235:cc200fdc3478
   540                     if (lit.isNumeric() && !(lit.getValue() instanceof Integer)) {
   540                     if (lit.isNumeric() && !(lit.getValue() instanceof Integer)) {
   541                         if (JSType.isRepresentableAsInt(lit.getNumber())) {
   541                         if (JSType.isRepresentableAsInt(lit.getNumber())) {
   542                             caseNode.setTest(LiteralNode.newInstance(lit, lit.getInt32()).accept(this));
   542                             caseNode.setTest(LiteralNode.newInstance(lit, lit.getInt32()).accept(this));
   543                         }
   543                         }
   544                     }
   544                     }
       
   545                 } else {
       
   546                     // the "all integer" case that CodeGenerator optimizes for currently assumes literals only
       
   547                     type = Type.OBJECT;
       
   548                     break;
   545                 }
   549                 }
   546 
   550 
   547                 type = Type.widest(type, caseNode.getTest().getType());
   551                 type = Type.widest(type, caseNode.getTest().getType());
   548             }
   552             }
   549         }
   553         }