Subject: bug#59956: 29.0.60: Failure when completing arguments in Eshell after variable interpolation

From: Stefan Monnier <[email-masked]>
Date: Sun, 18 Dec 2022 22:07:11 -0500

> Hmmm...  So I guess it would be better, instead of replacing lists (and in
> general non-strings) by their string representation, and instead of always
> looking at an unexpanded argument, to look at the unexpanded argument only
> when the expanded argument is not a string?  E.g. if $foo is "-u" we would
> use "-u", but if $foo is (b a r) we would use "$foo".

Sounds like just another way to work around the problem.
I think the only "real" fix is to change the API so the callers can say
what kind of data they're looking for.

The more I think about it, the more my workaround sounds appealing.
My main remaining question is whether there exist code out there that
relies on the current behavior.

        Stefan