File tree 4 files changed +25
-3
lines changed
4 files changed +25
-3
lines changed Original file line number Diff line number Diff line change @@ -17714,9 +17714,11 @@ namespace ts {
17714
17714
}
17715
17715
17716
17716
function checkGrammarModuleElementContext(node: Statement, errorMessage: DiagnosticMessage): boolean {
17717
- if (node.parent.kind !== SyntaxKind.SourceFile && node.parent.kind !== SyntaxKind.ModuleBlock && node.parent.kind !== SyntaxKind.ModuleDeclaration) {
17718
- return grammarErrorOnFirstToken(node, errorMessage);
17717
+ const isInAppropriateContext = node.parent.kind === SyntaxKind.SourceFile || node.parent.kind === SyntaxKind.ModuleBlock || node.parent.kind === SyntaxKind.ModuleDeclaration;
17718
+ if (!isInAppropriateContext) {
17719
+ grammarErrorOnFirstToken(node, errorMessage);
17719
17720
}
17721
+ return !isInAppropriateContext;
17720
17722
}
17721
17723
17722
17724
function checkExportSpecifier(node: ExportSpecifier) {
@@ -17757,7 +17759,7 @@ namespace ts {
17757
17759
checkExpressionCached(node.expression);
17758
17760
}
17759
17761
17760
- checkExternalModuleExports(<SourceFile | ModuleDeclaration> container);
17762
+ checkExternalModuleExports(container);
17761
17763
17762
17764
if (node.isExportEquals && !isInAmbientContext(node)) {
17763
17765
if (modulekind === ModuleKind.ES6) {
Original file line number Diff line number Diff line change
1
+ tests/cases/compiler/exportInFunction.ts(3,1): error TS1005: '}' expected.
2
+
3
+
4
+ ==== tests/cases/compiler/exportInFunction.ts (1 errors) ====
5
+ function f() {
6
+ export = 0;
7
+
8
+
9
+ !!! error TS1005: '}' expected.
Original file line number Diff line number Diff line change
1
+ //// [exportInFunction.ts]
2
+ function f ( ) {
3
+ export = 0 ;
4
+
5
+
6
+ //// [exportInFunction.js]
7
+ function f ( ) {
8
+ export = 0 ;
9
+ }
Original file line number Diff line number Diff line change
1
+ function f ( ) {
2
+ export = 0 ;
You can’t perform that action at this time.
0 commit comments