Subject: bug#47169: 28.0.50; [feature/native-comp] native-compiler-error-empty-byte when batch-native-compiling is confusing to users

From: Mauricio Collares <[email-masked]>
Date: Mon, 15 Mar 2021 14:34:51 -0300

Some packages contain valid .el files such that batch-byte-compiling
them does not produce an .elc file, for example because they set
"no-byte-compile" to t. Running batch-byte-compile on such a file exits
successfully (without outputting any .elc file, of course) but running
batch-native-compile exits with native-compiler-error-empty-byte.

In the Nix package manager, we native-compile packages at installation
time, and we do so by calling batch-native-compile for each .el file in
the package separately. So in our use case .el files as described above
shouldn't trigger error messages. We can work around this on the Nix
side, but I was wondering if it would be better to turn the error into a
warning (or even not emit a warning at all, since technically everything
went well).

Step to reproduce: batch-native-compile a file that sets no-byte-compile
to t.

(Reporting this on behalf of a user, see
https://github.com/nix-community/emacs-overlay/issues/120)

Best,
Mauricio