tests/cases/conformance/expressions/unaryOperators/deleteOperator/deleteOperatorWithAnyOtherType.ts(25,31): error TS2703: The operand of a delete operator must be a property reference.
tests/cases/conformance/expressions/unaryOperators/deleteOperator/deleteOperatorWithAnyOtherType.ts(26,31): error TS2703: The operand of a delete operator must be a property reference.
tests/cases/conformance/expressions/unaryOperators/deleteOperator/deleteOperatorWithAnyOtherType.ts(27,31): error TS2703: The operand of a delete operator must be a property reference.
tests/cases/conformance/expressions/unaryOperators/deleteOperator/deleteOperatorWithAnyOtherType.ts(28,31): error TS2703: The operand of a delete operator must be a property reference.
tests/cases/conformance/expressions/unaryOperators/deleteOperator/deleteOperatorWithAnyOtherType.ts(29,31): error TS2703: The operand of a delete operator must be a property reference.
tests/cases/conformance/expressions/unaryOperators/deleteOperator/deleteOperatorWithAnyOtherType.ts(30,31): error TS2703: The operand of a delete operator must be a property reference.
tests/cases/conformance/expressions/unaryOperators/deleteOperator/deleteOperatorWithAnyOtherType.ts(33,31): error TS2703: The operand of a delete operator must be a property reference.
tests/cases/conformance/expressions/unaryOperators/deleteOperator/deleteOperatorWithAnyOtherType.ts(34,31): error TS2703: The operand of a delete operator must be a property reference.
tests/cases/conformance/expressions/unaryOperators/deleteOperator/deleteOperatorWithAnyOtherType.ts(42,32): error TS2703: The operand of a delete operator must be a property reference.
tests/cases/conformance/expressions/unaryOperators/deleteOperator/deleteOperatorWithAnyOtherType.ts(43,32): error TS2703: The operand of a delete operator must be a property reference.
tests/cases/conformance/expressions/unaryOperators/deleteOperator/deleteOperatorWithAnyOtherType.ts(44,33): error TS2703: The operand of a delete operator must be a property reference.
tests/cases/conformance/expressions/unaryOperators/deleteOperator/deleteOperatorWithAnyOtherType.ts(45,33): error TS2365: Operator '+' cannot be applied to types 'null' and 'undefined'.
tests/cases/conformance/expressions/unaryOperators/deleteOperator/deleteOperatorWithAnyOtherType.ts(45,33): error TS2703: The operand of a delete operator must be a property reference.
tests/cases/conformance/expressions/unaryOperators/deleteOperator/deleteOperatorWithAnyOtherType.ts(46,33): error TS2365: Operator '+' cannot be applied to types 'null' and 'null'.
tests/cases/conformance/expressions/unaryOperators/deleteOperator/deleteOperatorWithAnyOtherType.ts(46,33): error TS2703: The operand of a delete operator must be a property reference.
tests/cases/conformance/expressions/unaryOperators/deleteOperator/deleteOperatorWithAnyOtherType.ts(47,33): error TS2365: Operator '+' cannot be applied to types 'undefined' and 'undefined'.
tests/cases/conformance/expressions/unaryOperators/deleteOperator/deleteOperatorWithAnyOtherType.ts(47,33): error TS2703: The operand of a delete operator must be a property reference.
tests/cases/conformance/expressions/unaryOperators/deleteOperator/deleteOperatorWithAnyOtherType.ts(50,32): error TS2703: The operand of a delete operator must be a property reference.
tests/cases/conformance/expressions/unaryOperators/deleteOperator/deleteOperatorWithAnyOtherType.ts(50,39): error TS2703: The operand of a delete operator must be a property reference.
tests/cases/conformance/expressions/unaryOperators/deleteOperator/deleteOperatorWithAnyOtherType.ts(51,32): error TS2703: The operand of a delete operator must be a property reference.
tests/cases/conformance/expressions/unaryOperators/deleteOperator/deleteOperatorWithAnyOtherType.ts(51,39): error TS2703: The operand of a delete operator must be a property reference.
tests/cases/conformance/expressions/unaryOperators/deleteOperator/deleteOperatorWithAnyOtherType.ts(51,47): error TS2703: The operand of a delete operator must be a property reference.
tests/cases/conformance/expressions/unaryOperators/deleteOperator/deleteOperatorWithAnyOtherType.ts(54,8): error TS2703: The operand of a delete operator must be a property reference.
tests/cases/conformance/expressions/unaryOperators/deleteOperator/deleteOperatorWithAnyOtherType.ts(55,8): error TS2703: The operand of a delete operator must be a property reference.
tests/cases/conformance/expressions/unaryOperators/deleteOperator/deleteOperatorWithAnyOtherType.ts(57,8): error TS2703: The operand of a delete operator must be a property reference.


==== tests/cases/conformance/expressions/unaryOperators/deleteOperator/deleteOperatorWithAnyOtherType.ts (25 errors) ====
    // delete  operator on any type
    
    var ANY: any;
    var ANY1;
    var ANY2: any[] = ["", ""];
    var obj: () => {};
    var obj1 = { x: "", y: () => { }};
    function foo(): any {
        var a;
        return a;
    }
    class A {
        public a: any;
        static foo() {
            var a;
            return a;
        }
    }
    module M {
        export var n: any;
    }
    var objA = new A();
    
    // any type var
    var ResultIsBoolean1 = delete ANY1;
                                  ~~~~
!!! error TS2703: The operand of a delete operator must be a property reference.
    var ResultIsBoolean2 = delete ANY2;
                                  ~~~~
!!! error TS2703: The operand of a delete operator must be a property reference.
    var ResultIsBoolean3 = delete A;
                                  ~
!!! error TS2703: The operand of a delete operator must be a property reference.
    var ResultIsBoolean4 = delete M;
                                  ~
!!! error TS2703: The operand of a delete operator must be a property reference.
    var ResultIsBoolean5 = delete obj;
                                  ~~~
!!! error TS2703: The operand of a delete operator must be a property reference.
    var ResultIsBoolean6 = delete obj1;
                                  ~~~~
!!! error TS2703: The operand of a delete operator must be a property reference.
    
    // any type literal
    var ResultIsBoolean7 = delete undefined;
                                  ~~~~~~~~~
!!! error TS2703: The operand of a delete operator must be a property reference.
    var ResultIsBoolean8 = delete null;
                                  ~~~~
!!! error TS2703: The operand of a delete operator must be a property reference.
    
    // any type expressions
    var ResultIsBoolean9 = delete ANY2[0];
    var ResultIsBoolean10 = delete obj1.x;
    var ResultIsBoolean11 = delete obj1.y;
    var ResultIsBoolean12 = delete objA.a;
    var ResultIsBoolean13 = delete M.n;
    var ResultIsBoolean14 = delete foo();
                                   ~~~~~
!!! error TS2703: The operand of a delete operator must be a property reference.
    var ResultIsBoolean15 = delete A.foo();
                                   ~~~~~~~
!!! error TS2703: The operand of a delete operator must be a property reference.
    var ResultIsBoolean16 = delete (ANY + ANY1);
                                    ~~~~~~~~~~
!!! error TS2703: The operand of a delete operator must be a property reference.
    var ResultIsBoolean17 = delete (null + undefined);
                                    ~~~~~~~~~~~~~~~~
!!! error TS2365: Operator '+' cannot be applied to types 'null' and 'undefined'.
                                    ~~~~~~~~~~~~~~~~
!!! error TS2703: The operand of a delete operator must be a property reference.
    var ResultIsBoolean18 = delete (null + null);
                                    ~~~~~~~~~~~
!!! error TS2365: Operator '+' cannot be applied to types 'null' and 'null'.
                                    ~~~~~~~~~~~
!!! error TS2703: The operand of a delete operator must be a property reference.
    var ResultIsBoolean19 = delete (undefined + undefined);
                                    ~~~~~~~~~~~~~~~~~~~~~
!!! error TS2365: Operator '+' cannot be applied to types 'undefined' and 'undefined'.
                                    ~~~~~~~~~~~~~~~~~~~~~
!!! error TS2703: The operand of a delete operator must be a property reference.
    
    // multiple delete  operators
    var ResultIsBoolean20 = delete delete ANY;
                                   ~~~~~~~~~~
!!! error TS2703: The operand of a delete operator must be a property reference.
                                          ~~~
!!! error TS2703: The operand of a delete operator must be a property reference.
    var ResultIsBoolean21 = delete delete delete (ANY + ANY1);
                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~
!!! error TS2703: The operand of a delete operator must be a property reference.
                                          ~~~~~~~~~~~~~~~~~~~
!!! error TS2703: The operand of a delete operator must be a property reference.
                                                  ~~~~~~~~~~
!!! error TS2703: The operand of a delete operator must be a property reference.
    
    // miss assignment operators
    delete ANY;
           ~~~
!!! error TS2703: The operand of a delete operator must be a property reference.
    delete ANY1;
           ~~~~
!!! error TS2703: The operand of a delete operator must be a property reference.
    delete ANY2[0];
    delete ANY, ANY1;
           ~~~
!!! error TS2703: The operand of a delete operator must be a property reference.
    delete obj1.x;
    delete obj1.y;
    delete objA.a;
    delete M.n;