==== tests/cases/compiler/incrementOperatorWithEnumTypeInvalidOperations.ts (20 errors) ====
    // ++ operator on enum type
    
    enum ENUM { };
    enum ENUM1 { 1, 2, "" };
    
    // enum type var
    var ResultIsNumber1 = ++ENUM;
                            ~~~~
!!! incrementOperatorWithEnumTypeInvalidOperations.ts(7,25): error TS2114: The type of a unary arithmetic operation operand must be of type 'any', 'number' or an enum type.
                            ~~~~
!!! incrementOperatorWithEnumTypeInvalidOperations.ts(7,25): error TS2139: The operand of an increment or decrement operator must be a variable, property or indexer.
    var ResultIsNumber2 = ++ENUM1;
                            ~~~~~
!!! incrementOperatorWithEnumTypeInvalidOperations.ts(8,25): error TS2114: The type of a unary arithmetic operation operand must be of type 'any', 'number' or an enum type.
                            ~~~~~
!!! incrementOperatorWithEnumTypeInvalidOperations.ts(8,25): error TS2139: The operand of an increment or decrement operator must be a variable, property or indexer.
    
    var ResultIsNumber3 = ENUM++;
                          ~~~~
!!! incrementOperatorWithEnumTypeInvalidOperations.ts(10,23): error TS2114: The type of a unary arithmetic operation operand must be of type 'any', 'number' or an enum type.
                          ~~~~
!!! incrementOperatorWithEnumTypeInvalidOperations.ts(10,23): error TS2139: The operand of an increment or decrement operator must be a variable, property or indexer.
    var ResultIsNumber4 = ENUM1++;
                          ~~~~~
!!! incrementOperatorWithEnumTypeInvalidOperations.ts(11,23): error TS2114: The type of a unary arithmetic operation operand must be of type 'any', 'number' or an enum type.
                          ~~~~~
!!! incrementOperatorWithEnumTypeInvalidOperations.ts(11,23): error TS2139: The operand of an increment or decrement operator must be a variable, property or indexer.
    
    // enum type expressions
    var ResultIsNumber5 = ++(ENUM[1] + ENUM[2]);
                            ~~~~~~~~~~~~~~~~~~~
!!! incrementOperatorWithEnumTypeInvalidOperations.ts(14,25): error TS2114: The type of a unary arithmetic operation operand must be of type 'any', 'number' or an enum type.
                            ~~~~~~~~~~~~~~~~~~~
!!! incrementOperatorWithEnumTypeInvalidOperations.ts(14,25): error TS2139: The operand of an increment or decrement operator must be a variable, property or indexer.
    var ResultIsNumber6 = (ENUM[1] + ENUM[2])++;
                          ~~~~~~~~~~~~~~~~~~~
!!! incrementOperatorWithEnumTypeInvalidOperations.ts(15,23): error TS2114: The type of a unary arithmetic operation operand must be of type 'any', 'number' or an enum type.
                          ~~~~~~~~~~~~~~~~~~~
!!! incrementOperatorWithEnumTypeInvalidOperations.ts(15,23): error TS2139: The operand of an increment or decrement operator must be a variable, property or indexer.
    
    // miss assignment operator
    ++ENUM;
      ~~~~
!!! incrementOperatorWithEnumTypeInvalidOperations.ts(18,3): error TS2114: The type of a unary arithmetic operation operand must be of type 'any', 'number' or an enum type.
      ~~~~
!!! incrementOperatorWithEnumTypeInvalidOperations.ts(18,3): error TS2139: The operand of an increment or decrement operator must be a variable, property or indexer.
    ++ENUM1;
      ~~~~~
!!! incrementOperatorWithEnumTypeInvalidOperations.ts(19,3): error TS2114: The type of a unary arithmetic operation operand must be of type 'any', 'number' or an enum type.
      ~~~~~
!!! incrementOperatorWithEnumTypeInvalidOperations.ts(19,3): error TS2139: The operand of an increment or decrement operator must be a variable, property or indexer.
    
    ENUM++;
    ~~~~
!!! incrementOperatorWithEnumTypeInvalidOperations.ts(21,1): error TS2114: The type of a unary arithmetic operation operand must be of type 'any', 'number' or an enum type.
    ~~~~
!!! incrementOperatorWithEnumTypeInvalidOperations.ts(21,1): error TS2139: The operand of an increment or decrement operator must be a variable, property or indexer.
    ENUM1++;
    ~~~~~
!!! incrementOperatorWithEnumTypeInvalidOperations.ts(22,1): error TS2114: The type of a unary arithmetic operation operand must be of type 'any', 'number' or an enum type.
    ~~~~~
!!! incrementOperatorWithEnumTypeInvalidOperations.ts(22,1): error TS2139: The operand of an increment or decrement operator must be a variable, property or indexer.