Skip to content

Commit 569b35e

Browse files
committed
use multiple target
1 parent fd47863 commit 569b35e

17 files changed

+529
-244
lines changed

tests/baselines/reference/invalidTaggedTemplateEscapeSequences_es2015.errors.txt renamed to tests/baselines/reference/invalidTaggedTemplateEscapeSequences(target=es2015).errors.txt

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
1-
tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences_es2015.ts(7,18): error TS1125: Hexadecimal digit expected.
2-
tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences_es2015.ts(8,15): error TS1125: Hexadecimal digit expected.
3-
tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences_es2015.ts(8,33): error TS1125: Hexadecimal digit expected.
4-
tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences_es2015.ts(8,75): error TS1125: Hexadecimal digit expected.
5-
tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences_es2015.ts(9,18): error TS1125: Hexadecimal digit expected.
6-
tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences_es2015.ts(9,27): error TS1125: Hexadecimal digit expected.
7-
tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences_es2015.ts(9,51): error TS1125: Hexadecimal digit expected.
1+
tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences.ts(7,18): error TS1125: Hexadecimal digit expected.
2+
tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences.ts(8,15): error TS1125: Hexadecimal digit expected.
3+
tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences.ts(8,33): error TS1125: Hexadecimal digit expected.
4+
tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences.ts(8,75): error TS1125: Hexadecimal digit expected.
5+
tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences.ts(9,18): error TS1125: Hexadecimal digit expected.
6+
tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences.ts(9,27): error TS1125: Hexadecimal digit expected.
7+
tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences.ts(9,51): error TS1125: Hexadecimal digit expected.
88

99

10-
==== tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences_es2015.ts (7 errors) ====
10+
==== tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences.ts (7 errors) ====
1111
function tag (str: any, ...args: any[]): any {
1212
return str
1313
}

tests/baselines/reference/invalidTaggedTemplateEscapeSequences_es2015.js renamed to tests/baselines/reference/invalidTaggedTemplateEscapeSequences(target=es2015).js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
//// [invalidTaggedTemplateEscapeSequences_es2015.ts]
1+
//// [invalidTaggedTemplateEscapeSequences.ts]
22
function tag (str: any, ...args: any[]): any {
33
return str
44
}
@@ -25,7 +25,7 @@ const a13 = tag`${ 100 }\x0` // \\x0
2525
const a14 = tag`${ 100 }\x00` // \x00
2626
2727
28-
//// [invalidTaggedTemplateEscapeSequences_es2015.js]
28+
//// [invalidTaggedTemplateEscapeSequences.js]
2929
var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3030
if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
3131
return cooked;
Lines changed: 85 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,85 @@
1+
=== tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences.ts ===
2+
function tag (str: any, ...args: any[]): any {
3+
>tag : Symbol(tag, Decl(invalidTaggedTemplateEscapeSequences.ts, 0, 0))
4+
>str : Symbol(str, Decl(invalidTaggedTemplateEscapeSequences.ts, 0, 14))
5+
>args : Symbol(args, Decl(invalidTaggedTemplateEscapeSequences.ts, 0, 23))
6+
7+
return str
8+
>str : Symbol(str, Decl(invalidTaggedTemplateEscapeSequences.ts, 0, 14))
9+
}
10+
11+
const a = tag`123`
12+
>a : Symbol(a, Decl(invalidTaggedTemplateEscapeSequences.ts, 4, 5))
13+
>tag : Symbol(tag, Decl(invalidTaggedTemplateEscapeSequences.ts, 0, 0))
14+
15+
const b = tag`123 ${100}`
16+
>b : Symbol(b, Decl(invalidTaggedTemplateEscapeSequences.ts, 5, 5))
17+
>tag : Symbol(tag, Decl(invalidTaggedTemplateEscapeSequences.ts, 0, 0))
18+
19+
const x = tag`\u{hello} ${ 100 } \xtraordinary ${ 200 } wonderful ${ 300 } \uworld`;
20+
>x : Symbol(x, Decl(invalidTaggedTemplateEscapeSequences.ts, 6, 5))
21+
>tag : Symbol(tag, Decl(invalidTaggedTemplateEscapeSequences.ts, 0, 0))
22+
23+
const y = `\u{hello} ${ 100 } \xtraordinary ${ 200 } wonderful ${ 300 } \uworld`; // should error with NoSubstitutionTemplate
24+
>y : Symbol(y, Decl(invalidTaggedTemplateEscapeSequences.ts, 7, 5))
25+
26+
const z = tag`\u{hello} \xtraordinary wonderful \uworld` // should work with Tagged NoSubstitutionTemplate
27+
>z : Symbol(z, Decl(invalidTaggedTemplateEscapeSequences.ts, 8, 5))
28+
>tag : Symbol(tag, Decl(invalidTaggedTemplateEscapeSequences.ts, 0, 0))
29+
30+
const a1 = tag`${ 100 }\0` // \0
31+
>a1 : Symbol(a1, Decl(invalidTaggedTemplateEscapeSequences.ts, 10, 5))
32+
>tag : Symbol(tag, Decl(invalidTaggedTemplateEscapeSequences.ts, 0, 0))
33+
34+
const a2 = tag`${ 100 }\00` // \\00
35+
>a2 : Symbol(a2, Decl(invalidTaggedTemplateEscapeSequences.ts, 11, 5))
36+
>tag : Symbol(tag, Decl(invalidTaggedTemplateEscapeSequences.ts, 0, 0))
37+
38+
const a3 = tag`${ 100 }\u` // \\u
39+
>a3 : Symbol(a3, Decl(invalidTaggedTemplateEscapeSequences.ts, 12, 5))
40+
>tag : Symbol(tag, Decl(invalidTaggedTemplateEscapeSequences.ts, 0, 0))
41+
42+
const a4 = tag`${ 100 }\u0` // \\u0
43+
>a4 : Symbol(a4, Decl(invalidTaggedTemplateEscapeSequences.ts, 13, 5))
44+
>tag : Symbol(tag, Decl(invalidTaggedTemplateEscapeSequences.ts, 0, 0))
45+
46+
const a5 = tag`${ 100 }\u00` // \\u00
47+
>a5 : Symbol(a5, Decl(invalidTaggedTemplateEscapeSequences.ts, 14, 5))
48+
>tag : Symbol(tag, Decl(invalidTaggedTemplateEscapeSequences.ts, 0, 0))
49+
50+
const a6 = tag`${ 100 }\u000` // \\u000
51+
>a6 : Symbol(a6, Decl(invalidTaggedTemplateEscapeSequences.ts, 15, 5))
52+
>tag : Symbol(tag, Decl(invalidTaggedTemplateEscapeSequences.ts, 0, 0))
53+
54+
const a7 = tag`${ 100 }\u0000` // \u0000
55+
>a7 : Symbol(a7, Decl(invalidTaggedTemplateEscapeSequences.ts, 16, 5))
56+
>tag : Symbol(tag, Decl(invalidTaggedTemplateEscapeSequences.ts, 0, 0))
57+
58+
const a8 = tag`${ 100 }\u{` // \\u{
59+
>a8 : Symbol(a8, Decl(invalidTaggedTemplateEscapeSequences.ts, 17, 5))
60+
>tag : Symbol(tag, Decl(invalidTaggedTemplateEscapeSequences.ts, 0, 0))
61+
62+
const a9 = tag`${ 100 }\u{10FFFF}` // \\u{10FFFF
63+
>a9 : Symbol(a9, Decl(invalidTaggedTemplateEscapeSequences.ts, 18, 5))
64+
>tag : Symbol(tag, Decl(invalidTaggedTemplateEscapeSequences.ts, 0, 0))
65+
66+
const a10 = tag`${ 100 }\u{1f622` // \\u{1f622
67+
>a10 : Symbol(a10, Decl(invalidTaggedTemplateEscapeSequences.ts, 19, 5))
68+
>tag : Symbol(tag, Decl(invalidTaggedTemplateEscapeSequences.ts, 0, 0))
69+
70+
const a11 = tag`${ 100 }\u{1f622}` // \u{1f622}
71+
>a11 : Symbol(a11, Decl(invalidTaggedTemplateEscapeSequences.ts, 20, 5))
72+
>tag : Symbol(tag, Decl(invalidTaggedTemplateEscapeSequences.ts, 0, 0))
73+
74+
const a12 = tag`${ 100 }\x` // \\x
75+
>a12 : Symbol(a12, Decl(invalidTaggedTemplateEscapeSequences.ts, 21, 5))
76+
>tag : Symbol(tag, Decl(invalidTaggedTemplateEscapeSequences.ts, 0, 0))
77+
78+
const a13 = tag`${ 100 }\x0` // \\x0
79+
>a13 : Symbol(a13, Decl(invalidTaggedTemplateEscapeSequences.ts, 22, 5))
80+
>tag : Symbol(tag, Decl(invalidTaggedTemplateEscapeSequences.ts, 0, 0))
81+
82+
const a14 = tag`${ 100 }\x00` // \x00
83+
>a14 : Symbol(a14, Decl(invalidTaggedTemplateEscapeSequences.ts, 23, 5))
84+
>tag : Symbol(tag, Decl(invalidTaggedTemplateEscapeSequences.ts, 0, 0))
85+

tests/baselines/reference/invalidTaggedTemplateEscapeSequences_esnext.types renamed to tests/baselines/reference/invalidTaggedTemplateEscapeSequences(target=es2015).types

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
=== tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences_esnext.ts ===
1+
=== tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences.ts ===
22
function tag (str: any, ...args: any[]): any {
33
>tag : (str: any, ...args: any[]) => any
44
>str : any

tests/baselines/reference/invalidTaggedTemplateEscapeSequences_esnext.errors.txt renamed to tests/baselines/reference/invalidTaggedTemplateEscapeSequences(target=es5).errors.txt

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
1-
tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences_esnext.ts(7,18): error TS1125: Hexadecimal digit expected.
2-
tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences_esnext.ts(8,15): error TS1125: Hexadecimal digit expected.
3-
tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences_esnext.ts(8,33): error TS1125: Hexadecimal digit expected.
4-
tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences_esnext.ts(8,75): error TS1125: Hexadecimal digit expected.
5-
tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences_esnext.ts(9,18): error TS1125: Hexadecimal digit expected.
6-
tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences_esnext.ts(9,27): error TS1125: Hexadecimal digit expected.
7-
tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences_esnext.ts(9,51): error TS1125: Hexadecimal digit expected.
1+
tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences.ts(7,18): error TS1125: Hexadecimal digit expected.
2+
tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences.ts(8,15): error TS1125: Hexadecimal digit expected.
3+
tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences.ts(8,33): error TS1125: Hexadecimal digit expected.
4+
tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences.ts(8,75): error TS1125: Hexadecimal digit expected.
5+
tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences.ts(9,18): error TS1125: Hexadecimal digit expected.
6+
tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences.ts(9,27): error TS1125: Hexadecimal digit expected.
7+
tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences.ts(9,51): error TS1125: Hexadecimal digit expected.
88

99

10-
==== tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences_esnext.ts (7 errors) ====
10+
==== tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences.ts (7 errors) ====
1111
function tag (str: any, ...args: any[]): any {
1212
return str
1313
}
Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
//// [invalidTaggedTemplateEscapeSequences.ts]
2+
function tag (str: any, ...args: any[]): any {
3+
return str
4+
}
5+
6+
const a = tag`123`
7+
const b = tag`123 ${100}`
8+
const x = tag`\u{hello} ${ 100 } \xtraordinary ${ 200 } wonderful ${ 300 } \uworld`;
9+
const y = `\u{hello} ${ 100 } \xtraordinary ${ 200 } wonderful ${ 300 } \uworld`; // should error with NoSubstitutionTemplate
10+
const z = tag`\u{hello} \xtraordinary wonderful \uworld` // should work with Tagged NoSubstitutionTemplate
11+
12+
const a1 = tag`${ 100 }\0` // \0
13+
const a2 = tag`${ 100 }\00` // \\00
14+
const a3 = tag`${ 100 }\u` // \\u
15+
const a4 = tag`${ 100 }\u0` // \\u0
16+
const a5 = tag`${ 100 }\u00` // \\u00
17+
const a6 = tag`${ 100 }\u000` // \\u000
18+
const a7 = tag`${ 100 }\u0000` // \u0000
19+
const a8 = tag`${ 100 }\u{` // \\u{
20+
const a9 = tag`${ 100 }\u{10FFFF}` // \\u{10FFFF
21+
const a10 = tag`${ 100 }\u{1f622` // \\u{1f622
22+
const a11 = tag`${ 100 }\u{1f622}` // \u{1f622}
23+
const a12 = tag`${ 100 }\x` // \\x
24+
const a13 = tag`${ 100 }\x0` // \\x0
25+
const a14 = tag`${ 100 }\x00` // \x00
26+
27+
28+
//// [invalidTaggedTemplateEscapeSequences.js]
29+
var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
30+
if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
31+
return cooked;
32+
};
33+
function tag(str) {
34+
var args = [];
35+
for (var _i = 1; _i < arguments.length; _i++) {
36+
args[_i - 1] = arguments[_i];
37+
}
38+
return str;
39+
}
40+
var a = tag(__makeTemplateObject(["123"], ["123"]));
41+
var b = tag(__makeTemplateObject(["123 ", ""], ["123 ", ""]), 100);
42+
var x = tag(__makeTemplateObject([undefined, undefined, " wonderful ", undefined], ["\\u{hello} ", " \\xtraordinary ", " wonderful ", " \\uworld"]), 100, 200, 300);
43+
var y = "hello} " + 100 + " traordinary " + 200 + " wonderful " + 300 + " world"; // should error with NoSubstitutionTemplate
44+
var z = tag(__makeTemplateObject([undefined], ["\\u{hello} \\xtraordinary wonderful \\uworld"])); // should work with Tagged NoSubstitutionTemplate
45+
var a1 = tag(__makeTemplateObject(["", "\0"], ["", "\\0"]), 100); // \0
46+
var a2 = tag(__makeTemplateObject(["", undefined], ["", "\\00"]), 100); // \\00
47+
var a3 = tag(__makeTemplateObject(["", undefined], ["", "\\u"]), 100); // \\u
48+
var a4 = tag(__makeTemplateObject(["", undefined], ["", "\\u0"]), 100); // \\u0
49+
var a5 = tag(__makeTemplateObject(["", undefined], ["", "\\u00"]), 100); // \\u00
50+
var a6 = tag(__makeTemplateObject(["", undefined], ["", "\\u000"]), 100); // \\u000
51+
var a7 = tag(__makeTemplateObject(["", "\0"], ["", "\\u0000"]), 100); // \u0000
52+
var a8 = tag(__makeTemplateObject(["", undefined], ["", "\\u{"]), 100); // \\u{
53+
var a9 = tag(__makeTemplateObject(["", "\uDBFF\uDFFF"], ["", "\\u{10FFFF}"]), 100); // \\u{10FFFF
54+
var a10 = tag(__makeTemplateObject(["", undefined], ["", "\\u{1f622"]), 100); // \\u{1f622
55+
var a11 = tag(__makeTemplateObject(["", "\uD83D\uDE22"], ["", "\\u{1f622}"]), 100); // \u{1f622}
56+
var a12 = tag(__makeTemplateObject(["", undefined], ["", "\\x"]), 100); // \\x
57+
var a13 = tag(__makeTemplateObject(["", undefined], ["", "\\x0"]), 100); // \\x0
58+
var a14 = tag(__makeTemplateObject(["", "\0"], ["", "\\x00"]), 100); // \x00
Lines changed: 85 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,85 @@
1+
=== tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences.ts ===
2+
function tag (str: any, ...args: any[]): any {
3+
>tag : Symbol(tag, Decl(invalidTaggedTemplateEscapeSequences.ts, 0, 0))
4+
>str : Symbol(str, Decl(invalidTaggedTemplateEscapeSequences.ts, 0, 14))
5+
>args : Symbol(args, Decl(invalidTaggedTemplateEscapeSequences.ts, 0, 23))
6+
7+
return str
8+
>str : Symbol(str, Decl(invalidTaggedTemplateEscapeSequences.ts, 0, 14))
9+
}
10+
11+
const a = tag`123`
12+
>a : Symbol(a, Decl(invalidTaggedTemplateEscapeSequences.ts, 4, 5))
13+
>tag : Symbol(tag, Decl(invalidTaggedTemplateEscapeSequences.ts, 0, 0))
14+
15+
const b = tag`123 ${100}`
16+
>b : Symbol(b, Decl(invalidTaggedTemplateEscapeSequences.ts, 5, 5))
17+
>tag : Symbol(tag, Decl(invalidTaggedTemplateEscapeSequences.ts, 0, 0))
18+
19+
const x = tag`\u{hello} ${ 100 } \xtraordinary ${ 200 } wonderful ${ 300 } \uworld`;
20+
>x : Symbol(x, Decl(invalidTaggedTemplateEscapeSequences.ts, 6, 5))
21+
>tag : Symbol(tag, Decl(invalidTaggedTemplateEscapeSequences.ts, 0, 0))
22+
23+
const y = `\u{hello} ${ 100 } \xtraordinary ${ 200 } wonderful ${ 300 } \uworld`; // should error with NoSubstitutionTemplate
24+
>y : Symbol(y, Decl(invalidTaggedTemplateEscapeSequences.ts, 7, 5))
25+
26+
const z = tag`\u{hello} \xtraordinary wonderful \uworld` // should work with Tagged NoSubstitutionTemplate
27+
>z : Symbol(z, Decl(invalidTaggedTemplateEscapeSequences.ts, 8, 5))
28+
>tag : Symbol(tag, Decl(invalidTaggedTemplateEscapeSequences.ts, 0, 0))
29+
30+
const a1 = tag`${ 100 }\0` // \0
31+
>a1 : Symbol(a1, Decl(invalidTaggedTemplateEscapeSequences.ts, 10, 5))
32+
>tag : Symbol(tag, Decl(invalidTaggedTemplateEscapeSequences.ts, 0, 0))
33+
34+
const a2 = tag`${ 100 }\00` // \\00
35+
>a2 : Symbol(a2, Decl(invalidTaggedTemplateEscapeSequences.ts, 11, 5))
36+
>tag : Symbol(tag, Decl(invalidTaggedTemplateEscapeSequences.ts, 0, 0))
37+
38+
const a3 = tag`${ 100 }\u` // \\u
39+
>a3 : Symbol(a3, Decl(invalidTaggedTemplateEscapeSequences.ts, 12, 5))
40+
>tag : Symbol(tag, Decl(invalidTaggedTemplateEscapeSequences.ts, 0, 0))
41+
42+
const a4 = tag`${ 100 }\u0` // \\u0
43+
>a4 : Symbol(a4, Decl(invalidTaggedTemplateEscapeSequences.ts, 13, 5))
44+
>tag : Symbol(tag, Decl(invalidTaggedTemplateEscapeSequences.ts, 0, 0))
45+
46+
const a5 = tag`${ 100 }\u00` // \\u00
47+
>a5 : Symbol(a5, Decl(invalidTaggedTemplateEscapeSequences.ts, 14, 5))
48+
>tag : Symbol(tag, Decl(invalidTaggedTemplateEscapeSequences.ts, 0, 0))
49+
50+
const a6 = tag`${ 100 }\u000` // \\u000
51+
>a6 : Symbol(a6, Decl(invalidTaggedTemplateEscapeSequences.ts, 15, 5))
52+
>tag : Symbol(tag, Decl(invalidTaggedTemplateEscapeSequences.ts, 0, 0))
53+
54+
const a7 = tag`${ 100 }\u0000` // \u0000
55+
>a7 : Symbol(a7, Decl(invalidTaggedTemplateEscapeSequences.ts, 16, 5))
56+
>tag : Symbol(tag, Decl(invalidTaggedTemplateEscapeSequences.ts, 0, 0))
57+
58+
const a8 = tag`${ 100 }\u{` // \\u{
59+
>a8 : Symbol(a8, Decl(invalidTaggedTemplateEscapeSequences.ts, 17, 5))
60+
>tag : Symbol(tag, Decl(invalidTaggedTemplateEscapeSequences.ts, 0, 0))
61+
62+
const a9 = tag`${ 100 }\u{10FFFF}` // \\u{10FFFF
63+
>a9 : Symbol(a9, Decl(invalidTaggedTemplateEscapeSequences.ts, 18, 5))
64+
>tag : Symbol(tag, Decl(invalidTaggedTemplateEscapeSequences.ts, 0, 0))
65+
66+
const a10 = tag`${ 100 }\u{1f622` // \\u{1f622
67+
>a10 : Symbol(a10, Decl(invalidTaggedTemplateEscapeSequences.ts, 19, 5))
68+
>tag : Symbol(tag, Decl(invalidTaggedTemplateEscapeSequences.ts, 0, 0))
69+
70+
const a11 = tag`${ 100 }\u{1f622}` // \u{1f622}
71+
>a11 : Symbol(a11, Decl(invalidTaggedTemplateEscapeSequences.ts, 20, 5))
72+
>tag : Symbol(tag, Decl(invalidTaggedTemplateEscapeSequences.ts, 0, 0))
73+
74+
const a12 = tag`${ 100 }\x` // \\x
75+
>a12 : Symbol(a12, Decl(invalidTaggedTemplateEscapeSequences.ts, 21, 5))
76+
>tag : Symbol(tag, Decl(invalidTaggedTemplateEscapeSequences.ts, 0, 0))
77+
78+
const a13 = tag`${ 100 }\x0` // \\x0
79+
>a13 : Symbol(a13, Decl(invalidTaggedTemplateEscapeSequences.ts, 22, 5))
80+
>tag : Symbol(tag, Decl(invalidTaggedTemplateEscapeSequences.ts, 0, 0))
81+
82+
const a14 = tag`${ 100 }\x00` // \x00
83+
>a14 : Symbol(a14, Decl(invalidTaggedTemplateEscapeSequences.ts, 23, 5))
84+
>tag : Symbol(tag, Decl(invalidTaggedTemplateEscapeSequences.ts, 0, 0))
85+

tests/baselines/reference/invalidTaggedTemplateEscapeSequences_es2015.types renamed to tests/baselines/reference/invalidTaggedTemplateEscapeSequences(target=es5).types

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
=== tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences_es2015.ts ===
1+
=== tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences.ts ===
22
function tag (str: any, ...args: any[]): any {
33
>tag : (str: any, ...args: any[]) => any
44
>str : any
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences.ts(7,18): error TS1125: Hexadecimal digit expected.
2+
tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences.ts(8,15): error TS1125: Hexadecimal digit expected.
3+
tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences.ts(8,33): error TS1125: Hexadecimal digit expected.
4+
tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences.ts(8,75): error TS1125: Hexadecimal digit expected.
5+
tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences.ts(9,18): error TS1125: Hexadecimal digit expected.
6+
tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences.ts(9,27): error TS1125: Hexadecimal digit expected.
7+
tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences.ts(9,51): error TS1125: Hexadecimal digit expected.
8+
9+
10+
==== tests/cases/conformance/es2018/invalidTaggedTemplateEscapeSequences.ts (7 errors) ====
11+
function tag (str: any, ...args: any[]): any {
12+
return str
13+
}
14+
15+
const a = tag`123`
16+
const b = tag`123 ${100}`
17+
const x = tag`\u{hello} ${ 100 } \xtraordinary ${ 200 } wonderful ${ 300 } \uworld`;
18+
19+
!!! error TS1125: Hexadecimal digit expected.
20+
const y = `\u{hello} ${ 100 } \xtraordinary ${ 200 } wonderful ${ 300 } \uworld`; // should error with NoSubstitutionTemplate
21+
22+
!!! error TS1125: Hexadecimal digit expected.
23+
24+
!!! error TS1125: Hexadecimal digit expected.
25+
26+
!!! error TS1125: Hexadecimal digit expected.
27+
const z = tag`\u{hello} \xtraordinary wonderful \uworld` // should work with Tagged NoSubstitutionTemplate
28+
29+
!!! error TS1125: Hexadecimal digit expected.
30+
31+
!!! error TS1125: Hexadecimal digit expected.
32+
33+
!!! error TS1125: Hexadecimal digit expected.
34+
35+
const a1 = tag`${ 100 }\0` // \0
36+
const a2 = tag`${ 100 }\00` // \\00
37+
const a3 = tag`${ 100 }\u` // \\u
38+
const a4 = tag`${ 100 }\u0` // \\u0
39+
const a5 = tag`${ 100 }\u00` // \\u00
40+
const a6 = tag`${ 100 }\u000` // \\u000
41+
const a7 = tag`${ 100 }\u0000` // \u0000
42+
const a8 = tag`${ 100 }\u{` // \\u{
43+
const a9 = tag`${ 100 }\u{10FFFF}` // \\u{10FFFF
44+
const a10 = tag`${ 100 }\u{1f622` // \\u{1f622
45+
const a11 = tag`${ 100 }\u{1f622}` // \u{1f622}
46+
const a12 = tag`${ 100 }\x` // \\x
47+
const a13 = tag`${ 100 }\x0` // \\x0
48+
const a14 = tag`${ 100 }\x00` // \x00
49+

tests/baselines/reference/invalidTaggedTemplateEscapeSequences_esnext.js renamed to tests/baselines/reference/invalidTaggedTemplateEscapeSequences(target=esnext).js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
//// [invalidTaggedTemplateEscapeSequences_esnext.ts]
1+
//// [invalidTaggedTemplateEscapeSequences.ts]
22
function tag (str: any, ...args: any[]): any {
33
return str
44
}
@@ -25,7 +25,7 @@ const a13 = tag`${ 100 }\x0` // \\x0
2525
const a14 = tag`${ 100 }\x00` // \x00
2626
2727
28-
//// [invalidTaggedTemplateEscapeSequences_esnext.js]
28+
//// [invalidTaggedTemplateEscapeSequences.js]
2929
function tag(str, ...args) {
3030
return str;
3131
}

0 commit comments

Comments
 (0)