langtools/src/share/classes/com/sun/tools/javac/code/Types.java
changeset 9721 da048be191c2
parent 9607 94b7adcaccad
child 9812 f716e42cb230
equal deleted inserted replaced
9720:bc06a797f393 9721:da048be191c2
   953             return true;
   953             return true;
   954 
   954 
   955         if (t.isPrimitive() != s.isPrimitive())
   955         if (t.isPrimitive() != s.isPrimitive())
   956             return allowBoxing && (
   956             return allowBoxing && (
   957                     isConvertible(t, s, warn)
   957                     isConvertible(t, s, warn)
   958                     || (allowObjectToPrimitiveCast && isConvertible(s, t, warn)));
   958                     || (allowObjectToPrimitiveCast &&
       
   959                         s.isPrimitive() &&
       
   960                         isSubtype(boxedClass(s).type, t)));
   959         if (warn != warnStack.head) {
   961         if (warn != warnStack.head) {
   960             try {
   962             try {
   961                 warnStack = warnStack.prepend(warn);
   963                 warnStack = warnStack.prepend(warn);
   962                 checkUnsafeVarargsConversion(t, s, warn);
   964                 checkUnsafeVarargsConversion(t, s, warn);
   963                 return isCastable.visit(t,s);
   965                 return isCastable.visit(t,s);