tests/cases/conformance/types/specifyingTypes/typeReferences/genericTypeReferenceWithoutTypeArgument2.ts(8,8): error TS2314: Generic type 'I<T>' requires 1 type argument(s).
tests/cases/conformance/types/specifyingTypes/typeReferences/genericTypeReferenceWithoutTypeArgument2.ts(10,13): error TS2314: Generic type 'I<T>' requires 1 type argument(s).
tests/cases/conformance/types/specifyingTypes/typeReferences/genericTypeReferenceWithoutTypeArgument2.ts(11,14): error TS2314: Generic type 'I<T>' requires 1 type argument(s).
tests/cases/conformance/types/specifyingTypes/typeReferences/genericTypeReferenceWithoutTypeArgument2.ts(11,18): error TS2314: Generic type 'I<T>' requires 1 type argument(s).
tests/cases/conformance/types/specifyingTypes/typeReferences/genericTypeReferenceWithoutTypeArgument2.ts(12,11): error TS1023: An index signature parameter type must be either 'string' or 'number'.
tests/cases/conformance/types/specifyingTypes/typeReferences/genericTypeReferenceWithoutTypeArgument2.ts(12,14): error TS2314: Generic type 'I<T>' requires 1 type argument(s).
tests/cases/conformance/types/specifyingTypes/typeReferences/genericTypeReferenceWithoutTypeArgument2.ts(12,18): error TS2314: Generic type 'I<T>' requires 1 type argument(s).
tests/cases/conformance/types/specifyingTypes/typeReferences/genericTypeReferenceWithoutTypeArgument2.ts(14,13): error TS2314: Generic type 'I<T>' requires 1 type argument(s).
tests/cases/conformance/types/specifyingTypes/typeReferences/genericTypeReferenceWithoutTypeArgument2.ts(14,28): error TS2314: Generic type 'I<T>' requires 1 type argument(s).
tests/cases/conformance/types/specifyingTypes/typeReferences/genericTypeReferenceWithoutTypeArgument2.ts(16,15): error TS2314: Generic type 'I<T>' requires 1 type argument(s).
tests/cases/conformance/types/specifyingTypes/typeReferences/genericTypeReferenceWithoutTypeArgument2.ts(16,19): error TS2314: Generic type 'I<T>' requires 1 type argument(s).
tests/cases/conformance/types/specifyingTypes/typeReferences/genericTypeReferenceWithoutTypeArgument2.ts(16,30): error TS2314: Generic type 'I<T>' requires 1 type argument(s).
tests/cases/conformance/types/specifyingTypes/typeReferences/genericTypeReferenceWithoutTypeArgument2.ts(18,23): error TS2314: Generic type 'I<T>' requires 1 type argument(s).
tests/cases/conformance/types/specifyingTypes/typeReferences/genericTypeReferenceWithoutTypeArgument2.ts(18,27): error TS2314: Generic type 'I<T>' requires 1 type argument(s).
tests/cases/conformance/types/specifyingTypes/typeReferences/genericTypeReferenceWithoutTypeArgument2.ts(18,38): error TS2314: Generic type 'I<T>' requires 1 type argument(s).
tests/cases/conformance/types/specifyingTypes/typeReferences/genericTypeReferenceWithoutTypeArgument2.ts(20,17): error TS2689: Cannot extend an interface 'I'. Did you mean 'implements'?
tests/cases/conformance/types/specifyingTypes/typeReferences/genericTypeReferenceWithoutTypeArgument2.ts(23,21): error TS2314: Generic type 'I<T>' requires 1 type argument(s).
tests/cases/conformance/types/specifyingTypes/typeReferences/genericTypeReferenceWithoutTypeArgument2.ts(29,18): error TS2708: Cannot use namespace 'M' as a value.
tests/cases/conformance/types/specifyingTypes/typeReferences/genericTypeReferenceWithoutTypeArgument2.ts(30,24): error TS2314: Generic type 'E<T>' requires 1 type argument(s).
tests/cases/conformance/types/specifyingTypes/typeReferences/genericTypeReferenceWithoutTypeArgument2.ts(31,24): error TS2694: Namespace 'M' has no exported member 'C'.
tests/cases/conformance/types/specifyingTypes/typeReferences/genericTypeReferenceWithoutTypeArgument2.ts(33,22): error TS2314: Generic type 'I<T>' requires 1 type argument(s).
tests/cases/conformance/types/specifyingTypes/typeReferences/genericTypeReferenceWithoutTypeArgument2.ts(34,22): error TS2314: Generic type 'E<T>' requires 1 type argument(s).
tests/cases/conformance/types/specifyingTypes/typeReferences/genericTypeReferenceWithoutTypeArgument2.ts(36,10): error TS2304: Cannot find name 'C'.
tests/cases/conformance/types/specifyingTypes/typeReferences/genericTypeReferenceWithoutTypeArgument2.ts(37,10): error TS2314: Generic type 'E<T>' requires 1 type argument(s).


==== tests/cases/conformance/types/specifyingTypes/typeReferences/genericTypeReferenceWithoutTypeArgument2.ts (24 errors) ====
    // it is an error to use a generic type without type arguments
    // all of these are errors 
    
    interface I<T> {
        foo: T;
    }
    
    var c: I;
           ~
!!! error TS2314: Generic type 'I<T>' requires 1 type argument(s).
    
    var a: { x: I };
                ~
!!! error TS2314: Generic type 'I<T>' requires 1 type argument(s).
    var b: { (x: I): I };
                 ~
!!! error TS2314: Generic type 'I<T>' requires 1 type argument(s).
                     ~
!!! error TS2314: Generic type 'I<T>' requires 1 type argument(s).
    var d: { [x: I]: I };
              ~
!!! error TS1023: An index signature parameter type must be either 'string' or 'number'.
                 ~
!!! error TS2314: Generic type 'I<T>' requires 1 type argument(s).
                     ~
!!! error TS2314: Generic type 'I<T>' requires 1 type argument(s).
    
    var e = (x: I) => { var y: I; return y; }
                ~
!!! error TS2314: Generic type 'I<T>' requires 1 type argument(s).
                               ~
!!! error TS2314: Generic type 'I<T>' requires 1 type argument(s).
    
    function f(x: I): I { var y: I; return y; }
                  ~
!!! error TS2314: Generic type 'I<T>' requires 1 type argument(s).
                      ~
!!! error TS2314: Generic type 'I<T>' requires 1 type argument(s).
                                 ~
!!! error TS2314: Generic type 'I<T>' requires 1 type argument(s).
    
    var g = function f(x: I): I { var y: I; return y; }
                          ~
!!! error TS2314: Generic type 'I<T>' requires 1 type argument(s).
                              ~
!!! error TS2314: Generic type 'I<T>' requires 1 type argument(s).
                                         ~
!!! error TS2314: Generic type 'I<T>' requires 1 type argument(s).
    
    class D extends I {
                    ~
!!! error TS2689: Cannot extend an interface 'I'. Did you mean 'implements'?
    }
    
    interface U extends I {}
                        ~
!!! error TS2314: Generic type 'I<T>' requires 1 type argument(s).
    
    module M {
        export interface E<T> { foo: T }
    }
    
    class D2 extends M.C { }
                     ~
!!! error TS2708: Cannot use namespace 'M' as a value.
    interface D3<T extends M.E> { }
                           ~~~
!!! error TS2314: Generic type 'E<T>' requires 1 type argument(s).
    interface I2 extends M.C { }
                           ~
!!! error TS2694: Namespace 'M' has no exported member 'C'.
    
    function h<T extends I>(x: T) { }
                         ~
!!! error TS2314: Generic type 'I<T>' requires 1 type argument(s).
    function i<T extends M.E>(x: T) { }
                         ~~~
!!! error TS2314: Generic type 'E<T>' requires 1 type argument(s).
    
    var j = <C>null;
             ~
!!! error TS2304: Cannot find name 'C'.
    var k = <M.E>null;
             ~~~
!!! error TS2314: Generic type 'E<T>' requires 1 type argument(s).