| Index: pkg/compiler/lib/src/js_emitter/full_emitter/emitter.dart | 
| diff --git a/pkg/compiler/lib/src/js_emitter/full_emitter/emitter.dart b/pkg/compiler/lib/src/js_emitter/full_emitter/emitter.dart | 
| index 07ba88b0ec5d0a469be545d06ccab254ecb35f8a..7abae77453072725cfc516457b948ff3321a62a8 100644 | 
| --- a/pkg/compiler/lib/src/js_emitter/full_emitter/emitter.dart | 
| +++ b/pkg/compiler/lib/src/js_emitter/full_emitter/emitter.dart | 
| @@ -1371,6 +1371,16 @@ class Emitter implements js_emitter.Emitter { | 
| assembleTypedefs(program); | 
| } | 
|  | 
| +  jsAst.Statement buildDeferredHeader() { | 
| +    /// For deferred loading we communicate the initializers via this global | 
| +    /// variable. The deferred hunks will add their initialization to this. | 
| +    /// The semicolon is important in minified mode, without it the | 
| +    /// following parenthesis looks like a call to the object literal. | 
| +    return js.statement('self.#deferredInitializers = ' | 
| +                        'self.#deferredInitializers || Object.create(null);', | 
| +                        {'deferredInitializers': deferredInitializers}); | 
| +  } | 
| + | 
| jsAst.Program buildOutputAstForMain(Program program, | 
| Map<OutputUnit, _DeferredOutputUnitHash> deferredLoadHashes) { | 
| MainFragment mainFragment = program.mainFragment; | 
| @@ -1383,14 +1393,7 @@ class Emitter implements js_emitter.Emitter { | 
| ..add(js.comment(HOOKS_API_USAGE)); | 
|  | 
| if (isProgramSplit) { | 
| -      /// For deferred loading we communicate the initializers via this global | 
| -      /// variable. The deferred hunks will add their initialization to this. | 
| -      /// The semicolon is important in minified mode, without it the | 
| -      /// following parenthesis looks like a call to the object literal. | 
| -      statements.add( | 
| -          js.statement('self.#deferredInitializers = ' | 
| -                       'self.#deferredInitializers || Object.create(null);', | 
| -                       {'deferredInitializers': deferredInitializers})); | 
| +      statements.add(buildDeferredHeader()); | 
| } | 
|  | 
| // Collect the AST for the decriptors | 
| @@ -1999,6 +2002,7 @@ function(originalDescriptor, name, holder, isStatic, globalFunctionsAccess) { | 
|  | 
| statements | 
| ..add(buildGeneratedBy()) | 
| +          ..add(buildDeferredHeader()) | 
| ..add(js.statement('${deferredInitializers}.current = ' | 
| """function (#, ${namer.staticStateHolder}) { | 
| # | 
|  |