tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(13,11): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(14,11): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(15,11): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(16,11): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(17,15): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(18,15): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(19,15): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(20,17): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(23,11): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(24,11): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(25,11): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(26,11): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(27,15): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(28,15): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(29,15): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(30,17): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(33,11): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(34,11): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(35,11): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(36,11): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(37,15): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(38,15): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(39,15): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(40,17): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(43,11): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(44,11): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(45,11): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(46,11): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(47,15): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(48,15): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(49,15): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(50,17): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(53,11): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(54,11): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(55,11): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(56,11): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(57,16): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(58,16): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(59,16): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(60,18): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(63,11): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(64,11): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(65,11): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(66,11): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(67,16): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(68,16): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(69,16): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(70,18): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(73,11): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(74,11): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(75,11): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(76,11): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(77,17): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(78,17): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(79,17): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(80,19): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(83,11): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(84,11): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(85,11): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(86,11): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(87,15): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(88,15): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(89,15): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(90,17): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(93,11): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(94,11): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(95,11): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(96,11): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(97,15): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(98,15): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(99,15): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(100,17): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(103,11): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(104,11): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(105,11): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(106,11): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(107,15): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(108,15): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(109,15): error TS18050: The value 'null' cannot be used here.
tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts(110,17): error TS18050: The value 'null' cannot be used here.


==== tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithNullValueAndValidOperands.ts (80 errors) ====
    // If one operand is the null or undefined value, it is treated as having the type of the
    // other operand.
    
    enum E {
        a,
        b
    }
    
    var a: any;
    var b: number;
    
    // operator *
    var ra1 = null * a;
              ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var ra2 = null * b;
              ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var ra3 = null * 1;
              ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var ra4 = null * E.a;
              ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var ra5 = a * null;
                  ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var ra6 = b * null;
                  ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var ra7 = 0 * null;
                  ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var ra8 = E.b * null;
                    ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    
    // operator /
    var rb1 = null / a;
              ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rb2 = null / b;
              ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rb3 = null / 1;
              ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rb4 = null / E.a;
              ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rb5 = a / null;
                  ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rb6 = b / null;
                  ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rb7 = 0 / null;
                  ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rb8 = E.b / null;
                    ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    
    // operator %
    var rc1 = null % a;
              ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rc2 = null % b;
              ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rc3 = null % 1;
              ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rc4 = null % E.a;
              ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rc5 = a % null;
                  ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rc6 = b % null;
                  ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rc7 = 0 % null;
                  ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rc8 = E.b % null;
                    ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    
    // operator -
    var rd1 = null - a;
              ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rd2 = null - b;
              ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rd3 = null - 1;
              ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rd4 = null - E.a;
              ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rd5 = a - null;
                  ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rd6 = b - null;
                  ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rd7 = 0 - null;
                  ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rd8 = E.b - null;
                    ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    
    // operator <<
    var re1 = null << a;
              ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var re2 = null << b;
              ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var re3 = null << 1;
              ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var re4 = null << E.a;
              ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var re5 = a << null;
                   ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var re6 = b << null;
                   ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var re7 = 0 << null;
                   ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var re8 = E.b << null;
                     ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    
    // operator >>
    var rf1 = null >> a;
              ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rf2 = null >> b;
              ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rf3 = null >> 1;
              ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rf4 = null >> E.a;
              ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rf5 = a >> null;
                   ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rf6 = b >> null;
                   ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rf7 = 0 >> null;
                   ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rf8 = E.b >> null;
                     ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    
    // operator >>>
    var rg1 = null >>> a;
              ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rg2 = null >>> b;
              ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rg3 = null >>> 1;
              ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rg4 = null >>> E.a;
              ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rg5 = a >>> null;
                    ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rg6 = b >>> null;
                    ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rg7 = 0 >>> null;
                    ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rg8 = E.b >>> null;
                      ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    
    // operator &
    var rh1 = null & a;
              ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rh2 = null & b;
              ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rh3 = null & 1;
              ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rh4 = null & E.a;
              ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rh5 = a & null;
                  ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rh6 = b & null;
                  ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rh7 = 0 & null;
                  ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rh8 = E.b & null;
                    ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    
    // operator ^
    var ri1 = null ^ a;
              ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var ri2 = null ^ b;
              ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var ri3 = null ^ 1;
              ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var ri4 = null ^ E.a;
              ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var ri5 = a ^ null;
                  ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var ri6 = b ^ null;
                  ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var ri7 = 0 ^ null;
                  ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var ri8 = E.b ^ null;
                    ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    
    // operator |
    var rj1 = null | a;
              ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rj2 = null | b;
              ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rj3 = null | 1;
              ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rj4 = null | E.a;
              ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rj5 = a | null;
                  ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rj6 = b | null;
                  ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rj7 = 0 | null;
                  ~~~~
!!! error TS18050: The value 'null' cannot be used here.
    var rj8 = E.b | null;
                    ~~~~
!!! error TS18050: The value 'null' cannot be used here.