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