diff -r 07755ae06bc9 src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/ir/BinaryNode.java
--- a/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/ir/BinaryNode.java	Mon Nov 03 14:59:34 2014 +0100
+++ b/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/ir/BinaryNode.java	Tue Nov 04 13:37:31 2014 +0100
@@ -264,6 +264,10 @@
         case COMMARIGHT: {
             return rhs.getType(localVariableTypes);
         }
+        case AND:
+        case OR: {
+            return Type.widestReturnType(lhs.getType(localVariableTypes), rhs.getType(localVariableTypes));
+        }
         default:
             if (isComparison()) {
                 return Type.BOOLEAN;

