function w(node, code, message) {
	let stack = ignore_stack;
	if (node) {
		stack = ignore_map.get(node) ?? ignore_stack;
	}
	if (stack && stack.at(-1)?.has(code)) return;

	const warning = new InternalCompileWarning(
		code,
		message,
		node && node.start !== undefined ? [node.start, node.end ?? node.start] : undefined
	);

	if (!warning_filter(warning)) return;

	warnings.push(warning);
}
@param {null | NodeLike} node
@param {string} code
@param {string} message