tests/cases/compiler/jsxIntrinsicElementsTypeArgumentErrors.tsx(5,15): error TS1099: Type argument list cannot be empty.
tests/cases/compiler/jsxIntrinsicElementsTypeArgumentErrors.tsx(7,16): error TS2558: Expected 0 type arguments, but got 1.
tests/cases/compiler/jsxIntrinsicElementsTypeArgumentErrors.tsx(7,22): error TS1009: Trailing comma not allowed.
tests/cases/compiler/jsxIntrinsicElementsTypeArgumentErrors.tsx(9,16): error TS2304: Cannot find name 'Missing'.
tests/cases/compiler/jsxIntrinsicElementsTypeArgumentErrors.tsx(9,16): error TS2558: Expected 0 type arguments, but got 1.
tests/cases/compiler/jsxIntrinsicElementsTypeArgumentErrors.tsx(11,16): error TS2304: Cannot find name 'Missing'.
tests/cases/compiler/jsxIntrinsicElementsTypeArgumentErrors.tsx(11,16): error TS2558: Expected 0 type arguments, but got 1.
tests/cases/compiler/jsxIntrinsicElementsTypeArgumentErrors.tsx(11,24): error TS2304: Cannot find name 'AlsoMissing'.
tests/cases/compiler/jsxIntrinsicElementsTypeArgumentErrors.tsx(13,16): error TS2558: Expected 0 type arguments, but got 1.
tests/cases/compiler/jsxIntrinsicElementsTypeArgumentErrors.tsx(13,23): error TS2344: Type 'object' does not satisfy the constraint 'string | number | symbol'.
  Type 'object' is not assignable to type 'symbol'.
tests/cases/compiler/jsxIntrinsicElementsTypeArgumentErrors.tsx(15,16): error TS2558: Expected 0 type arguments, but got 1.
tests/cases/compiler/jsxIntrinsicElementsTypeArgumentErrors.tsx(18,15): error TS1099: Type argument list cannot be empty.
tests/cases/compiler/jsxIntrinsicElementsTypeArgumentErrors.tsx(20,16): error TS2558: Expected 0 type arguments, but got 1.
tests/cases/compiler/jsxIntrinsicElementsTypeArgumentErrors.tsx(20,22): error TS1009: Trailing comma not allowed.
tests/cases/compiler/jsxIntrinsicElementsTypeArgumentErrors.tsx(22,16): error TS2304: Cannot find name 'Missing'.
tests/cases/compiler/jsxIntrinsicElementsTypeArgumentErrors.tsx(22,16): error TS2558: Expected 0 type arguments, but got 1.
tests/cases/compiler/jsxIntrinsicElementsTypeArgumentErrors.tsx(24,16): error TS2304: Cannot find name 'Missing'.
tests/cases/compiler/jsxIntrinsicElementsTypeArgumentErrors.tsx(24,16): error TS2558: Expected 0 type arguments, but got 1.
tests/cases/compiler/jsxIntrinsicElementsTypeArgumentErrors.tsx(24,24): error TS2304: Cannot find name 'AlsoMissing'.
tests/cases/compiler/jsxIntrinsicElementsTypeArgumentErrors.tsx(26,16): error TS2558: Expected 0 type arguments, but got 1.
tests/cases/compiler/jsxIntrinsicElementsTypeArgumentErrors.tsx(26,23): error TS2344: Type 'object' does not satisfy the constraint 'string | number | symbol'.
  Type 'object' is not assignable to type 'symbol'.
tests/cases/compiler/jsxIntrinsicElementsTypeArgumentErrors.tsx(28,16): error TS2558: Expected 0 type arguments, but got 1.


==== tests/cases/compiler/jsxIntrinsicElementsTypeArgumentErrors.tsx (22 errors) ====
    /// <reference path="/.lib/react16.d.ts" />
    import * as React from "react";
    
    // opening + closing
    const a = <div<>></div>; // empty type args
                  ~~
!!! error TS1099: Type argument list cannot be empty.
    
    const b = <div<number,>></div>; // trailing comma type args
                   ~~~~~~~
!!! error TS2558: Expected 0 type arguments, but got 1.
                         ~
!!! error TS1009: Trailing comma not allowed.
    
    const c = <div<Missing>></div>; // nonexistant type args
                   ~~~~~~~
!!! error TS2304: Cannot find name 'Missing'.
                   ~~~~~~~
!!! error TS2558: Expected 0 type arguments, but got 1.
    
    const d = <div<Missing<AlsoMissing>>></div>; // nested missing type args
                   ~~~~~~~
!!! error TS2304: Cannot find name 'Missing'.
                   ~~~~~~~~~~~~~~~~~~~~
!!! error TS2558: Expected 0 type arguments, but got 1.
                           ~~~~~~~~~~~
!!! error TS2304: Cannot find name 'AlsoMissing'.
    
    const e = <div<Record<object, object>>></div>; // existing but incorrect nested type args
                   ~~~~~~~~~~~~~~~~~~~~~~
!!! error TS2558: Expected 0 type arguments, but got 1.
                          ~~~~~~
!!! error TS2344: Type 'object' does not satisfy the constraint 'string | number | symbol'.
!!! error TS2344:   Type 'object' is not assignable to type 'symbol'.
    
    const f = <div<number>></div>; // existing type argument with no internal issues
                   ~~~~~~
!!! error TS2558: Expected 0 type arguments, but got 1.
    
    // self-closing
    const g = <div<>/>; // empty type args
                  ~~
!!! error TS1099: Type argument list cannot be empty.
    
    const h = <div<number,>/>; // trailing comma type args
                   ~~~~~~~
!!! error TS2558: Expected 0 type arguments, but got 1.
                         ~
!!! error TS1009: Trailing comma not allowed.
    
    const i = <div<Missing>/>; // nonexistant type args
                   ~~~~~~~
!!! error TS2304: Cannot find name 'Missing'.
                   ~~~~~~~
!!! error TS2558: Expected 0 type arguments, but got 1.
    
    const j = <div<Missing<AlsoMissing>>/>; // nested missing type args
                   ~~~~~~~
!!! error TS2304: Cannot find name 'Missing'.
                   ~~~~~~~~~~~~~~~~~~~~
!!! error TS2558: Expected 0 type arguments, but got 1.
                           ~~~~~~~~~~~
!!! error TS2304: Cannot find name 'AlsoMissing'.
    
    const k = <div<Record<object, object>>/>; // existing but incorrect nested type args
                   ~~~~~~~~~~~~~~~~~~~~~~
!!! error TS2558: Expected 0 type arguments, but got 1.
                          ~~~~~~
!!! error TS2344: Type 'object' does not satisfy the constraint 'string | number | symbol'.
!!! error TS2344:   Type 'object' is not assignable to type 'symbol'.
    
    const l = <div<number>/>; // existing type argument with no internal issues
                   ~~~~~~
!!! error TS2558: Expected 0 type arguments, but got 1.
    