Merge pull request #13913 from Microsoft/allowExportDeclarationsInAmbientNamespaces

Allow export declarations in ambient namespaces
This commit is contained in:
Mohamed Hegazy
2017-02-14 11:44:07 -08:00
committed by GitHub
8 changed files with 108 additions and 1 deletions

View File

@@ -19540,7 +19540,9 @@ namespace ts {
forEach(node.exportClause.elements, checkExportSpecifier);
const inAmbientExternalModule = node.parent.kind === SyntaxKind.ModuleBlock && isAmbientModule(node.parent.parent);
if (node.parent.kind !== SyntaxKind.SourceFile && !inAmbientExternalModule) {
const inAmbientNamespaceDeclaration = !inAmbientExternalModule && node.parent.kind === SyntaxKind.ModuleBlock &&
!node.moduleSpecifier && isInAmbientContext(node);
if (node.parent.kind !== SyntaxKind.SourceFile && !inAmbientExternalModule && !inAmbientNamespaceDeclaration) {
error(node, Diagnostics.Export_declarations_are_not_permitted_in_a_namespace);
}
}