The following command works with clang: `echo "__clang_major__.__clang_minor__.__clang_patchlevel__" | clang -E -P -` If you try the same with emcc: `echo "__clang_major__.__clang_minor__.__clang_patchlevel__" | emcc -E -P -` you get an error: `ERROR root: no input files` emcc should read from stdin when no input files are given.