tests/cases/compiler/intrinsics.ts(1,21): error TS2749: 'hasOwnProperty' refers to a value, but is being used as a type here.
tests/cases/compiler/intrinsics.ts(1,21): error TS4025: Exported variable 'hasOwnProperty' has or is using private name 'hasOwnProperty'.
tests/cases/compiler/intrinsics.ts(10,1): error TS2304: Cannot find name '__proto__'.


==== tests/cases/compiler/intrinsics.ts (3 errors) ====
    var hasOwnProperty: hasOwnProperty; // Error
                        ~~~~~~~~~~~~~~
!!! error TS2749: 'hasOwnProperty' refers to a value, but is being used as a type here.
                        ~~~~~~~~~~~~~~
!!! error TS4025: Exported variable 'hasOwnProperty' has or is using private name 'hasOwnProperty'.
    
    module m1 {
        export var __proto__;
        interface __proto__ {}
    
        class C<T extends { __proto__: __proto__ }> { }
    }
    
    __proto__ = 0; // Error, __proto__ not defined
    ~~~~~~~~~
!!! error TS2304: Cannot find name '__proto__'.
    m1.__proto__ = 0;
    
    class Foo<__proto__> { }
    var foo: (__proto__: number) => void;