component-fences.ts:9:7 - error SC2009: values of type 'Map<string, () => void>' cannot be compiled: the Map shape is supported, but '() => void' values have no Map slot yet

   8 | // Map values have no slot for functions.
   9 | const listeners = new Map<string, () => void>();
     |       ^~~~~~~~~
  10 | console.log(listeners);

  hint: the outer shape is supported — the named component is the blocker; restate it inside the compilable set (number, string, boolean, arrays, Maps, Sets, RegExp, functions, classes, records, unions of those, and 'unknown')

component-fences.ts:9:19 - error SC1090: Map values of type '() => void' (Map values must be number, string, boolean, records, class instances, typed arrays, arrays, promises, Maps, Sets, or supported unions and checked values) is not supported yet

   8 | // Map values have no slot for functions.
   9 | const listeners = new Map<string, () => void>();
     |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  10 | console.log(listeners);

component-fences.ts:10:13 - error SC2004: uses of 'listeners' inherit the blocker on its declaration

   9 | const listeners = new Map<string, () => void>();
  10 | console.log(listeners);
     |             ^~~~~~~~~
  11 | 

  hint: the declaration of 'listeners' did not compile — fix the diagnostic reported there and these sites clear with it

component-fences.ts:35:7 - error SC2009: values of type '() => WeakRef<object>' cannot be compiled: the function shape is supported, but its return type 'WeakRef<object>' does not compile

  34 | // Node's ReferenceError at the root instead).
  35 | const makeWeak = (0 as unknown) as () => WeakRef<object>;
     |       ^~~~~~~~
  36 | const storedMake = makeWeak;

  hint: the outer shape is supported — the named component is the blocker; restate it inside the compilable set (number, string, boolean, arrays, Maps, Sets, RegExp, functions, classes, records, unions of those, and 'unknown')

component-fences.ts:36:7 - error SC2009: values of type '() => WeakRef<object>' cannot be compiled: the function shape is supported, but its return type 'WeakRef<object>' does not compile

  35 | const makeWeak = (0 as unknown) as () => WeakRef<object>;
  36 | const storedMake = makeWeak;
     |       ^~~~~~~~~~
  37 | console.log(storedMake());

  hint: the outer shape is supported — the named component is the blocker; restate it inside the compilable set (number, string, boolean, arrays, Maps, Sets, RegExp, functions, classes, records, unions of those, and 'unknown')

component-fences.ts:36:20 - error SC2004: uses of 'makeWeak' inherit the blocker on its declaration

  35 | const makeWeak = (0 as unknown) as () => WeakRef<object>;
  36 | const storedMake = makeWeak;
     |                    ^~~~~~~~
  37 | console.log(storedMake());

  hint: the declaration of 'makeWeak' did not compile — fix the diagnostic reported there and these sites clear with it

component-fences.ts:37:13 - error SC2004: uses of 'storedMake' inherit the blocker on its declaration

  36 | const storedMake = makeWeak;
  37 | console.log(storedMake());
     |             ^~~~~~~~~~
  38 | 

  hint: the declaration of 'storedMake' did not compile — fix the diagnostic reported there and these sites clear with it

component-fences.ts:44:7 - error SC2009: values of type 'Holder' cannot be compiled: the record shape is supported, but its member 'cache' has type 'WeakRef<object>', which does not compile

  43 | }
  44 | const held = (0 as unknown) as Holder;
     |       ^~~~
  45 | const kept = held;

  hint: the outer shape is supported — the named component is the blocker; restate it inside the compilable set (number, string, boolean, arrays, Maps, Sets, RegExp, functions, classes, records, unions of those, and 'unknown')

component-fences.ts:45:7 - error SC2009: values of type 'Holder' cannot be compiled: the record shape is supported, but its member 'cache' has type 'WeakRef<object>', which does not compile

  44 | const held = (0 as unknown) as Holder;
  45 | const kept = held;
     |       ^~~~
  46 | console.log(kept.label);

  hint: the outer shape is supported — the named component is the blocker; restate it inside the compilable set (number, string, boolean, arrays, Maps, Sets, RegExp, functions, classes, records, unions of those, and 'unknown')

component-fences.ts:45:14 - error SC2004: uses of 'held' inherit the blocker on its declaration

  44 | const held = (0 as unknown) as Holder;
  45 | const kept = held;
     |              ^~~~
  46 | console.log(kept.label);

  hint: the declaration of 'held' did not compile — fix the diagnostic reported there and these sites clear with it

component-fences.ts:46:13 - error SC2004: uses of 'kept' inherit the blocker on its declaration

  45 | const kept = held;
  46 | console.log(kept.label);
     |             ^~~~~~~~~~
  47 | 

  hint: the declaration of 'kept' did not compile — fix the diagnostic reported there and these sites clear with it