Fixing tests and baselines
This commit is contained in:
parent
8286b67c09
commit
15c5c77704
|
@ -7,16 +7,16 @@ enum ENUM1 { A, B, "" };
|
|||
var ResultIsNumber1 = ~ENUM1;
|
||||
|
||||
// enum type expressions
|
||||
var ResultIsNumber2 = ~ENUM1[1];
|
||||
var ResultIsNumber3 = ~(ENUM1[1] + ENUM1[2]);
|
||||
var ResultIsNumber2 = ~ENUM1["A"];
|
||||
var ResultIsNumber3 = ~(ENUM1.A + ENUM1["B"]);
|
||||
|
||||
// multiple ~ operators
|
||||
var ResultIsNumber4 = ~~~(ENUM1[1] + ENUM1[2]);
|
||||
var ResultIsNumber4 = ~~~(ENUM1["A"] + ENUM1.B);
|
||||
|
||||
// miss assignment operators
|
||||
~ENUM1;
|
||||
~ENUM1[1];
|
||||
~ENUM1[1], ~ENUM1[2];
|
||||
~ENUM1["A"];
|
||||
~ENUM1.A, ~ENUM1["B"];
|
||||
|
||||
//// [bitwiseNotOperatorWithEnumType.js]
|
||||
// ~ operator on enum type
|
||||
|
@ -30,11 +30,11 @@ var ENUM1;
|
|||
// enum type var
|
||||
var ResultIsNumber1 = ~ENUM1;
|
||||
// enum type expressions
|
||||
var ResultIsNumber2 = ~ENUM1[1];
|
||||
var ResultIsNumber3 = ~(ENUM1[1] + ENUM1[2]);
|
||||
var ResultIsNumber2 = ~ENUM1["A"];
|
||||
var ResultIsNumber3 = ~(0 /* A */ + ENUM1["B"]);
|
||||
// multiple ~ operators
|
||||
var ResultIsNumber4 = ~~~(ENUM1[1] + ENUM1[2]);
|
||||
var ResultIsNumber4 = ~~~(ENUM1["A"] + 1 /* B */);
|
||||
// miss assignment operators
|
||||
~ENUM1;
|
||||
~ENUM1[1];
|
||||
~ENUM1[1], ~ENUM1[2];
|
||||
~ENUM1["A"];
|
||||
~0 /* A */, ~ENUM1["B"];
|
||||
|
|
|
@ -13,51 +13,54 @@ var ResultIsNumber1 = ~ENUM1;
|
|||
>ENUM1 : typeof ENUM1
|
||||
|
||||
// enum type expressions
|
||||
var ResultIsNumber2 = ~ENUM1[1];
|
||||
var ResultIsNumber2 = ~ENUM1["A"];
|
||||
>ResultIsNumber2 : number
|
||||
>~ENUM1[1] : number
|
||||
>ENUM1[1] : string
|
||||
>~ENUM1["A"] : number
|
||||
>ENUM1["A"] : ENUM1
|
||||
>ENUM1 : typeof ENUM1
|
||||
|
||||
var ResultIsNumber3 = ~(ENUM1[1] + ENUM1[2]);
|
||||
var ResultIsNumber3 = ~(ENUM1.A + ENUM1["B"]);
|
||||
>ResultIsNumber3 : number
|
||||
>~(ENUM1[1] + ENUM1[2]) : number
|
||||
>(ENUM1[1] + ENUM1[2]) : string
|
||||
>ENUM1[1] + ENUM1[2] : string
|
||||
>ENUM1[1] : string
|
||||
>~(ENUM1.A + ENUM1["B"]) : number
|
||||
>(ENUM1.A + ENUM1["B"]) : number
|
||||
>ENUM1.A + ENUM1["B"] : number
|
||||
>ENUM1.A : ENUM1
|
||||
>ENUM1 : typeof ENUM1
|
||||
>ENUM1[2] : string
|
||||
>A : ENUM1
|
||||
>ENUM1["B"] : ENUM1
|
||||
>ENUM1 : typeof ENUM1
|
||||
|
||||
// multiple ~ operators
|
||||
var ResultIsNumber4 = ~~~(ENUM1[1] + ENUM1[2]);
|
||||
var ResultIsNumber4 = ~~~(ENUM1["A"] + ENUM1.B);
|
||||
>ResultIsNumber4 : number
|
||||
>~~~(ENUM1[1] + ENUM1[2]) : number
|
||||
>~~(ENUM1[1] + ENUM1[2]) : number
|
||||
>~(ENUM1[1] + ENUM1[2]) : number
|
||||
>(ENUM1[1] + ENUM1[2]) : string
|
||||
>ENUM1[1] + ENUM1[2] : string
|
||||
>ENUM1[1] : string
|
||||
>~~~(ENUM1["A"] + ENUM1.B) : number
|
||||
>~~(ENUM1["A"] + ENUM1.B) : number
|
||||
>~(ENUM1["A"] + ENUM1.B) : number
|
||||
>(ENUM1["A"] + ENUM1.B) : number
|
||||
>ENUM1["A"] + ENUM1.B : number
|
||||
>ENUM1["A"] : ENUM1
|
||||
>ENUM1 : typeof ENUM1
|
||||
>ENUM1[2] : string
|
||||
>ENUM1.B : ENUM1
|
||||
>ENUM1 : typeof ENUM1
|
||||
>B : ENUM1
|
||||
|
||||
// miss assignment operators
|
||||
~ENUM1;
|
||||
>~ENUM1 : number
|
||||
>ENUM1 : typeof ENUM1
|
||||
|
||||
~ENUM1[1];
|
||||
>~ENUM1[1] : number
|
||||
>ENUM1[1] : string
|
||||
~ENUM1["A"];
|
||||
>~ENUM1["A"] : number
|
||||
>ENUM1["A"] : ENUM1
|
||||
>ENUM1 : typeof ENUM1
|
||||
|
||||
~ENUM1[1], ~ENUM1[2];
|
||||
>~ENUM1[1], ~ENUM1[2] : number
|
||||
>~ENUM1[1] : number
|
||||
>ENUM1[1] : string
|
||||
~ENUM1.A, ~ENUM1["B"];
|
||||
>~ENUM1.A, ~ENUM1["B"] : number
|
||||
>~ENUM1.A : number
|
||||
>ENUM1.A : ENUM1
|
||||
>ENUM1 : typeof ENUM1
|
||||
>~ENUM1[2] : number
|
||||
>ENUM1[2] : string
|
||||
>A : ENUM1
|
||||
>~ENUM1["B"] : number
|
||||
>ENUM1["B"] : ENUM1
|
||||
>ENUM1 : typeof ENUM1
|
||||
|
||||
|
|
|
@ -1,27 +1,24 @@
|
|||
tests/cases/conformance/expressions/unaryOperators/decrementOperator/decrementOperatorWithEnumType.ts(6,25): error TS2356: An arithmetic operand must be of type 'any', 'number' or an enum type.
|
||||
tests/cases/conformance/expressions/unaryOperators/decrementOperator/decrementOperatorWithEnumType.ts(7,23): error TS2356: An arithmetic operand must be of type 'any', 'number' or an enum type.
|
||||
tests/cases/conformance/expressions/unaryOperators/decrementOperator/decrementOperatorWithEnumType.ts(10,3): error TS2356: An arithmetic operand must be of type 'any', 'number' or an enum type.
|
||||
tests/cases/conformance/expressions/unaryOperators/decrementOperator/decrementOperatorWithEnumType.ts(7,23): error TS2357: The operand of an increment or decrement operator must be a variable, property or indexer.
|
||||
tests/cases/conformance/expressions/unaryOperators/decrementOperator/decrementOperatorWithEnumType.ts(12,1): error TS2356: An arithmetic operand must be of type 'any', 'number' or an enum type.
|
||||
tests/cases/conformance/expressions/unaryOperators/decrementOperator/decrementOperatorWithEnumType.ts(12,7): error TS2304: Cannot find name 'A'.
|
||||
|
||||
|
||||
==== tests/cases/conformance/expressions/unaryOperators/decrementOperator/decrementOperatorWithEnumType.ts (4 errors) ====
|
||||
==== tests/cases/conformance/expressions/unaryOperators/decrementOperator/decrementOperatorWithEnumType.ts (3 errors) ====
|
||||
// -- operator on enum type
|
||||
|
||||
enum ENUM1 { A, B, "" };
|
||||
|
||||
// expression
|
||||
var ResultIsNumber1 = --ENUM1[1];
|
||||
~~~~~~~~
|
||||
!!! error TS2356: An arithmetic operand must be of type 'any', 'number' or an enum type.
|
||||
var ResultIsNumber2 = ENUM1[1]--;
|
||||
~~~~~~~~
|
||||
!!! error TS2356: An arithmetic operand must be of type 'any', 'number' or an enum type.
|
||||
var ResultIsNumber1 = --ENUM1["A"];
|
||||
var ResultIsNumber2 = ENUM1.A--;
|
||||
~~~~~~~
|
||||
!!! error TS2357: The operand of an increment or decrement operator must be a variable, property or indexer.
|
||||
|
||||
// miss assignment operator
|
||||
--ENUM1[1];
|
||||
~~~~~~~~
|
||||
!!! error TS2356: An arithmetic operand must be of type 'any', 'number' or an enum type.
|
||||
--ENUM1["A"];
|
||||
|
||||
ENUM1[1]--;
|
||||
ENUM1[A]--;
|
||||
~~~~~~~~
|
||||
!!! error TS2356: An arithmetic operand must be of type 'any', 'number' or an enum type.
|
||||
!!! error TS2356: An arithmetic operand must be of type 'any', 'number' or an enum type.
|
||||
~
|
||||
!!! error TS2304: Cannot find name 'A'.
|
|
@ -4,13 +4,13 @@
|
|||
enum ENUM1 { A, B, "" };
|
||||
|
||||
// expression
|
||||
var ResultIsNumber1 = --ENUM1[1];
|
||||
var ResultIsNumber2 = ENUM1[1]--;
|
||||
var ResultIsNumber1 = --ENUM1["A"];
|
||||
var ResultIsNumber2 = ENUM1.A--;
|
||||
|
||||
// miss assignment operator
|
||||
--ENUM1[1];
|
||||
--ENUM1["A"];
|
||||
|
||||
ENUM1[1]--;
|
||||
ENUM1[A]--;
|
||||
|
||||
//// [decrementOperatorWithEnumType.js]
|
||||
// -- operator on enum type
|
||||
|
@ -22,8 +22,8 @@ var ENUM1;
|
|||
})(ENUM1 || (ENUM1 = {}));
|
||||
;
|
||||
// expression
|
||||
var ResultIsNumber1 = --ENUM1[1];
|
||||
var ResultIsNumber2 = ENUM1[1]--;
|
||||
var ResultIsNumber1 = --ENUM1["A"];
|
||||
var ResultIsNumber2 = 0 /* A */--;
|
||||
// miss assignment operator
|
||||
--ENUM1[1];
|
||||
ENUM1[1]--;
|
||||
--ENUM1["A"];
|
||||
ENUM1[A]--;
|
||||
|
|
|
@ -2,15 +2,17 @@ tests/cases/conformance/expressions/unaryOperators/decrementOperator/decrementOp
|
|||
tests/cases/conformance/expressions/unaryOperators/decrementOperator/decrementOperatorWithEnumTypeInvalidOperations.ts(8,25): error TS2356: An arithmetic operand must be of type 'any', 'number' or an enum type.
|
||||
tests/cases/conformance/expressions/unaryOperators/decrementOperator/decrementOperatorWithEnumTypeInvalidOperations.ts(10,23): error TS2356: An arithmetic operand must be of type 'any', 'number' or an enum type.
|
||||
tests/cases/conformance/expressions/unaryOperators/decrementOperator/decrementOperatorWithEnumTypeInvalidOperations.ts(11,23): error TS2356: An arithmetic operand must be of type 'any', 'number' or an enum type.
|
||||
tests/cases/conformance/expressions/unaryOperators/decrementOperator/decrementOperatorWithEnumTypeInvalidOperations.ts(14,25): error TS2356: An arithmetic operand must be of type 'any', 'number' or an enum type.
|
||||
tests/cases/conformance/expressions/unaryOperators/decrementOperator/decrementOperatorWithEnumTypeInvalidOperations.ts(15,23): error TS2356: An arithmetic operand must be of type 'any', 'number' or an enum type.
|
||||
tests/cases/conformance/expressions/unaryOperators/decrementOperator/decrementOperatorWithEnumTypeInvalidOperations.ts(14,25): error TS2357: The operand of an increment or decrement operator must be a variable, property or indexer.
|
||||
tests/cases/conformance/expressions/unaryOperators/decrementOperator/decrementOperatorWithEnumTypeInvalidOperations.ts(14,43): error TS2339: Property 'B' does not exist on type 'typeof ENUM'.
|
||||
tests/cases/conformance/expressions/unaryOperators/decrementOperator/decrementOperatorWithEnumTypeInvalidOperations.ts(15,23): error TS2357: The operand of an increment or decrement operator must be a variable, property or indexer.
|
||||
tests/cases/conformance/expressions/unaryOperators/decrementOperator/decrementOperatorWithEnumTypeInvalidOperations.ts(15,29): error TS2339: Property 'A' does not exist on type 'typeof ENUM'.
|
||||
tests/cases/conformance/expressions/unaryOperators/decrementOperator/decrementOperatorWithEnumTypeInvalidOperations.ts(18,3): error TS2356: An arithmetic operand must be of type 'any', 'number' or an enum type.
|
||||
tests/cases/conformance/expressions/unaryOperators/decrementOperator/decrementOperatorWithEnumTypeInvalidOperations.ts(19,3): error TS2356: An arithmetic operand must be of type 'any', 'number' or an enum type.
|
||||
tests/cases/conformance/expressions/unaryOperators/decrementOperator/decrementOperatorWithEnumTypeInvalidOperations.ts(21,1): error TS2356: An arithmetic operand must be of type 'any', 'number' or an enum type.
|
||||
tests/cases/conformance/expressions/unaryOperators/decrementOperator/decrementOperatorWithEnumTypeInvalidOperations.ts(22,1): error TS2356: An arithmetic operand must be of type 'any', 'number' or an enum type.
|
||||
|
||||
|
||||
==== tests/cases/conformance/expressions/unaryOperators/decrementOperator/decrementOperatorWithEnumTypeInvalidOperations.ts (10 errors) ====
|
||||
==== tests/cases/conformance/expressions/unaryOperators/decrementOperator/decrementOperatorWithEnumTypeInvalidOperations.ts (12 errors) ====
|
||||
// -- operator on enum type
|
||||
|
||||
enum ENUM { };
|
||||
|
@ -32,12 +34,16 @@ tests/cases/conformance/expressions/unaryOperators/decrementOperator/decrementOp
|
|||
!!! error TS2356: An arithmetic operand must be of type 'any', 'number' or an enum type.
|
||||
|
||||
// enum type expressions
|
||||
var ResultIsNumber5 = --(ENUM[1] + ENUM[2]);
|
||||
~~~~~~~~~~~~~~~~~~~
|
||||
!!! error TS2356: An arithmetic operand must be of type 'any', 'number' or an enum type.
|
||||
var ResultIsNumber6 = (ENUM[1] + ENUM[2])--;
|
||||
~~~~~~~~~~~~~~~~~~~
|
||||
!!! error TS2356: An arithmetic operand must be of type 'any', 'number' or an enum type.
|
||||
var ResultIsNumber5 = --(ENUM["A"] + ENUM.B);
|
||||
~~~~~~~~~~~~~~~~~~~~
|
||||
!!! error TS2357: The operand of an increment or decrement operator must be a variable, property or indexer.
|
||||
~
|
||||
!!! error TS2339: Property 'B' does not exist on type 'typeof ENUM'.
|
||||
var ResultIsNumber6 = (ENUM.A + ENUM["B"])--;
|
||||
~~~~~~~~~~~~~~~~~~~~
|
||||
!!! error TS2357: The operand of an increment or decrement operator must be a variable, property or indexer.
|
||||
~
|
||||
!!! error TS2339: Property 'A' does not exist on type 'typeof ENUM'.
|
||||
|
||||
// miss assignment operator
|
||||
--ENUM;
|
||||
|
|
|
@ -12,8 +12,8 @@ var ResultIsNumber3 = ENUM--;
|
|||
var ResultIsNumber4 = ENUM1--;
|
||||
|
||||
// enum type expressions
|
||||
var ResultIsNumber5 = --(ENUM[1] + ENUM[2]);
|
||||
var ResultIsNumber6 = (ENUM[1] + ENUM[2])--;
|
||||
var ResultIsNumber5 = --(ENUM["A"] + ENUM.B);
|
||||
var ResultIsNumber6 = (ENUM.A + ENUM["B"])--;
|
||||
|
||||
// miss assignment operator
|
||||
--ENUM;
|
||||
|
@ -41,8 +41,8 @@ var ResultIsNumber2 = --ENUM1;
|
|||
var ResultIsNumber3 = ENUM--;
|
||||
var ResultIsNumber4 = ENUM1--;
|
||||
// enum type expressions
|
||||
var ResultIsNumber5 = --(ENUM[1] + ENUM[2]);
|
||||
var ResultIsNumber6 = (ENUM[1] + ENUM[2])--;
|
||||
var ResultIsNumber5 = --(ENUM["A"] + ENUM.B);
|
||||
var ResultIsNumber6 = (ENUM.A + ENUM["B"])--;
|
||||
// miss assignment operator
|
||||
--ENUM;
|
||||
--ENUM1;
|
||||
|
|
|
@ -9,17 +9,17 @@ var ResultIsBoolean1 = delete ENUM;
|
|||
var ResultIsBoolean2 = delete ENUM1;
|
||||
|
||||
// enum type expressions
|
||||
var ResultIsBoolean3 = delete ENUM1[0];
|
||||
var ResultIsBoolean4 = delete (ENUM[0] + ENUM1[1]);
|
||||
var ResultIsBoolean3 = delete ENUM1["A"];
|
||||
var ResultIsBoolean4 = delete (ENUM[0] + ENUM1["B"]);
|
||||
|
||||
// multiple delete operators
|
||||
var ResultIsBoolean5 = delete delete ENUM;
|
||||
var ResultIsBoolean6 = delete delete delete (ENUM[0] + ENUM1[1]);
|
||||
var ResultIsBoolean6 = delete delete delete (ENUM[0] + ENUM1["B"]);
|
||||
|
||||
// miss assignment operators
|
||||
delete ENUM;
|
||||
delete ENUM1;
|
||||
delete ENUM1[1];
|
||||
delete ENUM1.B;
|
||||
delete ENUM, ENUM1;
|
||||
|
||||
//// [deleteOperatorWithEnumType.js]
|
||||
|
@ -39,13 +39,13 @@ var ENUM1;
|
|||
var ResultIsBoolean1 = delete ENUM;
|
||||
var ResultIsBoolean2 = delete ENUM1;
|
||||
// enum type expressions
|
||||
var ResultIsBoolean3 = delete ENUM1[0];
|
||||
var ResultIsBoolean4 = delete (ENUM[0] + ENUM1[1]);
|
||||
var ResultIsBoolean3 = delete ENUM1["A"];
|
||||
var ResultIsBoolean4 = delete (ENUM[0] + ENUM1["B"]);
|
||||
// multiple delete operators
|
||||
var ResultIsBoolean5 = delete delete ENUM;
|
||||
var ResultIsBoolean6 = delete delete delete (ENUM[0] + ENUM1[1]);
|
||||
var ResultIsBoolean6 = delete delete delete (ENUM[0] + ENUM1["B"]);
|
||||
// miss assignment operators
|
||||
delete ENUM;
|
||||
delete ENUM1;
|
||||
delete ENUM1[1];
|
||||
delete 1 /* B */;
|
||||
delete ENUM, ENUM1;
|
||||
|
|
|
@ -21,20 +21,20 @@ var ResultIsBoolean2 = delete ENUM1;
|
|||
>ENUM1 : typeof ENUM1
|
||||
|
||||
// enum type expressions
|
||||
var ResultIsBoolean3 = delete ENUM1[0];
|
||||
var ResultIsBoolean3 = delete ENUM1["A"];
|
||||
>ResultIsBoolean3 : boolean
|
||||
>delete ENUM1[0] : boolean
|
||||
>ENUM1[0] : string
|
||||
>delete ENUM1["A"] : boolean
|
||||
>ENUM1["A"] : ENUM1
|
||||
>ENUM1 : typeof ENUM1
|
||||
|
||||
var ResultIsBoolean4 = delete (ENUM[0] + ENUM1[1]);
|
||||
var ResultIsBoolean4 = delete (ENUM[0] + ENUM1["B"]);
|
||||
>ResultIsBoolean4 : boolean
|
||||
>delete (ENUM[0] + ENUM1[1]) : boolean
|
||||
>(ENUM[0] + ENUM1[1]) : string
|
||||
>ENUM[0] + ENUM1[1] : string
|
||||
>delete (ENUM[0] + ENUM1["B"]) : boolean
|
||||
>(ENUM[0] + ENUM1["B"]) : string
|
||||
>ENUM[0] + ENUM1["B"] : string
|
||||
>ENUM[0] : string
|
||||
>ENUM : typeof ENUM
|
||||
>ENUM1[1] : string
|
||||
>ENUM1["B"] : ENUM1
|
||||
>ENUM1 : typeof ENUM1
|
||||
|
||||
// multiple delete operators
|
||||
|
@ -44,16 +44,16 @@ var ResultIsBoolean5 = delete delete ENUM;
|
|||
>delete ENUM : boolean
|
||||
>ENUM : typeof ENUM
|
||||
|
||||
var ResultIsBoolean6 = delete delete delete (ENUM[0] + ENUM1[1]);
|
||||
var ResultIsBoolean6 = delete delete delete (ENUM[0] + ENUM1["B"]);
|
||||
>ResultIsBoolean6 : boolean
|
||||
>delete delete delete (ENUM[0] + ENUM1[1]) : boolean
|
||||
>delete delete (ENUM[0] + ENUM1[1]) : boolean
|
||||
>delete (ENUM[0] + ENUM1[1]) : boolean
|
||||
>(ENUM[0] + ENUM1[1]) : string
|
||||
>ENUM[0] + ENUM1[1] : string
|
||||
>delete delete delete (ENUM[0] + ENUM1["B"]) : boolean
|
||||
>delete delete (ENUM[0] + ENUM1["B"]) : boolean
|
||||
>delete (ENUM[0] + ENUM1["B"]) : boolean
|
||||
>(ENUM[0] + ENUM1["B"]) : string
|
||||
>ENUM[0] + ENUM1["B"] : string
|
||||
>ENUM[0] : string
|
||||
>ENUM : typeof ENUM
|
||||
>ENUM1[1] : string
|
||||
>ENUM1["B"] : ENUM1
|
||||
>ENUM1 : typeof ENUM1
|
||||
|
||||
// miss assignment operators
|
||||
|
@ -65,10 +65,11 @@ delete ENUM1;
|
|||
>delete ENUM1 : boolean
|
||||
>ENUM1 : typeof ENUM1
|
||||
|
||||
delete ENUM1[1];
|
||||
>delete ENUM1[1] : boolean
|
||||
>ENUM1[1] : string
|
||||
delete ENUM1.B;
|
||||
>delete ENUM1.B : boolean
|
||||
>ENUM1.B : ENUM1
|
||||
>ENUM1 : typeof ENUM1
|
||||
>B : ENUM1
|
||||
|
||||
delete ENUM, ENUM1;
|
||||
>delete ENUM, ENUM1 : typeof ENUM1
|
||||
|
|
|
@ -1,27 +1,21 @@
|
|||
tests/cases/conformance/expressions/unaryOperators/incrementOperator/incrementOperatorWithEnumType.ts(6,25): error TS2356: An arithmetic operand must be of type 'any', 'number' or an enum type.
|
||||
tests/cases/conformance/expressions/unaryOperators/incrementOperator/incrementOperatorWithEnumType.ts(7,23): error TS2356: An arithmetic operand must be of type 'any', 'number' or an enum type.
|
||||
tests/cases/conformance/expressions/unaryOperators/incrementOperator/incrementOperatorWithEnumType.ts(10,3): error TS2356: An arithmetic operand must be of type 'any', 'number' or an enum type.
|
||||
tests/cases/conformance/expressions/unaryOperators/incrementOperator/incrementOperatorWithEnumType.ts(12,1): error TS2356: An arithmetic operand must be of type 'any', 'number' or an enum type.
|
||||
tests/cases/conformance/expressions/unaryOperators/incrementOperator/incrementOperatorWithEnumType.ts(7,23): error TS2357: The operand of an increment or decrement operator must be a variable, property or indexer.
|
||||
tests/cases/conformance/expressions/unaryOperators/incrementOperator/incrementOperatorWithEnumType.ts(12,1): error TS2357: The operand of an increment or decrement operator must be a variable, property or indexer.
|
||||
|
||||
|
||||
==== tests/cases/conformance/expressions/unaryOperators/incrementOperator/incrementOperatorWithEnumType.ts (4 errors) ====
|
||||
==== tests/cases/conformance/expressions/unaryOperators/incrementOperator/incrementOperatorWithEnumType.ts (2 errors) ====
|
||||
// ++ operator on enum type
|
||||
|
||||
enum ENUM1 { A, B, "" };
|
||||
|
||||
// expression
|
||||
var ResultIsNumber1 = ++ENUM1[1];
|
||||
~~~~~~~~
|
||||
!!! error TS2356: An arithmetic operand must be of type 'any', 'number' or an enum type.
|
||||
var ResultIsNumber2 = ENUM1[1]++;
|
||||
~~~~~~~~
|
||||
!!! error TS2356: An arithmetic operand must be of type 'any', 'number' or an enum type.
|
||||
var ResultIsNumber1 = ++ENUM1["B"];
|
||||
var ResultIsNumber2 = ENUM1.B++;
|
||||
~~~~~~~
|
||||
!!! error TS2357: The operand of an increment or decrement operator must be a variable, property or indexer.
|
||||
|
||||
// miss assignment operator
|
||||
++ENUM1[1];
|
||||
~~~~~~~~
|
||||
!!! error TS2356: An arithmetic operand must be of type 'any', 'number' or an enum type.
|
||||
++ENUM1["B"];
|
||||
|
||||
ENUM1[1]++;
|
||||
~~~~~~~~
|
||||
!!! error TS2356: An arithmetic operand must be of type 'any', 'number' or an enum type.
|
||||
ENUM1.B++;
|
||||
~~~~~~~
|
||||
!!! error TS2357: The operand of an increment or decrement operator must be a variable, property or indexer.
|
|
@ -4,13 +4,13 @@
|
|||
enum ENUM1 { A, B, "" };
|
||||
|
||||
// expression
|
||||
var ResultIsNumber1 = ++ENUM1[1];
|
||||
var ResultIsNumber2 = ENUM1[1]++;
|
||||
var ResultIsNumber1 = ++ENUM1["B"];
|
||||
var ResultIsNumber2 = ENUM1.B++;
|
||||
|
||||
// miss assignment operator
|
||||
++ENUM1[1];
|
||||
++ENUM1["B"];
|
||||
|
||||
ENUM1[1]++;
|
||||
ENUM1.B++;
|
||||
|
||||
//// [incrementOperatorWithEnumType.js]
|
||||
// ++ operator on enum type
|
||||
|
@ -22,8 +22,8 @@ var ENUM1;
|
|||
})(ENUM1 || (ENUM1 = {}));
|
||||
;
|
||||
// expression
|
||||
var ResultIsNumber1 = ++ENUM1[1];
|
||||
var ResultIsNumber2 = ENUM1[1]++;
|
||||
var ResultIsNumber1 = ++ENUM1["B"];
|
||||
var ResultIsNumber2 = 1 /* B */++;
|
||||
// miss assignment operator
|
||||
++ENUM1[1];
|
||||
ENUM1[1]++;
|
||||
++ENUM1["B"];
|
||||
1 /* B */++;
|
||||
|
|
|
@ -8,17 +8,17 @@ enum ENUM1 { };
|
|||
var ResultIsBoolean1 = !ENUM;
|
||||
|
||||
// enum type expressions
|
||||
var ResultIsBoolean2 = !ENUM[1];
|
||||
var ResultIsBoolean3 = !(ENUM[1] + ENUM[2]);
|
||||
var ResultIsBoolean2 = !ENUM["B"];
|
||||
var ResultIsBoolean3 = !(ENUM.B + ENUM["C"]);
|
||||
|
||||
// multiple ! operators
|
||||
var ResultIsBoolean4 = !!ENUM;
|
||||
var ResultIsBoolean5 = !!!(ENUM[1] + ENUM[2]);
|
||||
var ResultIsBoolean5 = !!!(ENUM["B"] + ENUM.C);
|
||||
|
||||
// miss assignment operators
|
||||
!ENUM;
|
||||
!ENUM1;
|
||||
!ENUM[1];
|
||||
!ENUM.B;
|
||||
!ENUM, ENUM1;
|
||||
|
||||
//// [logicalNotOperatorWithEnumType.js]
|
||||
|
@ -37,13 +37,13 @@ var ENUM1;
|
|||
// enum type var
|
||||
var ResultIsBoolean1 = !ENUM;
|
||||
// enum type expressions
|
||||
var ResultIsBoolean2 = !ENUM[1];
|
||||
var ResultIsBoolean3 = !(ENUM[1] + ENUM[2]);
|
||||
var ResultIsBoolean2 = !ENUM["B"];
|
||||
var ResultIsBoolean3 = !(1 /* B */ + ENUM["C"]);
|
||||
// multiple ! operators
|
||||
var ResultIsBoolean4 = !!ENUM;
|
||||
var ResultIsBoolean5 = !!!(ENUM[1] + ENUM[2]);
|
||||
var ResultIsBoolean5 = !!!(ENUM["B"] + 2 /* C */);
|
||||
// miss assignment operators
|
||||
!ENUM;
|
||||
!ENUM1;
|
||||
!ENUM[1];
|
||||
!1 /* B */;
|
||||
!ENUM, ENUM1;
|
||||
|
|
|
@ -17,20 +17,21 @@ var ResultIsBoolean1 = !ENUM;
|
|||
>ENUM : typeof ENUM
|
||||
|
||||
// enum type expressions
|
||||
var ResultIsBoolean2 = !ENUM[1];
|
||||
var ResultIsBoolean2 = !ENUM["B"];
|
||||
>ResultIsBoolean2 : boolean
|
||||
>!ENUM[1] : boolean
|
||||
>ENUM[1] : string
|
||||
>!ENUM["B"] : boolean
|
||||
>ENUM["B"] : ENUM
|
||||
>ENUM : typeof ENUM
|
||||
|
||||
var ResultIsBoolean3 = !(ENUM[1] + ENUM[2]);
|
||||
var ResultIsBoolean3 = !(ENUM.B + ENUM["C"]);
|
||||
>ResultIsBoolean3 : boolean
|
||||
>!(ENUM[1] + ENUM[2]) : boolean
|
||||
>(ENUM[1] + ENUM[2]) : string
|
||||
>ENUM[1] + ENUM[2] : string
|
||||
>ENUM[1] : string
|
||||
>!(ENUM.B + ENUM["C"]) : boolean
|
||||
>(ENUM.B + ENUM["C"]) : number
|
||||
>ENUM.B + ENUM["C"] : number
|
||||
>ENUM.B : ENUM
|
||||
>ENUM : typeof ENUM
|
||||
>ENUM[2] : string
|
||||
>B : ENUM
|
||||
>ENUM["C"] : ENUM
|
||||
>ENUM : typeof ENUM
|
||||
|
||||
// multiple ! operators
|
||||
|
@ -40,17 +41,18 @@ var ResultIsBoolean4 = !!ENUM;
|
|||
>!ENUM : boolean
|
||||
>ENUM : typeof ENUM
|
||||
|
||||
var ResultIsBoolean5 = !!!(ENUM[1] + ENUM[2]);
|
||||
var ResultIsBoolean5 = !!!(ENUM["B"] + ENUM.C);
|
||||
>ResultIsBoolean5 : boolean
|
||||
>!!!(ENUM[1] + ENUM[2]) : boolean
|
||||
>!!(ENUM[1] + ENUM[2]) : boolean
|
||||
>!(ENUM[1] + ENUM[2]) : boolean
|
||||
>(ENUM[1] + ENUM[2]) : string
|
||||
>ENUM[1] + ENUM[2] : string
|
||||
>ENUM[1] : string
|
||||
>!!!(ENUM["B"] + ENUM.C) : boolean
|
||||
>!!(ENUM["B"] + ENUM.C) : boolean
|
||||
>!(ENUM["B"] + ENUM.C) : boolean
|
||||
>(ENUM["B"] + ENUM.C) : number
|
||||
>ENUM["B"] + ENUM.C : number
|
||||
>ENUM["B"] : ENUM
|
||||
>ENUM : typeof ENUM
|
||||
>ENUM[2] : string
|
||||
>ENUM.C : ENUM
|
||||
>ENUM : typeof ENUM
|
||||
>C : ENUM
|
||||
|
||||
// miss assignment operators
|
||||
!ENUM;
|
||||
|
@ -61,10 +63,11 @@ var ResultIsBoolean5 = !!!(ENUM[1] + ENUM[2]);
|
|||
>!ENUM1 : boolean
|
||||
>ENUM1 : typeof ENUM1
|
||||
|
||||
!ENUM[1];
|
||||
>!ENUM[1] : boolean
|
||||
>ENUM[1] : string
|
||||
!ENUM.B;
|
||||
>!ENUM.B : boolean
|
||||
>ENUM.B : ENUM
|
||||
>ENUM : typeof ENUM
|
||||
>B : ENUM
|
||||
|
||||
!ENUM, ENUM1;
|
||||
>!ENUM, ENUM1 : typeof ENUM1
|
||||
|
|
|
@ -8,13 +8,13 @@ enum ENUM1 { A, B, "" };
|
|||
var ResultIsNumber1 = -ENUM;
|
||||
|
||||
// expressions
|
||||
var ResultIsNumber2 = -ENUM1[1];
|
||||
var ResultIsNumber3 = -(ENUM1[1] + ENUM1[2]);
|
||||
var ResultIsNumber2 = -ENUM1["B"];
|
||||
var ResultIsNumber3 = -(ENUM1.B + ENUM1[""]);
|
||||
|
||||
// miss assignment operators
|
||||
-ENUM;
|
||||
-ENUM1;
|
||||
-ENUM1[1];
|
||||
-ENUM1["B"];
|
||||
-ENUM, ENUM1;
|
||||
|
||||
//// [negateOperatorWithEnumType.js]
|
||||
|
@ -33,10 +33,10 @@ var ENUM1;
|
|||
// enum type var
|
||||
var ResultIsNumber1 = -ENUM;
|
||||
// expressions
|
||||
var ResultIsNumber2 = -ENUM1[1];
|
||||
var ResultIsNumber3 = -(ENUM1[1] + ENUM1[2]);
|
||||
var ResultIsNumber2 = -ENUM1["B"];
|
||||
var ResultIsNumber3 = -(1 /* B */ + ENUM1[""]);
|
||||
// miss assignment operators
|
||||
-ENUM;
|
||||
-ENUM1;
|
||||
-ENUM1[1];
|
||||
-ENUM1["B"];
|
||||
-ENUM, ENUM1;
|
||||
|
|
|
@ -16,20 +16,21 @@ var ResultIsNumber1 = -ENUM;
|
|||
>ENUM : typeof ENUM
|
||||
|
||||
// expressions
|
||||
var ResultIsNumber2 = -ENUM1[1];
|
||||
var ResultIsNumber2 = -ENUM1["B"];
|
||||
>ResultIsNumber2 : number
|
||||
>-ENUM1[1] : number
|
||||
>ENUM1[1] : string
|
||||
>-ENUM1["B"] : number
|
||||
>ENUM1["B"] : ENUM1
|
||||
>ENUM1 : typeof ENUM1
|
||||
|
||||
var ResultIsNumber3 = -(ENUM1[1] + ENUM1[2]);
|
||||
var ResultIsNumber3 = -(ENUM1.B + ENUM1[""]);
|
||||
>ResultIsNumber3 : number
|
||||
>-(ENUM1[1] + ENUM1[2]) : number
|
||||
>(ENUM1[1] + ENUM1[2]) : string
|
||||
>ENUM1[1] + ENUM1[2] : string
|
||||
>ENUM1[1] : string
|
||||
>-(ENUM1.B + ENUM1[""]) : number
|
||||
>(ENUM1.B + ENUM1[""]) : number
|
||||
>ENUM1.B + ENUM1[""] : number
|
||||
>ENUM1.B : ENUM1
|
||||
>ENUM1 : typeof ENUM1
|
||||
>ENUM1[2] : string
|
||||
>B : ENUM1
|
||||
>ENUM1[""] : ENUM1
|
||||
>ENUM1 : typeof ENUM1
|
||||
|
||||
// miss assignment operators
|
||||
|
@ -41,9 +42,9 @@ var ResultIsNumber3 = -(ENUM1[1] + ENUM1[2]);
|
|||
>-ENUM1 : number
|
||||
>ENUM1 : typeof ENUM1
|
||||
|
||||
-ENUM1[1];
|
||||
>-ENUM1[1] : number
|
||||
>ENUM1[1] : string
|
||||
-ENUM1["B"];
|
||||
>-ENUM1["B"] : number
|
||||
>ENUM1["B"] : ENUM1
|
||||
>ENUM1 : typeof ENUM1
|
||||
|
||||
-ENUM, ENUM1;
|
||||
|
|
|
@ -9,13 +9,13 @@ var ResultIsNumber1 = +ENUM;
|
|||
var ResultIsNumber2 = +ENUM1;
|
||||
|
||||
// enum type expressions
|
||||
var ResultIsNumber3 = +ENUM1[0];
|
||||
var ResultIsNumber4 = +(ENUM[0] + ENUM1[1]);
|
||||
var ResultIsNumber3 = +ENUM1["A"];
|
||||
var ResultIsNumber4 = +(ENUM[0] + ENUM1["B"]);
|
||||
|
||||
// miss assignment operators
|
||||
+ENUM;
|
||||
+ENUM1;
|
||||
+ENUM1[1];
|
||||
+ENUM1.B;
|
||||
+ENUM, ENUM1;
|
||||
|
||||
//// [plusOperatorWithEnumType.js]
|
||||
|
@ -35,10 +35,10 @@ var ENUM1;
|
|||
var ResultIsNumber1 = +ENUM;
|
||||
var ResultIsNumber2 = +ENUM1;
|
||||
// enum type expressions
|
||||
var ResultIsNumber3 = +ENUM1[0];
|
||||
var ResultIsNumber4 = +(ENUM[0] + ENUM1[1]);
|
||||
var ResultIsNumber3 = +ENUM1["A"];
|
||||
var ResultIsNumber4 = +(ENUM[0] + ENUM1["B"]);
|
||||
// miss assignment operators
|
||||
+ENUM;
|
||||
+ENUM1;
|
||||
+ENUM1[1];
|
||||
+1 /* B */;
|
||||
+ENUM, ENUM1;
|
||||
|
|
|
@ -21,20 +21,20 @@ var ResultIsNumber2 = +ENUM1;
|
|||
>ENUM1 : typeof ENUM1
|
||||
|
||||
// enum type expressions
|
||||
var ResultIsNumber3 = +ENUM1[0];
|
||||
var ResultIsNumber3 = +ENUM1["A"];
|
||||
>ResultIsNumber3 : number
|
||||
>+ENUM1[0] : number
|
||||
>ENUM1[0] : string
|
||||
>+ENUM1["A"] : number
|
||||
>ENUM1["A"] : ENUM1
|
||||
>ENUM1 : typeof ENUM1
|
||||
|
||||
var ResultIsNumber4 = +(ENUM[0] + ENUM1[1]);
|
||||
var ResultIsNumber4 = +(ENUM[0] + ENUM1["B"]);
|
||||
>ResultIsNumber4 : number
|
||||
>+(ENUM[0] + ENUM1[1]) : number
|
||||
>(ENUM[0] + ENUM1[1]) : string
|
||||
>ENUM[0] + ENUM1[1] : string
|
||||
>+(ENUM[0] + ENUM1["B"]) : number
|
||||
>(ENUM[0] + ENUM1["B"]) : string
|
||||
>ENUM[0] + ENUM1["B"] : string
|
||||
>ENUM[0] : string
|
||||
>ENUM : typeof ENUM
|
||||
>ENUM1[1] : string
|
||||
>ENUM1["B"] : ENUM1
|
||||
>ENUM1 : typeof ENUM1
|
||||
|
||||
// miss assignment operators
|
||||
|
@ -46,10 +46,11 @@ var ResultIsNumber4 = +(ENUM[0] + ENUM1[1]);
|
|||
>+ENUM1 : number
|
||||
>ENUM1 : typeof ENUM1
|
||||
|
||||
+ENUM1[1];
|
||||
>+ENUM1[1] : number
|
||||
>ENUM1[1] : string
|
||||
+ENUM1.B;
|
||||
>+ENUM1.B : number
|
||||
>ENUM1.B : ENUM1
|
||||
>ENUM1 : typeof ENUM1
|
||||
>B : ENUM1
|
||||
|
||||
+ENUM, ENUM1;
|
||||
>+ENUM, ENUM1 : typeof ENUM1
|
||||
|
|
|
@ -9,17 +9,17 @@ var ResultIsString1 = typeof ENUM;
|
|||
var ResultIsString2 = typeof ENUM1;
|
||||
|
||||
// enum type expressions
|
||||
var ResultIsString3 = typeof ENUM1[0];
|
||||
var ResultIsString4 = typeof (ENUM[0] + ENUM1[1]);
|
||||
var ResultIsString3 = typeof ENUM1["A"];
|
||||
var ResultIsString4 = typeof (ENUM[0] + ENUM1["B"]);
|
||||
|
||||
// multiple typeof operators
|
||||
var ResultIsString5 = typeof typeof ENUM;
|
||||
var ResultIsString6 = typeof typeof typeof (ENUM[0] + ENUM1[1]);
|
||||
var ResultIsString6 = typeof typeof typeof (ENUM[0] + ENUM1.B);
|
||||
|
||||
// miss assignment operators
|
||||
typeof ENUM;
|
||||
typeof ENUM1;
|
||||
typeof ENUM1[1];
|
||||
typeof ENUM1["B"];
|
||||
typeof ENUM, ENUM1;
|
||||
|
||||
// use typeof in type query
|
||||
|
@ -44,15 +44,15 @@ var ENUM1;
|
|||
var ResultIsString1 = typeof ENUM;
|
||||
var ResultIsString2 = typeof ENUM1;
|
||||
// enum type expressions
|
||||
var ResultIsString3 = typeof ENUM1[0];
|
||||
var ResultIsString4 = typeof (ENUM[0] + ENUM1[1]);
|
||||
var ResultIsString3 = typeof ENUM1["A"];
|
||||
var ResultIsString4 = typeof (ENUM[0] + ENUM1["B"]);
|
||||
// multiple typeof operators
|
||||
var ResultIsString5 = typeof typeof ENUM;
|
||||
var ResultIsString6 = typeof typeof typeof (ENUM[0] + ENUM1[1]);
|
||||
var ResultIsString6 = typeof typeof typeof (ENUM[0] + 1 /* B */);
|
||||
// miss assignment operators
|
||||
typeof ENUM;
|
||||
typeof ENUM1;
|
||||
typeof ENUM1[1];
|
||||
typeof ENUM1["B"];
|
||||
typeof ENUM, ENUM1;
|
||||
// use typeof in type query
|
||||
var z;
|
||||
|
|
|
@ -21,20 +21,20 @@ var ResultIsString2 = typeof ENUM1;
|
|||
>ENUM1 : typeof ENUM1
|
||||
|
||||
// enum type expressions
|
||||
var ResultIsString3 = typeof ENUM1[0];
|
||||
var ResultIsString3 = typeof ENUM1["A"];
|
||||
>ResultIsString3 : string
|
||||
>typeof ENUM1[0] : string
|
||||
>ENUM1[0] : string
|
||||
>typeof ENUM1["A"] : string
|
||||
>ENUM1["A"] : ENUM1
|
||||
>ENUM1 : typeof ENUM1
|
||||
|
||||
var ResultIsString4 = typeof (ENUM[0] + ENUM1[1]);
|
||||
var ResultIsString4 = typeof (ENUM[0] + ENUM1["B"]);
|
||||
>ResultIsString4 : string
|
||||
>typeof (ENUM[0] + ENUM1[1]) : string
|
||||
>(ENUM[0] + ENUM1[1]) : string
|
||||
>ENUM[0] + ENUM1[1] : string
|
||||
>typeof (ENUM[0] + ENUM1["B"]) : string
|
||||
>(ENUM[0] + ENUM1["B"]) : string
|
||||
>ENUM[0] + ENUM1["B"] : string
|
||||
>ENUM[0] : string
|
||||
>ENUM : typeof ENUM
|
||||
>ENUM1[1] : string
|
||||
>ENUM1["B"] : ENUM1
|
||||
>ENUM1 : typeof ENUM1
|
||||
|
||||
// multiple typeof operators
|
||||
|
@ -44,17 +44,18 @@ var ResultIsString5 = typeof typeof ENUM;
|
|||
>typeof ENUM : string
|
||||
>ENUM : typeof ENUM
|
||||
|
||||
var ResultIsString6 = typeof typeof typeof (ENUM[0] + ENUM1[1]);
|
||||
var ResultIsString6 = typeof typeof typeof (ENUM[0] + ENUM1.B);
|
||||
>ResultIsString6 : string
|
||||
>typeof typeof typeof (ENUM[0] + ENUM1[1]) : string
|
||||
>typeof typeof (ENUM[0] + ENUM1[1]) : string
|
||||
>typeof (ENUM[0] + ENUM1[1]) : string
|
||||
>(ENUM[0] + ENUM1[1]) : string
|
||||
>ENUM[0] + ENUM1[1] : string
|
||||
>typeof typeof typeof (ENUM[0] + ENUM1.B) : string
|
||||
>typeof typeof (ENUM[0] + ENUM1.B) : string
|
||||
>typeof (ENUM[0] + ENUM1.B) : string
|
||||
>(ENUM[0] + ENUM1.B) : string
|
||||
>ENUM[0] + ENUM1.B : string
|
||||
>ENUM[0] : string
|
||||
>ENUM : typeof ENUM
|
||||
>ENUM1[1] : string
|
||||
>ENUM1.B : ENUM1
|
||||
>ENUM1 : typeof ENUM1
|
||||
>B : ENUM1
|
||||
|
||||
// miss assignment operators
|
||||
typeof ENUM;
|
||||
|
@ -65,9 +66,9 @@ typeof ENUM1;
|
|||
>typeof ENUM1 : string
|
||||
>ENUM1 : typeof ENUM1
|
||||
|
||||
typeof ENUM1[1];
|
||||
>typeof ENUM1[1] : string
|
||||
>ENUM1[1] : string
|
||||
typeof ENUM1["B"];
|
||||
>typeof ENUM1["B"] : string
|
||||
>ENUM1["B"] : ENUM1
|
||||
>ENUM1 : typeof ENUM1
|
||||
|
||||
typeof ENUM, ENUM1;
|
||||
|
|
|
@ -9,17 +9,17 @@ var ResultIsAny1 = void ENUM;
|
|||
var ResultIsAny2 = void ENUM1;
|
||||
|
||||
// enum type expressions
|
||||
var ResultIsAny3 = void ENUM1[0];
|
||||
var ResultIsAny4 = void (ENUM[0] + ENUM1[1]);
|
||||
var ResultIsAny3 = void ENUM1["A"];
|
||||
var ResultIsAny4 = void (ENUM[0] + ENUM1["B"]);
|
||||
|
||||
// multiple void operators
|
||||
var ResultIsAny5 = void void ENUM;
|
||||
var ResultIsAny6 = void void void (ENUM[0] + ENUM1[1]);
|
||||
var ResultIsAny6 = void void void (ENUM[0] + ENUM1.B);
|
||||
|
||||
// miss assignment operators
|
||||
void ENUM;
|
||||
void ENUM1;
|
||||
void ENUM1[1];
|
||||
void ENUM1["B"];
|
||||
void ENUM, ENUM1;
|
||||
|
||||
//// [voidOperatorWithEnumType.js]
|
||||
|
@ -39,13 +39,13 @@ var ENUM1;
|
|||
var ResultIsAny1 = void ENUM;
|
||||
var ResultIsAny2 = void ENUM1;
|
||||
// enum type expressions
|
||||
var ResultIsAny3 = void ENUM1[0];
|
||||
var ResultIsAny4 = void (ENUM[0] + ENUM1[1]);
|
||||
var ResultIsAny3 = void ENUM1["A"];
|
||||
var ResultIsAny4 = void (ENUM[0] + ENUM1["B"]);
|
||||
// multiple void operators
|
||||
var ResultIsAny5 = void void ENUM;
|
||||
var ResultIsAny6 = void void void (ENUM[0] + ENUM1[1]);
|
||||
var ResultIsAny6 = void void void (ENUM[0] + 1 /* B */);
|
||||
// miss assignment operators
|
||||
void ENUM;
|
||||
void ENUM1;
|
||||
void ENUM1[1];
|
||||
void ENUM1["B"];
|
||||
void ENUM, ENUM1;
|
||||
|
|
|
@ -21,20 +21,20 @@ var ResultIsAny2 = void ENUM1;
|
|||
>ENUM1 : typeof ENUM1
|
||||
|
||||
// enum type expressions
|
||||
var ResultIsAny3 = void ENUM1[0];
|
||||
var ResultIsAny3 = void ENUM1["A"];
|
||||
>ResultIsAny3 : any
|
||||
>void ENUM1[0] : undefined
|
||||
>ENUM1[0] : string
|
||||
>void ENUM1["A"] : undefined
|
||||
>ENUM1["A"] : ENUM1
|
||||
>ENUM1 : typeof ENUM1
|
||||
|
||||
var ResultIsAny4 = void (ENUM[0] + ENUM1[1]);
|
||||
var ResultIsAny4 = void (ENUM[0] + ENUM1["B"]);
|
||||
>ResultIsAny4 : any
|
||||
>void (ENUM[0] + ENUM1[1]) : undefined
|
||||
>(ENUM[0] + ENUM1[1]) : string
|
||||
>ENUM[0] + ENUM1[1] : string
|
||||
>void (ENUM[0] + ENUM1["B"]) : undefined
|
||||
>(ENUM[0] + ENUM1["B"]) : string
|
||||
>ENUM[0] + ENUM1["B"] : string
|
||||
>ENUM[0] : string
|
||||
>ENUM : typeof ENUM
|
||||
>ENUM1[1] : string
|
||||
>ENUM1["B"] : ENUM1
|
||||
>ENUM1 : typeof ENUM1
|
||||
|
||||
// multiple void operators
|
||||
|
@ -44,17 +44,18 @@ var ResultIsAny5 = void void ENUM;
|
|||
>void ENUM : undefined
|
||||
>ENUM : typeof ENUM
|
||||
|
||||
var ResultIsAny6 = void void void (ENUM[0] + ENUM1[1]);
|
||||
var ResultIsAny6 = void void void (ENUM[0] + ENUM1.B);
|
||||
>ResultIsAny6 : any
|
||||
>void void void (ENUM[0] + ENUM1[1]) : undefined
|
||||
>void void (ENUM[0] + ENUM1[1]) : undefined
|
||||
>void (ENUM[0] + ENUM1[1]) : undefined
|
||||
>(ENUM[0] + ENUM1[1]) : string
|
||||
>ENUM[0] + ENUM1[1] : string
|
||||
>void void void (ENUM[0] + ENUM1.B) : undefined
|
||||
>void void (ENUM[0] + ENUM1.B) : undefined
|
||||
>void (ENUM[0] + ENUM1.B) : undefined
|
||||
>(ENUM[0] + ENUM1.B) : string
|
||||
>ENUM[0] + ENUM1.B : string
|
||||
>ENUM[0] : string
|
||||
>ENUM : typeof ENUM
|
||||
>ENUM1[1] : string
|
||||
>ENUM1.B : ENUM1
|
||||
>ENUM1 : typeof ENUM1
|
||||
>B : ENUM1
|
||||
|
||||
// miss assignment operators
|
||||
void ENUM;
|
||||
|
@ -65,9 +66,9 @@ void ENUM1;
|
|||
>void ENUM1 : undefined
|
||||
>ENUM1 : typeof ENUM1
|
||||
|
||||
void ENUM1[1];
|
||||
>void ENUM1[1] : undefined
|
||||
>ENUM1[1] : string
|
||||
void ENUM1["B"];
|
||||
>void ENUM1["B"] : undefined
|
||||
>ENUM1["B"] : ENUM1
|
||||
>ENUM1 : typeof ENUM1
|
||||
|
||||
void ENUM, ENUM1;
|
||||
|
|
|
@ -6,13 +6,13 @@ enum ENUM1 { A, B, "" };
|
|||
var ResultIsNumber1 = ~ENUM1;
|
||||
|
||||
// enum type expressions
|
||||
var ResultIsNumber2 = ~ENUM1[1];
|
||||
var ResultIsNumber3 = ~(ENUM1[1] + ENUM1[2]);
|
||||
var ResultIsNumber2 = ~ENUM1["A"];
|
||||
var ResultIsNumber3 = ~(ENUM1.A + ENUM1["B"]);
|
||||
|
||||
// multiple ~ operators
|
||||
var ResultIsNumber4 = ~~~(ENUM1[1] + ENUM1[2]);
|
||||
var ResultIsNumber4 = ~~~(ENUM1["A"] + ENUM1.B);
|
||||
|
||||
// miss assignment operators
|
||||
~ENUM1;
|
||||
~ENUM1[1];
|
||||
~ENUM1[1], ~ENUM1[2];
|
||||
~ENUM1["A"];
|
||||
~ENUM1.A, ~ENUM1["B"];
|
|
@ -3,10 +3,10 @@
|
|||
enum ENUM1 { A, B, "" };
|
||||
|
||||
// expression
|
||||
var ResultIsNumber1 = --ENUM1[1];
|
||||
var ResultIsNumber2 = ENUM1[1]--;
|
||||
var ResultIsNumber1 = --ENUM1["A"];
|
||||
var ResultIsNumber2 = ENUM1.A--;
|
||||
|
||||
// miss assignment operator
|
||||
--ENUM1[1];
|
||||
--ENUM1["A"];
|
||||
|
||||
ENUM1[1]--;
|
||||
ENUM1[A]--;
|
|
@ -11,8 +11,8 @@ var ResultIsNumber3 = ENUM--;
|
|||
var ResultIsNumber4 = ENUM1--;
|
||||
|
||||
// enum type expressions
|
||||
var ResultIsNumber5 = --(ENUM[1] + ENUM[2]);
|
||||
var ResultIsNumber6 = (ENUM[1] + ENUM[2])--;
|
||||
var ResultIsNumber5 = --(ENUM["A"] + ENUM.B);
|
||||
var ResultIsNumber6 = (ENUM.A + ENUM["B"])--;
|
||||
|
||||
// miss assignment operator
|
||||
--ENUM;
|
||||
|
|
|
@ -8,15 +8,15 @@ var ResultIsBoolean1 = delete ENUM;
|
|||
var ResultIsBoolean2 = delete ENUM1;
|
||||
|
||||
// enum type expressions
|
||||
var ResultIsBoolean3 = delete ENUM1[0];
|
||||
var ResultIsBoolean4 = delete (ENUM[0] + ENUM1[1]);
|
||||
var ResultIsBoolean3 = delete ENUM1["A"];
|
||||
var ResultIsBoolean4 = delete (ENUM[0] + ENUM1["B"]);
|
||||
|
||||
// multiple delete operators
|
||||
var ResultIsBoolean5 = delete delete ENUM;
|
||||
var ResultIsBoolean6 = delete delete delete (ENUM[0] + ENUM1[1]);
|
||||
var ResultIsBoolean6 = delete delete delete (ENUM[0] + ENUM1["B"]);
|
||||
|
||||
// miss assignment operators
|
||||
delete ENUM;
|
||||
delete ENUM1;
|
||||
delete ENUM1[1];
|
||||
delete ENUM1.B;
|
||||
delete ENUM, ENUM1;
|
|
@ -3,10 +3,10 @@
|
|||
enum ENUM1 { A, B, "" };
|
||||
|
||||
// expression
|
||||
var ResultIsNumber1 = ++ENUM1[1];
|
||||
var ResultIsNumber2 = ENUM1[1]++;
|
||||
var ResultIsNumber1 = ++ENUM1["B"];
|
||||
var ResultIsNumber2 = ENUM1.B++;
|
||||
|
||||
// miss assignment operator
|
||||
++ENUM1[1];
|
||||
++ENUM1["B"];
|
||||
|
||||
ENUM1[1]++;
|
||||
ENUM1.B++;
|
|
@ -7,15 +7,15 @@ enum ENUM1 { };
|
|||
var ResultIsBoolean1 = !ENUM;
|
||||
|
||||
// enum type expressions
|
||||
var ResultIsBoolean2 = !ENUM[1];
|
||||
var ResultIsBoolean3 = !(ENUM[1] + ENUM[2]);
|
||||
var ResultIsBoolean2 = !ENUM["B"];
|
||||
var ResultIsBoolean3 = !(ENUM.B + ENUM["C"]);
|
||||
|
||||
// multiple ! operators
|
||||
var ResultIsBoolean4 = !!ENUM;
|
||||
var ResultIsBoolean5 = !!!(ENUM[1] + ENUM[2]);
|
||||
var ResultIsBoolean5 = !!!(ENUM["B"] + ENUM.C);
|
||||
|
||||
// miss assignment operators
|
||||
!ENUM;
|
||||
!ENUM1;
|
||||
!ENUM[1];
|
||||
!ENUM.B;
|
||||
!ENUM, ENUM1;
|
|
@ -7,11 +7,11 @@ enum ENUM1 { A, B, "" };
|
|||
var ResultIsNumber1 = -ENUM;
|
||||
|
||||
// expressions
|
||||
var ResultIsNumber2 = -ENUM1[1];
|
||||
var ResultIsNumber3 = -(ENUM1[1] + ENUM1[2]);
|
||||
var ResultIsNumber2 = -ENUM1["B"];
|
||||
var ResultIsNumber3 = -(ENUM1.B + ENUM1[""]);
|
||||
|
||||
// miss assignment operators
|
||||
-ENUM;
|
||||
-ENUM1;
|
||||
-ENUM1[1];
|
||||
-ENUM1["B"];
|
||||
-ENUM, ENUM1;
|
|
@ -8,11 +8,11 @@ var ResultIsNumber1 = +ENUM;
|
|||
var ResultIsNumber2 = +ENUM1;
|
||||
|
||||
// enum type expressions
|
||||
var ResultIsNumber3 = +ENUM1[0];
|
||||
var ResultIsNumber4 = +(ENUM[0] + ENUM1[1]);
|
||||
var ResultIsNumber3 = +ENUM1["A"];
|
||||
var ResultIsNumber4 = +(ENUM[0] + ENUM1["B"]);
|
||||
|
||||
// miss assignment operators
|
||||
+ENUM;
|
||||
+ENUM1;
|
||||
+ENUM1[1];
|
||||
+ENUM1.B;
|
||||
+ENUM, ENUM1;
|
|
@ -8,17 +8,17 @@ var ResultIsString1 = typeof ENUM;
|
|||
var ResultIsString2 = typeof ENUM1;
|
||||
|
||||
// enum type expressions
|
||||
var ResultIsString3 = typeof ENUM1[0];
|
||||
var ResultIsString4 = typeof (ENUM[0] + ENUM1[1]);
|
||||
var ResultIsString3 = typeof ENUM1["A"];
|
||||
var ResultIsString4 = typeof (ENUM[0] + ENUM1["B"]);
|
||||
|
||||
// multiple typeof operators
|
||||
var ResultIsString5 = typeof typeof ENUM;
|
||||
var ResultIsString6 = typeof typeof typeof (ENUM[0] + ENUM1[1]);
|
||||
var ResultIsString6 = typeof typeof typeof (ENUM[0] + ENUM1.B);
|
||||
|
||||
// miss assignment operators
|
||||
typeof ENUM;
|
||||
typeof ENUM1;
|
||||
typeof ENUM1[1];
|
||||
typeof ENUM1["B"];
|
||||
typeof ENUM, ENUM1;
|
||||
|
||||
// use typeof in type query
|
||||
|
|
|
@ -8,15 +8,15 @@ var ResultIsAny1 = void ENUM;
|
|||
var ResultIsAny2 = void ENUM1;
|
||||
|
||||
// enum type expressions
|
||||
var ResultIsAny3 = void ENUM1[0];
|
||||
var ResultIsAny4 = void (ENUM[0] + ENUM1[1]);
|
||||
var ResultIsAny3 = void ENUM1["A"];
|
||||
var ResultIsAny4 = void (ENUM[0] + ENUM1["B"]);
|
||||
|
||||
// multiple void operators
|
||||
var ResultIsAny5 = void void ENUM;
|
||||
var ResultIsAny6 = void void void (ENUM[0] + ENUM1[1]);
|
||||
var ResultIsAny6 = void void void (ENUM[0] + ENUM1.B);
|
||||
|
||||
// miss assignment operators
|
||||
void ENUM;
|
||||
void ENUM1;
|
||||
void ENUM1[1];
|
||||
void ENUM1["B"];
|
||||
void ENUM, ENUM1;
|
Loading…
Reference in a new issue