From 245dcc304779b11c95856e06e88b82d69e16e0e3 Mon Sep 17 00:00:00 2001 From: Tobias Koppers Date: Tue, 20 Jun 2017 16:13:32 +0200 Subject: [PATCH] better error message for missing internal names --- lib/optimize/ConcatenatedModule.js | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/lib/optimize/ConcatenatedModule.js b/lib/optimize/ConcatenatedModule.js index cecdf321e6f..05460dff2ec 100644 --- a/lib/optimize/ConcatenatedModule.js +++ b/lib/optimize/ConcatenatedModule.js @@ -24,7 +24,10 @@ function getFinalName(info, exportName, moduleToInfoMap, requestShortener) { if(directExport) { if(exportName === true) info.needNamespaceObject = true; - return info.internalNames.get(directExport); + const name = info.internalNames.get(directExport); + if(!name) + throw new Error(`The export "${directExport}" in "${info.module.readableIdentifier(requestShortener)}" has no internal name`); + return name; } const reexport = info.reexportMap.get(exportName); if(reexport) { @@ -380,8 +383,6 @@ class ConcatenatedModule extends Module { exportName = referencedModule.module.providedExports[exportIdx]; } const finalName = getFinalName(referencedModule, exportName, moduleToInfoMap, requestShortener); - if(!finalName) - throw new Error(`Cannot map to variable name in module ${info.module.resource} (export '${exportName}')`); const r = reference.identifier.range; const source = info.source; source.replace(r[0], r[1] - 1, finalName);