Subject: bug#43632: Raw bytes printed as latin-1 in echo area and *Messages*

From: Lars Ingebrigtsen <[email-masked]>
Date: Sat, 26 Sep 2020 16:22:10 +0200

Eli Zaretskii <[email-masked]> writes:

> It is not an anomaly.  If you want to see escapes, set
> print-escape-nonascii non-nil.
>
> Also note that what you see is the result of 'eval' printing the
> result, the real result (as returned by prin1) is a unibyte string:
>
>   (multibyte-string-p (prin1 "\377")) => nil
>
> (Yes, this is very confusing.)

Could we do something about this confusion?

This came up because I just couldn't make sense of what I was seeing
when trying to work with raw bytes -- it seemed to be that Emacs was
auto-promoting unibyte strings (with bytes >127) to multibyte strings...
until I started calling multibyte-string-p on everything instead.

I'm guessing I'm not the only person confused by this stuff.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no