diff --git a/src/compiler/emitter.ts b/src/compiler/emitter.ts
index a997e231dfa..6f3491ed1fa 100644
--- a/src/compiler/emitter.ts
+++ b/src/compiler/emitter.ts
@@ -1633,16 +1633,19 @@ module ts {
if (node.externalModuleName && node.parent.kind === SyntaxKind.SourceFile && compilerOptions.module === ModuleKind.AMD) {
if (node.flags & NodeFlags.Export) {
writeLine();
+ emitLeadingComments(node);
emitStart(node);
emitModuleMemberName(node);
write(" = ");
emit(node.name);
write(";");
emitEnd(node);
+ emitTrailingComments(node);
}
}
else {
writeLine();
+ emitLeadingComments(node);
emitStart(node);
if (!(node.flags & NodeFlags.Export)) write("var ");
emitModuleMemberName(node);
@@ -1659,6 +1662,7 @@ module ts {
}
write(";");
emitEnd(node);
+ emitTrailingComments(node);
}
}
}
diff --git a/tests/baselines/reference/aliasUsedAsNameValue.js b/tests/baselines/reference/aliasUsedAsNameValue.js
index af9ab422ab5..4ae9a6a530c 100644
--- a/tests/baselines/reference/aliasUsedAsNameValue.js
+++ b/tests/baselines/reference/aliasUsedAsNameValue.js
@@ -26,6 +26,8 @@ function b(a) {
}
exports.b = b;
//// [aliasUsedAsNameValue_2.js]
+///
+///
var mod = require("aliasUsedAsNameValue_0");
var b = require("aliasUsedAsNameValue_1");
exports.a = function () {
diff --git a/tests/baselines/reference/amdDependencyComment1.js b/tests/baselines/reference/amdDependencyComment1.js
index 18fa8147e54..ee4ed88ff74 100644
--- a/tests/baselines/reference/amdDependencyComment1.js
+++ b/tests/baselines/reference/amdDependencyComment1.js
@@ -5,5 +5,6 @@ import m1 = require("m2")
m1.f();
//// [amdDependencyComment1.js]
+///
var m1 = require("m2");
m1.f();
diff --git a/tests/baselines/reference/declFileForExportedImport.js b/tests/baselines/reference/declFileForExportedImport.js
index 2934d3e7b73..110865677c1 100644
--- a/tests/baselines/reference/declFileForExportedImport.js
+++ b/tests/baselines/reference/declFileForExportedImport.js
@@ -14,6 +14,7 @@ var z = b.x;
//// [declFileForExportedImport_0.js]
exports.x;
//// [declFileForExportedImport_1.js]
+///
exports.a = require('declFileForExportedImport_0');
var y = exports.a.x;
exports.b = exports.a;
diff --git a/tests/baselines/reference/declFileImportModuleWithExportAssignment.js b/tests/baselines/reference/declFileImportModuleWithExportAssignment.js
index c07ac176806..b6edb961b36 100644
--- a/tests/baselines/reference/declFileImportModuleWithExportAssignment.js
+++ b/tests/baselines/reference/declFileImportModuleWithExportAssignment.js
@@ -30,6 +30,7 @@ a.test1(null, null, null);
var m2;
module.exports = m2;
//// [declFileImportModuleWithExportAssignment_1.js]
+/**This is on import declaration*/
var a1 = require("declFileImportModuleWithExportAssignment_0");
exports.a = a1;
exports.a.test1(null, null, null);
diff --git a/tests/baselines/reference/enumFromExternalModule.js b/tests/baselines/reference/enumFromExternalModule.js
index 7d15d9c394b..8e92cbbbda7 100644
--- a/tests/baselines/reference/enumFromExternalModule.js
+++ b/tests/baselines/reference/enumFromExternalModule.js
@@ -16,5 +16,6 @@ var x = f.Mode.Open;
})(exports.Mode || (exports.Mode = {}));
var Mode = exports.Mode;
//// [enumFromExternalModule_1.js]
+///
var f = require('enumFromExternalModule_0');
var x = 0 /* Open */;
diff --git a/tests/baselines/reference/exportEqualMemberMissing.js b/tests/baselines/reference/exportEqualMemberMissing.js
index 714fb700198..17a44dd50dd 100644
--- a/tests/baselines/reference/exportEqualMemberMissing.js
+++ b/tests/baselines/reference/exportEqualMemberMissing.js
@@ -25,5 +25,6 @@ connect().use(connect.static('foo')); // Error 1 The property 'static' does not
var server;
module.exports = server;
//// [exportEqualMemberMissing_1.js]
+///
var connect = require('exportEqualMemberMissing_0');
connect().use(connect.static('foo'));
diff --git a/tests/baselines/reference/exportImportAlias.js b/tests/baselines/reference/exportImportAlias.js
index 05e950a3919..f445d7b2bc5 100644
--- a/tests/baselines/reference/exportImportAlias.js
+++ b/tests/baselines/reference/exportImportAlias.js
@@ -110,6 +110,7 @@ var X;
})(X || (X = {}));
var Z;
(function (Z) {
+ // 'y' should be a fundule here
Z.y = X.Y;
})(Z || (Z = {}));
var m = Z.y();
diff --git a/tests/baselines/reference/externalModuleRefernceResolutionOrderInImportDeclaration.js b/tests/baselines/reference/externalModuleRefernceResolutionOrderInImportDeclaration.js
index 72517dfcb42..edbdf6b90a5 100644
--- a/tests/baselines/reference/externalModuleRefernceResolutionOrderInImportDeclaration.js
+++ b/tests/baselines/reference/externalModuleRefernceResolutionOrderInImportDeclaration.js
@@ -24,6 +24,7 @@ function foo() {
exports.foo = foo;
;
//// [externalModuleRefernceResolutionOrderInImportDeclaration_file3.js]
+///
var file1 = require('externalModuleRefernceResolutionOrderInImportDeclaration_file1');
file1.foo();
file1.bar();
diff --git a/tests/baselines/reference/importDecl.js b/tests/baselines/reference/importDecl.js
index b6c9715df64..5073753f3cb 100644
--- a/tests/baselines/reference/importDecl.js
+++ b/tests/baselines/reference/importDecl.js
@@ -135,6 +135,11 @@ function foo2() {
}
exports.foo2 = foo2;
//// [importDecl_1.js]
+///
+///
+///
+///
+///
var m4 = require("importDecl_require");
exports.x4 = m4.x;
exports.d4 = m4.d;
@@ -148,11 +153,14 @@ exports.f4 = m4.foo();
var f3 = m4.foo();
})(exports.m1 || (exports.m1 = {}));
var m1 = exports.m1;
+//Emit global only usage
var glo_m4 = require("importDecl_require1");
exports.useGlo_m4_d4 = glo_m4.d;
exports.useGlo_m4_f4 = glo_m4.foo();
+//Emit even when used just in function type
var fncOnly_m4 = require("importDecl_require2");
exports.useFncOnly_m4_f4 = fncOnly_m4.foo();
+// only used privately no need to emit
var private_m4 = require("importDecl_require3");
(function (usePrivate_m4_m1) {
var x3 = private_m4.x;
@@ -160,8 +168,10 @@ var private_m4 = require("importDecl_require3");
var f3 = private_m4.foo();
})(exports.usePrivate_m4_m1 || (exports.usePrivate_m4_m1 = {}));
var usePrivate_m4_m1 = exports.usePrivate_m4_m1;
+// Do not emit unused import
var m5 = require("importDecl_require4");
exports.d = m5.foo2();
+// Do not emit multiple used import statements
var multiImport_m4 = require("importDecl_require");
exports.useMultiImport_m4_x4 = multiImport_m4.x;
exports.useMultiImport_m4_d4 = multiImport_m4.d;
diff --git a/tests/baselines/reference/importUsedInExtendsList1.js b/tests/baselines/reference/importUsedInExtendsList1.js
index e9b7b142e16..3c9f296d2c2 100644
--- a/tests/baselines/reference/importUsedInExtendsList1.js
+++ b/tests/baselines/reference/importUsedInExtendsList1.js
@@ -25,6 +25,7 @@ var __extends = this.__extends || function (d, b) {
__.prototype = b.prototype;
d.prototype = new __();
};
+///
var foo = require('importUsedInExtendsList1_require');
var Sub = (function (_super) {
__extends(Sub, _super);
diff --git a/tests/baselines/reference/localAliasExportAssignment.js b/tests/baselines/reference/localAliasExportAssignment.js
index 66f30c04e36..ce0f57d57cb 100644
--- a/tests/baselines/reference/localAliasExportAssignment.js
+++ b/tests/baselines/reference/localAliasExportAssignment.js
@@ -20,5 +20,6 @@ connect();
var server;
module.exports = server;
//// [localAliasExportAssignment_1.js]
+///
var connect = require('localAliasExportAssignment_0');
connect();
diff --git a/tests/baselines/reference/privacyCannotNameAccessorDeclFile.js b/tests/baselines/reference/privacyCannotNameAccessorDeclFile.js
index 947c3c1fc0d..fb8a9c8e241 100644
--- a/tests/baselines/reference/privacyCannotNameAccessorDeclFile.js
+++ b/tests/baselines/reference/privacyCannotNameAccessorDeclFile.js
@@ -164,6 +164,7 @@ exports.createWidget1 = createWidget1;
})(exports.SpecializedWidget || (exports.SpecializedWidget = {}));
var SpecializedWidget = exports.SpecializedWidget;
//// [privacyCannotNameAccessorDeclFile_exporter.js]
+///
var Widgets = require("privacyCannotNameAccessorDeclFile_Widgets");
var Widgets1 = require("GlobalWidgets");
function createExportedWidget1() {
diff --git a/tests/baselines/reference/privacyCannotNameVarTypeDeclFile.js b/tests/baselines/reference/privacyCannotNameVarTypeDeclFile.js
index d113b0a8095..3a95daf0ede 100644
--- a/tests/baselines/reference/privacyCannotNameVarTypeDeclFile.js
+++ b/tests/baselines/reference/privacyCannotNameVarTypeDeclFile.js
@@ -128,6 +128,7 @@ exports.createWidget1 = createWidget1;
})(exports.SpecializedWidget || (exports.SpecializedWidget = {}));
var SpecializedWidget = exports.SpecializedWidget;
//// [privacyCannotNameVarTypeDeclFile_exporter.js]
+///
var Widgets = require("privacyCannotNameVarTypeDeclFile_Widgets");
var Widgets1 = require("GlobalWidgets");
function createExportedWidget1() {
diff --git a/tests/baselines/reference/privacyFunctionCannotNameParameterTypeDeclFile.js b/tests/baselines/reference/privacyFunctionCannotNameParameterTypeDeclFile.js
index 3db10b3da1a..42250b88e89 100644
--- a/tests/baselines/reference/privacyFunctionCannotNameParameterTypeDeclFile.js
+++ b/tests/baselines/reference/privacyFunctionCannotNameParameterTypeDeclFile.js
@@ -184,6 +184,7 @@ exports.createWidget1 = createWidget1;
})(exports.SpecializedWidget || (exports.SpecializedWidget = {}));
var SpecializedWidget = exports.SpecializedWidget;
//// [privacyFunctionCannotNameParameterTypeDeclFile_exporter.js]
+///
var Widgets = require("privacyFunctionCannotNameParameterTypeDeclFile_Widgets");
var Widgets1 = require("GlobalWidgets");
function createExportedWidget1() {
diff --git a/tests/baselines/reference/privacyFunctionCannotNameReturnTypeDeclFile.js b/tests/baselines/reference/privacyFunctionCannotNameReturnTypeDeclFile.js
index 603a51467e8..75a91f38c54 100644
--- a/tests/baselines/reference/privacyFunctionCannotNameReturnTypeDeclFile.js
+++ b/tests/baselines/reference/privacyFunctionCannotNameReturnTypeDeclFile.js
@@ -191,6 +191,7 @@ exports.createWidget1 = createWidget1;
})(exports.SpecializedWidget || (exports.SpecializedWidget = {}));
var SpecializedWidget = exports.SpecializedWidget;
//// [privacyFunctionReturnTypeDeclFile_exporter.js]
+///
var Widgets = require("privacyFunctionReturnTypeDeclFile_Widgets");
var Widgets1 = require("GlobalWidgets");
function createExportedWidget1() {
diff --git a/tests/baselines/reference/privacyGloImport.js b/tests/baselines/reference/privacyGloImport.js
index b03cedf3c78..db29e2ae2fa 100644
--- a/tests/baselines/reference/privacyGloImport.js
+++ b/tests/baselines/reference/privacyGloImport.js
@@ -185,6 +185,20 @@ var m1;
m1_M2_private.v1 = c1;
m1_M2_private.v2;
})(m1_M2_private || (m1_M2_private = {}));
+ //export declare module "m1_M3_public" {
+ // export function f1();
+ // export class c1 {
+ // }
+ // export var v1: { new (): c1; };
+ // export var v2: c1;
+ //}
+ //declare module "m1_M4_private" {
+ // export function f1();
+ // export class c1 {
+ // }
+ // export var v1: { new (): c1; };
+ // export var v2: c1;
+ //}
var m1_im1_private = m1_M1_public;
m1.m1_im1_private_v1_public = m1_im1_private.c1;
m1.m1_im1_private_v2_public = new m1_im1_private.c1();
@@ -203,6 +217,24 @@ var m1;
var m1_im2_private_v2_private = new m1_im2_private.c1();
var m1_im2_private_v3_private = m1_im2_private.f1;
var m1_im2_private_v4_private = m1_im2_private.f1();
+ //import m1_im3_private = require("m1_M3_public");
+ //export var m1_im3_private_v1_public = m1_im3_private.c1;
+ //export var m1_im3_private_v2_public = new m1_im3_private.c1();
+ //export var m1_im3_private_v3_public = m1_im3_private.f1;
+ //export var m1_im3_private_v4_public = m1_im3_private.f1();
+ //var m1_im3_private_v1_private = m1_im3_private.c1;
+ //var m1_im3_private_v2_private = new m1_im3_private.c1();
+ //var m1_im3_private_v3_private = m1_im3_private.f1;
+ //var m1_im3_private_v4_private = m1_im3_private.f1();
+ //import m1_im4_private = require("m1_M4_private");
+ //export var m1_im4_private_v1_public = m1_im4_private.c1;
+ //export var m1_im4_private_v2_public = new m1_im4_private.c1();
+ //export var m1_im4_private_v3_public = m1_im4_private.f1;
+ //export var m1_im4_private_v4_public = m1_im4_private.f1();
+ //var m1_im4_private_v1_private = m1_im4_private.c1;
+ //var m1_im4_private_v2_private = new m1_im4_private.c1();
+ //var m1_im4_private_v3_private = m1_im4_private.f1;
+ //var m1_im4_private_v4_private = m1_im4_private.f1();
m1.m1_im1_public = m1_M1_public;
m1.m1_im2_public = m1_M2_private;
})(m1 || (m1 = {}));
diff --git a/tests/baselines/reference/privacyImport.js b/tests/baselines/reference/privacyImport.js
index ad806dd4809..c093903106e 100644
--- a/tests/baselines/reference/privacyImport.js
+++ b/tests/baselines/reference/privacyImport.js
@@ -388,6 +388,20 @@ export module m3 {
m1_M2_private.v1 = c1;
m1_M2_private.v2;
})(m1_M2_private || (m1_M2_private = {}));
+ //export declare module "m1_M3_public" {
+ // export function f1();
+ // export class c1 {
+ // }
+ // export var v1: { new (): c1; };
+ // export var v2: c1;
+ //}
+ //declare module "m1_M4_private" {
+ // export function f1();
+ // export class c1 {
+ // }
+ // export var v1: { new (): c1; };
+ // export var v2: c1;
+ //}
var m1_im1_private = m1_M1_public;
m1.m1_im1_private_v1_public = m1_im1_private.c1;
m1.m1_im1_private_v2_public = new m1_im1_private.c1();
@@ -406,6 +420,24 @@ export module m3 {
var m1_im2_private_v2_private = new m1_im2_private.c1();
var m1_im2_private_v3_private = m1_im2_private.f1;
var m1_im2_private_v4_private = m1_im2_private.f1();
+ //import m1_im3_private = require("m1_M3_public");
+ //export var m1_im3_private_v1_public = m1_im3_private.c1;
+ //export var m1_im3_private_v2_public = new m1_im3_private.c1();
+ //export var m1_im3_private_v3_public = m1_im3_private.f1;
+ //export var m1_im3_private_v4_public = m1_im3_private.f1();
+ //var m1_im3_private_v1_private = m1_im3_private.c1;
+ //var m1_im3_private_v2_private = new m1_im3_private.c1();
+ //var m1_im3_private_v3_private = m1_im3_private.f1;
+ //var m1_im3_private_v4_private = m1_im3_private.f1();
+ //import m1_im4_private = require("m1_M4_private");
+ //export var m1_im4_private_v1_public = m1_im4_private.c1;
+ //export var m1_im4_private_v2_public = new m1_im4_private.c1();
+ //export var m1_im4_private_v3_public = m1_im4_private.f1;
+ //export var m1_im4_private_v4_public = m1_im4_private.f1();
+ //var m1_im4_private_v1_private = m1_im4_private.c1;
+ //var m1_im4_private_v2_private = new m1_im4_private.c1();
+ //var m1_im4_private_v3_private = m1_im4_private.f1;
+ //var m1_im4_private_v4_private = m1_im4_private.f1();
m1.m1_im1_public = m1_M1_public;
m1.m1_im2_public = m1_M2_private;
})(exports.m1 || (exports.m1 = {}));
@@ -442,6 +474,20 @@ var m2;
m2_M2_private.v1 = c1;
m2_M2_private.v2;
})(m2_M2_private || (m2_M2_private = {}));
+ //export declare module "m2_M3_public" {
+ // export function f1();
+ // export class c1 {
+ // }
+ // export var v1: { new (): c1; };
+ // export var v2: c1;
+ //}
+ //declare module "m2_M4_private" {
+ // export function f1();
+ // export class c1 {
+ // }
+ // export var v1: { new (): c1; };
+ // export var v2: c1;
+ //}
var m1_im1_private = m2_M1_public;
m2.m1_im1_private_v1_public = m1_im1_private.c1;
m2.m1_im1_private_v2_public = new m1_im1_private.c1();
@@ -460,6 +506,25 @@ var m2;
var m1_im2_private_v2_private = new m1_im2_private.c1();
var m1_im2_private_v3_private = m1_im2_private.f1;
var m1_im2_private_v4_private = m1_im2_private.f1();
+ //import m1_im3_private = require("m2_M3_public");
+ //export var m1_im3_private_v1_public = m1_im3_private.c1;
+ //export var m1_im3_private_v2_public = new m1_im3_private.c1();
+ //export var m1_im3_private_v3_public = m1_im3_private.f1;
+ //export var m1_im3_private_v4_public = m1_im3_private.f1();
+ //var m1_im3_private_v1_private = m1_im3_private.c1;
+ //var m1_im3_private_v2_private = new m1_im3_private.c1();
+ //var m1_im3_private_v3_private = m1_im3_private.f1;
+ //var m1_im3_private_v4_private = m1_im3_private.f1();
+ //import m1_im4_private = require("m2_M4_private");
+ //export var m1_im4_private_v1_public = m1_im4_private.c1;
+ //export var m1_im4_private_v2_public = new m1_im4_private.c1();
+ //export var m1_im4_private_v3_public = m1_im4_private.f1;
+ //export var m1_im4_private_v4_public = m1_im4_private.f1();
+ //var m1_im4_private_v1_private = m1_im4_private.c1;
+ //var m1_im4_private_v2_private = new m1_im4_private.c1();
+ //var m1_im4_private_v3_private = m1_im4_private.f1;
+ //var m1_im4_private_v4_private = m1_im4_private.f1();
+ // Parse error to export module
m2.m1_im1_public = m2_M1_public;
m2.m1_im2_public = m2_M2_private;
})(m2 || (m2 = {}));
@@ -500,6 +565,13 @@ var glo_M1_public = exports.glo_M1_public;
glo_M3_private.v2;
})(exports.glo_M3_private || (exports.glo_M3_private = {}));
var glo_M3_private = exports.glo_M3_private;
+//export declare module "glo_M4_private" {
+// export function f1();
+// export class c1 {
+// }
+// export var v1: { new (): c1; };
+// export var v2: c1;
+//}
var glo_im1_private = glo_M1_public;
exports.glo_im1_private_v1_public = glo_im1_private.c1;
exports.glo_im1_private_v2_public = new glo_im1_private.c1();
@@ -509,6 +581,15 @@ var glo_im1_private_v1_private = glo_im1_private.c1;
var glo_im1_private_v2_private = new glo_im1_private.c1();
var glo_im1_private_v3_private = glo_im1_private.f1;
var glo_im1_private_v4_private = glo_im1_private.f1();
+//import glo_im2_private = require("glo_M2_public");
+//export var glo_im2_private_v1_public = glo_im2_private.c1;
+//export var glo_im2_private_v2_public = new glo_im2_private.c1();
+//export var glo_im2_private_v3_public = glo_im2_private.f1;
+//export var glo_im2_private_v4_public = glo_im2_private.f1();
+//var glo_im2_private_v1_private = glo_im2_private.c1;
+//var glo_im2_private_v2_private = new glo_im2_private.c1();
+//var glo_im2_private_v3_private = glo_im2_private.f1;
+//var glo_im2_private_v4_private = glo_im2_private.f1();
var glo_im3_private = glo_M3_private;
exports.glo_im3_private_v1_public = glo_im3_private.c1;
exports.glo_im3_private_v2_public = new glo_im3_private.c1();
@@ -518,6 +599,16 @@ var glo_im3_private_v1_private = glo_im3_private.c1;
var glo_im3_private_v2_private = new glo_im3_private.c1();
var glo_im3_private_v3_private = glo_im3_private.f1;
var glo_im3_private_v4_private = glo_im3_private.f1();
+//import glo_im4_private = require("glo_M4_private");
+//export var glo_im4_private_v1_public = glo_im4_private.c1;
+//export var glo_im4_private_v2_public = new glo_im4_private.c1();
+//export var glo_im4_private_v3_public = glo_im4_private.f1;
+//export var glo_im4_private_v4_public = glo_im4_private.f1();
+//var glo_im4_private_v1_private = glo_im4_private.c1;
+//var glo_im4_private_v2_private = new glo_im4_private.c1();
+//var glo_im4_private_v3_private = glo_im4_private.f1;
+//var glo_im4_private_v4_private = glo_im4_private.f1();
+// Parse error to export module
exports.glo_im1_public = glo_M1_public;
exports.glo_im2_public = glo_M3_private;
//export import glo_im3_public = require("glo_M2_public");
diff --git a/tests/baselines/reference/privacyLocalInternalReferenceImportWithExport.js b/tests/baselines/reference/privacyLocalInternalReferenceImportWithExport.js
index 466e480a0df..ae9885d7018 100644
--- a/tests/baselines/reference/privacyLocalInternalReferenceImportWithExport.js
+++ b/tests/baselines/reference/privacyLocalInternalReferenceImportWithExport.js
@@ -212,6 +212,7 @@ var m_private;
})(exports.m_public || (exports.m_public = {}));
var m_public = exports.m_public;
(function (import_public) {
+ // Privacy errors - importing private elements
import_public.im_public_c_private = m_private.c_private;
import_public.im_public_e_private = m_private.e_private;
import_public.im_public_f_private = m_private.f_private;
@@ -232,6 +233,7 @@ var m_public = exports.m_public;
import_public.publicUse_im_public_mi_private = new import_public.im_public_mi_private.c();
var privateUse_im_public_mu_private;
import_public.publicUse_im_public_mu_private;
+ // No Privacy errors - importing public elements
import_public.im_public_c_public = m_public.c_public;
import_public.im_public_e_public = m_public.e_public;
import_public.im_public_f_public = m_public.f_public;
@@ -256,6 +258,7 @@ var m_public = exports.m_public;
var import_public = exports.import_public;
var import_private;
(function (import_private) {
+ // No Privacy errors - importing private elements
import_private.im_private_c_private = m_private.c_private;
import_private.im_private_e_private = m_private.e_private;
import_private.im_private_f_private = m_private.f_private;
@@ -276,6 +279,7 @@ var import_private;
import_private.publicUse_im_private_mi_private = new import_private.im_private_mi_private.c();
var privateUse_im_private_mu_private;
import_private.publicUse_im_private_mu_private;
+ // No privacy Error - importing public elements
import_private.im_private_c_public = m_public.c_public;
import_private.im_private_e_public = m_public.e_public;
import_private.im_private_f_public = m_public.f_public;
diff --git a/tests/baselines/reference/privacyLocalInternalReferenceImportWithoutExport.js b/tests/baselines/reference/privacyLocalInternalReferenceImportWithoutExport.js
index b58db63b13f..c47e2ffd059 100644
--- a/tests/baselines/reference/privacyLocalInternalReferenceImportWithoutExport.js
+++ b/tests/baselines/reference/privacyLocalInternalReferenceImportWithoutExport.js
@@ -213,6 +213,7 @@ define(["require", "exports"], function (require, exports) {
})(exports.m_public || (exports.m_public = {}));
var m_public = exports.m_public;
(function (import_public) {
+ // No Privacy errors - importing private elements
var im_private_c_private = m_private.c_private;
var im_private_e_private = m_private.e_private;
var im_private_f_private = m_private.f_private;
@@ -233,6 +234,7 @@ define(["require", "exports"], function (require, exports) {
import_public.publicUse_im_private_mi_private = new im_private_mi_private.c();
var privateUse_im_private_mu_private;
import_public.publicUse_im_private_mu_private;
+ // No Privacy errors - importing public elements
var im_private_c_public = m_public.c_public;
var im_private_e_public = m_public.e_public;
var im_private_f_public = m_public.f_public;
@@ -257,6 +259,7 @@ define(["require", "exports"], function (require, exports) {
var import_public = exports.import_public;
var import_private;
(function (import_private) {
+ // No Privacy errors - importing private elements
var im_private_c_private = m_private.c_private;
var im_private_e_private = m_private.e_private;
var im_private_f_private = m_private.f_private;
@@ -277,6 +280,7 @@ define(["require", "exports"], function (require, exports) {
import_private.publicUse_im_private_mi_private = new im_private_mi_private.c();
var privateUse_im_private_mu_private;
import_private.publicUse_im_private_mu_private;
+ // No privacy Error - importing public elements
var im_private_c_public = m_public.c_public;
var im_private_e_public = m_public.e_public;
var im_private_f_public = m_public.f_public;
diff --git a/tests/baselines/reference/privacyTopLevelAmbientExternalModuleImportWithExport.js b/tests/baselines/reference/privacyTopLevelAmbientExternalModuleImportWithExport.js
index 350f9676a7b..4ae42e1118e 100644
--- a/tests/baselines/reference/privacyTopLevelAmbientExternalModuleImportWithExport.js
+++ b/tests/baselines/reference/privacyTopLevelAmbientExternalModuleImportWithExport.js
@@ -66,6 +66,9 @@ var c_public = (function () {
})();
exports.c_public = c_public;
//// [privacyTopLevelAmbientExternalModuleImportWithExport_core.js]
+///
+///
+// Privacy errors - importing private elements
exports.im_public_mi_private = require("privacyTopLevelAmbientExternalModuleImportWithExport_require");
exports.im_public_mu_private = require("privacyTopLevelAmbientExternalModuleImportWithExport_require1");
exports.im_public_mi_public = require("m");
diff --git a/tests/baselines/reference/privacyTopLevelInternalReferenceImportWithExport.js b/tests/baselines/reference/privacyTopLevelInternalReferenceImportWithExport.js
index 13109b9ac81..aeeccb82a2d 100644
--- a/tests/baselines/reference/privacyTopLevelInternalReferenceImportWithExport.js
+++ b/tests/baselines/reference/privacyTopLevelInternalReferenceImportWithExport.js
@@ -159,6 +159,7 @@ define(["require", "exports"], function (require, exports) {
var mi_public = m_public.mi_public;
})(exports.m_public || (exports.m_public = {}));
var m_public = exports.m_public;
+ // Privacy errors - importing private elements
exports.im_public_c_private = m_private.c_private;
exports.im_public_e_private = m_private.e_private;
exports.im_public_f_private = m_private.f_private;
@@ -179,6 +180,7 @@ define(["require", "exports"], function (require, exports) {
exports.publicUse_im_public_mi_private = new exports.im_public_mi_private.c();
var privateUse_im_public_mu_private;
exports.publicUse_im_public_mu_private;
+ // No Privacy errors - importing public elements
exports.im_public_c_public = m_public.c_public;
exports.im_public_e_public = m_public.e_public;
exports.im_public_f_public = m_public.f_public;
diff --git a/tests/baselines/reference/privacyTopLevelInternalReferenceImportWithoutExport.js b/tests/baselines/reference/privacyTopLevelInternalReferenceImportWithoutExport.js
index f5bfea9863e..acc9f6e438e 100644
--- a/tests/baselines/reference/privacyTopLevelInternalReferenceImportWithoutExport.js
+++ b/tests/baselines/reference/privacyTopLevelInternalReferenceImportWithoutExport.js
@@ -160,6 +160,7 @@ define(["require", "exports"], function (require, exports) {
var mi_public = m_public.mi_public;
})(exports.m_public || (exports.m_public = {}));
var m_public = exports.m_public;
+ // No Privacy errors - importing private elements
var im_private_c_private = m_private.c_private;
var im_private_e_private = m_private.e_private;
var im_private_f_private = m_private.f_private;
@@ -180,6 +181,7 @@ define(["require", "exports"], function (require, exports) {
exports.publicUse_im_private_mi_private = new im_private_mi_private.c();
var privateUse_im_private_mu_private;
exports.publicUse_im_private_mu_private;
+ // No Privacy errors - importing public elements
var im_private_c_public = m_public.c_public;
var im_private_e_public = m_public.e_public;
var im_private_f_public = m_public.f_public;
diff --git a/tests/baselines/reference/project/declarationsImportedInPrivate/node/useModule.js b/tests/baselines/reference/project/declarationsImportedInPrivate/node/useModule.js
index 9ff12ce92bc..e7ac9c48bb8 100644
--- a/tests/baselines/reference/project/declarationsImportedInPrivate/node/useModule.js
+++ b/tests/baselines/reference/project/declarationsImportedInPrivate/node/useModule.js
@@ -1,3 +1,4 @@
+// only used privately no need to emit
var private_m4 = require("private_m4");
(function (usePrivate_m4_m1) {
var x3 = private_m4.x;
diff --git a/tests/baselines/reference/project/declarationsIndirectImportShouldResultInError/node/useModule.js b/tests/baselines/reference/project/declarationsIndirectImportShouldResultInError/node/useModule.js
index 2e815be2bd5..f458d0b1f17 100644
--- a/tests/baselines/reference/project/declarationsIndirectImportShouldResultInError/node/useModule.js
+++ b/tests/baselines/reference/project/declarationsIndirectImportShouldResultInError/node/useModule.js
@@ -1,3 +1,4 @@
+// Do not emit unused import
var m5 = require("m5");
exports.d = m5.foo2();
exports.x = m5.foo2;
diff --git a/tests/baselines/reference/project/declarationsMultipleTimesImport/node/useModule.js b/tests/baselines/reference/project/declarationsMultipleTimesImport/node/useModule.js
index 384226c77f3..2de3f23432a 100644
--- a/tests/baselines/reference/project/declarationsMultipleTimesImport/node/useModule.js
+++ b/tests/baselines/reference/project/declarationsMultipleTimesImport/node/useModule.js
@@ -11,6 +11,7 @@ exports.f4 = m4.foo();
var f3 = m4.foo();
})(exports.m1 || (exports.m1 = {}));
var m1 = exports.m1;
+// Do not emit multiple used import statements
var multiImport_m4 = require("m4");
exports.useMultiImport_m4_x4 = multiImport_m4.x;
exports.useMultiImport_m4_d4 = multiImport_m4.d;
diff --git a/tests/baselines/reference/project/declarationsMultipleTimesMultipleImport/node/useModule.js b/tests/baselines/reference/project/declarationsMultipleTimesMultipleImport/node/useModule.js
index 056b8619f39..80a5c980876 100644
--- a/tests/baselines/reference/project/declarationsMultipleTimesMultipleImport/node/useModule.js
+++ b/tests/baselines/reference/project/declarationsMultipleTimesMultipleImport/node/useModule.js
@@ -11,5 +11,6 @@ exports.f4 = m4.foo();
var f3 = m4.foo();
})(exports.m1 || (exports.m1 = {}));
var m1 = exports.m1;
+// Do not emit unused import
var m5 = require("m5");
exports.d = m5.foo2();
diff --git a/tests/baselines/reference/staticInstanceResolution3.js b/tests/baselines/reference/staticInstanceResolution3.js
index 16d9527a193..92a4e6522c7 100644
--- a/tests/baselines/reference/staticInstanceResolution3.js
+++ b/tests/baselines/reference/staticInstanceResolution3.js
@@ -23,5 +23,6 @@ var Promise = (function () {
})();
exports.Promise = Promise;
//// [staticInstanceResolution3_1.js]
+///
var WinJS = require('staticInstanceResolution3_0');
WinJS.Promise.timeout(10);
diff --git a/tests/baselines/reference/topLevelAmbientModule.js b/tests/baselines/reference/topLevelAmbientModule.js
index cae0d90f55e..086f46cf7ce 100644
--- a/tests/baselines/reference/topLevelAmbientModule.js
+++ b/tests/baselines/reference/topLevelAmbientModule.js
@@ -13,5 +13,6 @@ var z = foo.x + 10;
//// [foo_0.js]
//// [foo_1.js]
+///
var foo = require("foo");
var z = foo.x + 10;
diff --git a/tests/baselines/reference/topLevelModuleDeclarationAndFile.js b/tests/baselines/reference/topLevelModuleDeclarationAndFile.js
index 4ac3d91e28d..2215b7fd0ab 100644
--- a/tests/baselines/reference/topLevelModuleDeclarationAndFile.js
+++ b/tests/baselines/reference/topLevelModuleDeclarationAndFile.js
@@ -20,6 +20,7 @@ var z2 = foo.y() + 10; // Should resolve
//// [foo_0.js]
exports.x = 42;
//// [foo_2.js]
+///
var foo = require("vs/foo_0");
var z1 = foo.x + 10;
var z2 = foo.y() + 10;
diff --git a/tests/baselines/reference/typeofAmbientExternalModules.js b/tests/baselines/reference/typeofAmbientExternalModules.js
index f3b7b0b5d00..1bfd549fb04 100644
--- a/tests/baselines/reference/typeofAmbientExternalModules.js
+++ b/tests/baselines/reference/typeofAmbientExternalModules.js
@@ -33,6 +33,8 @@ var D = (function () {
})();
module.exports = D;
//// [typeofAmbientExternalModules_2.js]
+///
+///
var ext = require('typeofAmbientExternalModules_0');
var exp = require('typeofAmbientExternalModules_1');
var y1 = ext;
diff --git a/tests/baselines/reference/voidAsNonAmbiguousReturnType.js b/tests/baselines/reference/voidAsNonAmbiguousReturnType.js
index 60fc1a3892b..6b2cccba5a9 100644
--- a/tests/baselines/reference/voidAsNonAmbiguousReturnType.js
+++ b/tests/baselines/reference/voidAsNonAmbiguousReturnType.js
@@ -18,6 +18,7 @@ function mkdirSync(path, mode) {
}
exports.mkdirSync = mkdirSync;
//// [voidAsNonAmbiguousReturnType_1.js]
+///
var fs = require("voidAsNonAmbiguousReturnType_0");
function main() {
fs.mkdirSync('test');