• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// Flags: --experimental-vm-modules --max-old-space-size=16
2'use strict';
3
4// This tests that vm.SyntheticModule does not leak.
5// See https://github.com/nodejs/node/issues/44211
6require('../common');
7const { checkIfCollectable } = require('../common/gc');
8const vm = require('vm');
9
10async function createSyntheticModule() {
11  const m = new vm.SyntheticModule(['bar'], () => {
12    m.setExport('bar', new Array(512).fill('----'));
13  });
14  await m.link(() => {});
15  await m.evaluate();
16  return m;
17}
18checkIfCollectable(createSyntheticModule, 4096);
19