1'use strict'; 2// Flags: --expose-internals 3 4require('../common'); 5const assert = require('assert'); 6const fixtures = require('../common/fixtures'); 7const { internalBinding } = require('internal/test/binding'); 8 9const { 10 privateSymbols: { 11 arrow_message_private_symbol, 12 }, 13} = internalBinding('util'); 14 15const obj = {}; 16assert.strictEqual(obj[arrow_message_private_symbol], undefined); 17 18obj[arrow_message_private_symbol] = 'bar'; 19assert.strictEqual(obj[arrow_message_private_symbol], 'bar'); 20assert.deepStrictEqual(Reflect.ownKeys(obj), []); 21 22let arrowMessage; 23 24try { 25 require(fixtures.path('syntax', 'bad_syntax')); 26} catch (err) { 27 arrowMessage = err[arrow_message_private_symbol]; 28} 29 30assert.match(arrowMessage, /bad_syntax\.js:1/); 31