Skip to content

Commit 5837105

Browse files
committed
check during compiling
1 parent 8dfa4c7 commit 5837105

File tree

5 files changed

+16
-11
lines changed

5 files changed

+16
-11
lines changed

src/parser.ts

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2483,16 +2483,8 @@ export class Parser extends DiagnosticEmitter {
24832483
);
24842484
while (!tn.skip(Token.CLOSEBRACE)) {
24852485
let member = this.parseTopLevelStatement(tn, declaration);
2486-
if (member) {
2487-
if (member.kind == NodeKind.EXPORT) {
2488-
this.error(
2489-
DiagnosticCode.A_default_export_can_only_be_used_in_a_module,
2490-
member.range,
2491-
);
2492-
return null;
2493-
}
2494-
members.push(member);
2495-
} else {
2486+
if (member) members.push(member);
2487+
else {
24962488
this.skipStatement(tn);
24972489
if (tn.skip(Token.ENDOFFILE)) {
24982490
this.error(

src/program.ts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2565,6 +2565,13 @@ export class Program extends DiagnosticEmitter {
25652565
this.initializeVariables(<VariableStatement>member, original);
25662566
break;
25672567
}
2568+
case NodeKind.EXPORT: {
2569+
this.error(
2570+
DiagnosticCode.A_default_export_can_only_be_used_in_a_module,
2571+
member.range,
2572+
);
2573+
break;
2574+
}
25682575
default: assert(false); // namespace member expected
25692576
}
25702577
}
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
{
2+
"asc_flags": [
3+
],
4+
"stderr": [
5+
"TS1319: A default export can only be used in a module."
6+
]
7+
}

tests/parser/export-default-in-namespace.ts.fixture.ts

Lines changed: 0 additions & 1 deletion
This file was deleted.

0 commit comments

Comments
 (0)