diff --git a/tests/baselines/reference/jsxInvalidEsprimaTestSuite.errors.txt b/tests/baselines/reference/jsxInvalidEsprimaTestSuite.errors.txt
index 9cef517fa1b..f509044703a 100644
--- a/tests/baselines/reference/jsxInvalidEsprimaTestSuite.errors.txt
+++ b/tests/baselines/reference/jsxInvalidEsprimaTestSuite.errors.txt
@@ -1,8 +1,9 @@
-tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(3,1): error TS1109: Expression expected.
-tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(3,3): error TS1161: Unterminated regular expression literal.
-tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(4,2): error TS2304: Cannot find name 'a'.
-tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(4,3): error TS1005: ';' expected.
-tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(4,6): error TS1161: Unterminated regular expression literal.
+tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(3,1): error TS1128: Declaration or statement expected.
+tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(3,3): error TS1109: Expression expected.
+tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(3,4): error TS1109: Expression expected.
+tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(4,1): error TS2602: The global type 'JSX.Element' must exist when using JSX.
+tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(4,3): error TS1003: Identifier expected.
+tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(5,1): error TS1109: Expression expected.
tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(5,2): error TS1109: Expression expected.
tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(5,3): error TS2304: Cannot find name 'a'.
tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(5,6): error TS1109: Expression expected.
@@ -23,44 +24,47 @@ tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(10,1): error TS1003:
tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(10,2): error TS2304: Cannot find name 'a'.
tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(10,3): error TS1005: ';' expected.
tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(10,4): error TS2304: Cannot find name 'b'.
-tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(10,4): error TS2365: Operator '<' cannot be applied to types 'boolean' and 'RegExp'.
tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(10,6): error TS1109: Expression expected.
-tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(10,8): error TS1161: Unterminated regular expression literal.
-tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(11,2): error TS2304: Cannot find name 'a'.
-tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(11,3): error TS1005: ';' expected.
-tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(11,4): error TS2304: Cannot find name 'b'.
-tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(11,4): error TS2365: Operator '<' cannot be applied to types 'boolean' and 'RegExp'.
-tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(11,8): error TS1109: Expression expected.
-tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(11,10): error TS1161: Unterminated regular expression literal.
+tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(10,8): error TS2304: Cannot find name 'b'.
+tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(10,10): error TS1109: Expression expected.
+tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(11,1): error TS2602: The global type 'JSX.Element' must exist when using JSX.
+tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(11,3): error TS1003: Identifier expected.
+tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(11,5): error TS1003: Identifier expected.
+tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(11,11): error TS1005: '>' expected.
+tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(11,12): error TS2304: Cannot find name 'b'.
+tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(11,16): error TS1109: Expression expected.
+tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(12,1): error TS2602: The global type 'JSX.Element' must exist when using JSX.
tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(12,2): error TS2304: Cannot find name 'a'.
-tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(12,5): error TS1005: ';' expected.
-tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(12,6): error TS2304: Cannot find name 'c'.
-tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(12,6): error TS2365: Operator '<' cannot be applied to types 'boolean' and 'RegExp'.
-tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(12,6): error TS2365: Operator '<' cannot be applied to types 'boolean' and 'RegExp'.
-tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(12,6): error TS2365: Operator '<' cannot be applied to types 'boolean' and 'RegExp'.
-tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(12,6): error TS2365: Operator '<' cannot be applied to types 'boolean' and 'RegExp'.
-tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(12,6): error TS2365: Operator '<' cannot be applied to types 'boolean' and 'RegExp'.
-tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(12,6): error TS2365: Operator '<' cannot be applied to types 'boolean' and 'RegExp'.
-tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(12,8): error TS1109: Expression expected.
-tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(12,10): error TS1161: Unterminated regular expression literal.
+tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(12,5): error TS1003: Identifier expected.
+tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(12,13): error TS1005: '>' expected.
+tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(12,14): error TS2304: Cannot find name 'c'.
+tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(12,16): error TS1109: Expression expected.
+tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(13,1): error TS2602: The global type 'JSX.Element' must exist when using JSX.
tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(13,2): error TS2304: Cannot find name 'a'.
-tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(13,8): error TS1109: Expression expected.
-tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(13,10): error TS1161: Unterminated regular expression literal.
+tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(13,8): error TS17002: Expected corresponding JSX closing tag for 'a.b.c'.
+tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(14,1): error TS1109: Expression expected.
tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(14,2): error TS1109: Expression expected.
tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(14,5): error TS1109: Expression expected.
-tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(14,7): error TS1161: Unterminated regular expression literal.
+tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(14,7): error TS1128: Declaration or statement expected.
+tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(14,8): error TS2304: Cannot find name 'a'.
+tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(14,10): error TS1109: Expression expected.
+tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(15,1): error TS2602: The global type 'JSX.Element' must exist when using JSX.
tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(15,2): error TS2304: Cannot find name 'a'.
tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(15,4): error TS1003: Identifier expected.
-tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(15,5): error TS1109: Expression expected.
-tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(15,7): error TS1161: Unterminated regular expression literal.
-tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(16,2): error TS2304: Cannot find name 'a'.
+tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(15,9): error TS1003: Identifier expected.
+tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(16,1): error TS2602: The global type 'JSX.Element' must exist when using JSX.
+tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(16,3): error TS1003: Identifier expected.
tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(16,4): error TS2304: Cannot find name 'foo'.
tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(16,9): error TS1109: Expression expected.
-tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(16,11): error TS1161: Unterminated regular expression literal.
-tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(17,2): error TS2304: Cannot find name 'a'.
+tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(16,11): error TS2304: Cannot find name 'a'.
+tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(16,13): error TS2304: Cannot find name 'foo'.
+tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(16,18): error TS1109: Expression expected.
+tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(17,1): error TS2602: The global type 'JSX.Element' must exist when using JSX.
+tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(17,3): error TS1003: Identifier expected.
tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(17,11): error TS1109: Expression expected.
-tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(17,13): error TS1161: Unterminated regular expression literal.
-tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(18,2): error TS2304: Cannot find name 'a'.
+tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(17,13): error TS2304: Cannot find name 'a'.
+tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(17,22): error TS1109: Expression expected.
+tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(18,1): error TS2602: The global type 'JSX.Element' must exist when using JSX.
tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(18,4): error TS2602: The global type 'JSX.Element' must exist when using JSX.
tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(19,1): error TS2602: The global type 'JSX.Element' must exist when using JSX.
tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(20,9): error TS2602: The global type 'JSX.Element' must exist when using JSX.
@@ -96,22 +100,24 @@ tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(35,4): error TS1003:
tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(35,21): error TS17002: Expected corresponding JSX closing tag for 'a'.
-==== tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx (96 errors) ====
+==== tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx (100 errors) ====
declare var React: any;
>;
+ ~~
+!!! error TS1128: Declaration or statement expected.
+ ~
+!!! error TS1109: Expression expected.
+ ~
+!!! error TS1109: Expression expected.
+ ;
+ ~~~~~~
+!!! error TS2602: The global type 'JSX.Element' must exist when using JSX.
+ ~
+!!! error TS1003: Identifier expected.
+ <:a />;
~
!!! error TS1109: Expression expected.
-
-!!! error TS1161: Unterminated regular expression literal.
- ;
- ~
-!!! error TS2304: Cannot find name 'a'.
- ~
-!!! error TS1005: ';' expected.
-
-!!! error TS1161: Unterminated regular expression literal.
- <:a />;
~
!!! error TS1109: Expression expected.
~
@@ -157,105 +163,96 @@ tests/cases/conformance/jsx/jsxInvalidEsprimaTestSuite.tsx(35,21): error TS17002
!!! error TS1005: ';' expected.
~
!!! error TS2304: Cannot find name 'b'.
- ~~~~~~~
-!!! error TS2365: Operator '<' cannot be applied to types 'boolean' and 'RegExp'.
- ~
+ ~~
!!! error TS1109: Expression expected.
-
-!!! error TS1161: Unterminated regular expression literal.
- ;
- ~
-!!! error TS2304: Cannot find name 'a'.
- ~
-!!! error TS1005: ';' expected.
- ~
+ ~
!!! error TS2304: Cannot find name 'b'.
- ~~~~~~~~~~~~~
-!!! error TS2365: Operator '<' cannot be applied to types 'boolean' and 'RegExp'.
- ~
+ ~
+!!! error TS1109: Expression expected.
+ ;
+ ~~~~~~~
+!!! error TS2602: The global type 'JSX.Element' must exist when using JSX.
+ ~
+!!! error TS1003: Identifier expected.
+ ~
+!!! error TS1003: Identifier expected.
+ ~
+!!! error TS1005: '>' expected.
+ ~
+!!! error TS2304: Cannot find name 'b'.
+ ~
!!! error TS1109: Expression expected.
-
-!!! error TS1161: Unterminated regular expression literal.
;
+ ~~~~~~~
+!!! error TS2602: The global type 'JSX.Element' must exist when using JSX.
~
!!! error TS2304: Cannot find name 'a'.
~
-!!! error TS1005: ';' expected.
- ~
+!!! error TS1003: Identifier expected.
+ ~
+!!! error TS1005: '>' expected.
+ ~
!!! error TS2304: Cannot find name 'c'.
- ~~~~~~~~~~~
-!!! error TS2365: Operator '<' cannot be applied to types 'boolean' and 'RegExp'.
- ~~~~~~~~~~~
- ~~~~~~~~~~~
- ~~~~~~~~~~~
- ~~~~~~~~~~~
- ~~~~~~~~~~~
- ~
+ ~
!!! error TS1109: Expression expected.
-
-!!! error TS1161: Unterminated regular expression literal.
;
- ~~~~~~~~~~~~
-!!! error TS2365: Operator '<' cannot be applied to types 'boolean' and 'RegExp'.
- ~~~~~~~~~~~~
- ~~~~~~~~~~~~
- ~~~~~~~~~~~~
- ~~~~~~~~~~~~
+ ~~~~~~~
+!!! error TS2602: The global type 'JSX.Element' must exist when using JSX.
~
!!! error TS2304: Cannot find name 'a'.
- ~
-!!! error TS1109: Expression expected.
-
-!!! error TS1161: Unterminated regular expression literal.
+ ~~~~
+!!! error TS17002: Expected corresponding JSX closing tag for 'a.b.c'.
<.a>;
- ~~~~~~~~~~
-!!! error TS2365: Operator '<' cannot be applied to types 'boolean' and 'RegExp'.
- ~~~~~~~~~~
- ~~~~~~~~~~
- ~~~~~~~~~~
+ ~
+!!! error TS1109: Expression expected.
~
!!! error TS1109: Expression expected.
- ~
+ ~~
+!!! error TS1109: Expression expected.
+ ~
+!!! error TS1128: Declaration or statement expected.
+ ~
+!!! error TS2304: Cannot find name 'a'.
+ ~
!!! error TS1109: Expression expected.
-
-!!! error TS1161: Unterminated regular expression literal.
;
- ~~~~~~~~~~
-!!! error TS2365: Operator '<' cannot be applied to types 'boolean' and 'RegExp'.
- ~~~~~~~~~~
- ~~~~~~~~~~
+ ~~~~
+!!! error TS2602: The global type 'JSX.Element' must exist when using JSX.
~
!!! error TS2304: Cannot find name 'a'.
~
!!! error TS1003: Identifier expected.
- ~
-!!! error TS1109: Expression expected.
-
-!!! error TS1161: Unterminated regular expression literal.
+ ~
+!!! error TS1003: Identifier expected.
;
- ~~~~~~~~~~~~~~~~~~
-!!! error TS2365: Operator '<' cannot be applied to types 'boolean' and 'RegExp'.
- ~~~~~~~~~~~~~~~~~~
- ~
-!!! error TS2304: Cannot find name 'a'.
+ ~~
+!!! error TS2602: The global type 'JSX.Element' must exist when using JSX.
+ ~
+!!! error TS1003: Identifier expected.
~~~
!!! error TS2304: Cannot find name 'foo'.
- ~
+ ~~
!!! error TS1109: Expression expected.
-
-!!! error TS1161: Unterminated regular expression literal.
- ;
- ~~~~~~~~~~~~~~~~~~~~~~
-!!! error TS2365: Operator '<' cannot be applied to types 'boolean' and 'RegExp'.
- ~
-!!! error TS2304: Cannot find name 'a'.
~
-!!! error TS1109: Expression expected.
-
-!!! error TS1161: Unterminated regular expression literal.
- ;
- ~
!!! error TS2304: Cannot find name 'a'.
+ ~~~
+!!! error TS2304: Cannot find name 'foo'.
+ ~
+!!! error TS1109: Expression expected.
+ ;
+ ~~
+!!! error TS2602: The global type 'JSX.Element' must exist when using JSX.
+ ~
+!!! error TS1003: Identifier expected.
+ ~~
+!!! error TS1109: Expression expected.
+ ~
+!!! error TS2304: Cannot find name 'a'.
+ ~
+!!! error TS1109: Expression expected.
+ ;
+ ~~~
+!!! error TS2602: The global type 'JSX.Element' must exist when using JSX.
~~~~~
!!! error TS2602: The global type 'JSX.Element' must exist when using JSX.
;
diff --git a/tests/baselines/reference/jsxInvalidEsprimaTestSuite.js b/tests/baselines/reference/jsxInvalidEsprimaTestSuite.js
index 537a2ff002b..a53cf33410d 100644
--- a/tests/baselines/reference/jsxInvalidEsprimaTestSuite.js
+++ b/tests/baselines/reference/jsxInvalidEsprimaTestSuite.js
@@ -36,9 +36,8 @@ var x = one
/* intervening comment */ two
;;
;
//// [jsxInvalidEsprimaTestSuite.jsx]
- < />;
- < a;
-/>;
+ > ;
+;
< ;
a / > ;
}/>
@@ -46,17 +45,23 @@ a / > ;
;