Subject: bug#40693: 28.0.50; json-encode-alist changes alist

From: João Távora <[email-masked]>
Date: Sat, 23 May 2020 23:45:10 +0100

"Basil L. Contovounesios" <[email-masked]> writes:

> Yes.
>
>> Anyway, this is true if you want 27.1 elc's to be loadable in 26.x.
>
> It is also true if you want version N .elc files to be loadable in
> version N.  The problems I list are not specific to either JSON or
> inter-Emacs-version compat.

You're right, I forgot about --without-json/--with-json builds.

> The only benefit of the macro approach is zero overhead - no fboundp
> checks at load time, and no indirection in calling jsonrpc--json-read.
> But those should be negligible costs, and macros come with their slew of
> drawbacks that makes them unnecessary in this simple case.

Agree.  And macros don't solve the intercompatibility problems.

All good, thanks for explaining!

João