Subject: bug#59576: 29.0.50; named-let doesn't support dynamic binding

From: Mattias Engdegård <[email-masked]>
Date: Sat, 26 Nov 2022 10:48:54 +0100

`named-let` being a looping construct, it makes little sense to use it in dynamic binding where TCO opportunities are severely limited. Ideally we should just signal an error if an attempt to use it in dynbound code is made. Users will thank us for that (at least they should, if they have any sense).

Second-best would be to inhibit all TCO in dynbound code but whom would that really benefit?

(Regarding your proposal, generating worse code in lexbind mode isn't a wonderful outcome.)