Skip to content

Commit 6ffc7bb

Browse files
authored
Warn about unknown entries in INCOMING_MODULE_JS_API (#24131)
1 parent c07d48a commit 6ffc7bb

File tree

2 files changed

+8
-0
lines changed

2 files changed

+8
-0
lines changed

test/test_other.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12322,6 +12322,10 @@ def test_INCOMING_MODULE_JS_API_missing(self):
1232212322

1232312323
self.do_runf('hello_world.c', 'Aborted(`Module.onRuntimeInitialized` was supplied but `onRuntimeInitialized` not included in INCOMING_MODULE_JS_API)', assert_returncode=NON_ZERO)
1232412324

12325+
def test_INCOMING_MODULE_JS_API_invalid(self):
12326+
err = self.expect_fail([EMCC, test_file('hello_world.c'), '-sINCOMING_MODULE_JS_API=foo', '-Werror'])
12327+
self.assertContained('emcc: error: invalid entry in INCOMING_MODULE_JS_API: foo [-Wunused-command-line-argument] [-Werror]', err)
12328+
1232512329
def test_llvm_includes(self):
1232612330
create_file('atomics.c', '#include <stdatomic.h>')
1232712331
self.build('atomics.c')

tools/link.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -978,6 +978,10 @@ def limit_incoming_module_api():
978978
default_setting('ALLOW_UNIMPLEMENTED_SYSCALLS', 0)
979979
limit_incoming_module_api()
980980

981+
for prop in settings.INCOMING_MODULE_JS_API:
982+
if prop not in settings.ALL_INCOMING_MODULE_JS_API:
983+
diagnostics.warning('unused-command-line-argument', f'invalid entry in INCOMING_MODULE_JS_API: {prop}')
984+
981985
if 'noExitRuntime' in settings.INCOMING_MODULE_JS_API:
982986
settings.DEFAULT_LIBRARY_FUNCS_TO_INCLUDE.append('$noExitRuntime')
983987

0 commit comments

Comments
 (0)