Skip to content

Commit 3d6312a

Browse files
committed
Merge pull request #5643 from Microsoft/lambdaSourceMap
Fix sourcemap emit for the labda expression that is on another line
2 parents e3a845a + 127a30e commit 3d6312a

7 files changed

+90
-0
lines changed

src/compiler/emitter.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5003,8 +5003,10 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, Promi
50035003
increaseIndent();
50045004
writeLine();
50055005
emitLeadingComments(node.body);
5006+
emitStart(body);
50065007
write("return ");
50075008
emit(body);
5009+
emitEnd(body);
50085010
write(";");
50095011
emitTrailingComments(node.body);
50105012

tests/baselines/reference/sourceMapValidationLambdaSpanningMultipleLines.js

Lines changed: 10 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

tests/baselines/reference/sourceMapValidationLambdaSpanningMultipleLines.js.map

Lines changed: 2 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
===================================================================
2+
JsFile: sourceMapValidationLambdaSpanningMultipleLines.js
3+
mapUrl: sourceMapValidationLambdaSpanningMultipleLines.js.map
4+
sourceRoot:
5+
sources: sourceMapValidationLambdaSpanningMultipleLines.ts
6+
===================================================================
7+
-------------------------------------------------------------------
8+
emittedFile:tests/cases/compiler/sourceMapValidationLambdaSpanningMultipleLines.js
9+
sourceFile:sourceMapValidationLambdaSpanningMultipleLines.ts
10+
-------------------------------------------------------------------
11+
>>>(function (item) {
12+
1 >
13+
2 >^
14+
3 > ^^^^^^^^^^
15+
4 > ^^^^
16+
5 > ^^->
17+
1 >
18+
2 >(
19+
3 > (
20+
4 > item: string
21+
1 >Emitted(1, 1) Source(1, 1) + SourceIndex(0)
22+
2 >Emitted(1, 2) Source(1, 2) + SourceIndex(0)
23+
3 >Emitted(1, 12) Source(1, 3) + SourceIndex(0)
24+
4 >Emitted(1, 16) Source(1, 15) + SourceIndex(0)
25+
---
26+
>>> return item;
27+
1->^^^^
28+
2 > ^^^^^^^
29+
3 > ^^^^
30+
1->) =>
31+
>
32+
2 >
33+
3 > item
34+
1->Emitted(2, 5) Source(2, 5) + SourceIndex(0)
35+
2 >Emitted(2, 12) Source(2, 5) + SourceIndex(0)
36+
3 >Emitted(2, 16) Source(2, 9) + SourceIndex(0)
37+
---
38+
>>>});
39+
1 >
40+
2 >^
41+
3 > ^
42+
4 > ^
43+
5 > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^->
44+
1 >
45+
2 >item
46+
3 >
47+
> )
48+
4 >
49+
1 >Emitted(3, 1) Source(2, 5) + SourceIndex(0)
50+
2 >Emitted(3, 2) Source(2, 9) + SourceIndex(0)
51+
3 >Emitted(3, 3) Source(3, 2) + SourceIndex(0)
52+
4 >Emitted(3, 4) Source(3, 2) + SourceIndex(0)
53+
---
54+
>>>//# sourceMappingURL=sourceMapValidationLambdaSpanningMultipleLines.js.map
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
=== tests/cases/compiler/sourceMapValidationLambdaSpanningMultipleLines.ts ===
2+
((item: string) =>
3+
>item : Symbol(item, Decl(sourceMapValidationLambdaSpanningMultipleLines.ts, 0, 2))
4+
5+
item
6+
>item : Symbol(item, Decl(sourceMapValidationLambdaSpanningMultipleLines.ts, 0, 2))
7+
8+
)
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
=== tests/cases/compiler/sourceMapValidationLambdaSpanningMultipleLines.ts ===
2+
((item: string) =>
3+
>((item: string) => item) : (item: string) => string
4+
>(item: string) => item : (item: string) => string
5+
>item : string
6+
7+
item
8+
>item : string
9+
10+
)
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
// @sourcemap: true
2+
((item: string) =>
3+
item
4+
)

0 commit comments

Comments
 (0)