Package: emscripten Version: 3.1.3~dfsg-4 If emcc is run with --closure 1 then you receive an error that the command '--max_old_space_size=8192' is invalid.
In fact, it attempts to run a command starting: --max_old_space_size=8192 closure-compiler --compilation_level ... Which appears to be caused by the 2009_closure-compiler.patch Debian patch that modifies tools/building.py to create the following function: -- def get_closure_compiler(): # First check if the user configured a specific CLOSURE_COMPILER in thier settings if config.CLOSURE_COMPILER: return config.CLOSURE_COMPILER # Otherwise use the system-shared one cmd = ['closure-compiler'] if not WINDOWS: # Work around an issue that Closure compiler can take up a lot of memory and crash in an error # "FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap # out of memory" cmd.insert(-1, '--max_old_space_size=8192') return cmd -- Which results in the invalid return value of ['--max_old_space_size=8192', 'closure-compiler'] Since max_old_space_size is a nodejs parameter that would have been inserted into the return value of shared.get_npm_cmd('google-closure-compiler'), I would suggest removing the 'if not WINDOWS' section condition altogether in this patch. A workaround is to set CLOSURE_COMPILER, except there was a separate upstream bug that broke this until recently [1]. [1] https://github.com/emscripten-core/emscripten/pull/15008