For solving the problem of how to get tool B to look at the same spot on the same filesystem as tool A, raw bytes are highly appropriate. Cooking them in any way is likely to change the meaning. Most filesystems do not care about locale. That's a display property. LC_ALL=C generally tells your terminal how to interpret bytes being emitted, and doesn't often change the byte themselves. `fopen` and `readdir` are not locale aware. 

On Fri, Sep 6, 2019 at 4:27 PM Lyberta <lyberta@lyberta.net> wrote:
Tony V E:
> but it is only valid if you use those bits with the same API and encoding
> that they came from (if you don't know the encoding).


> the case where the encoding changed.  Or the raw bytes are being used with
> the wrong FS API.

Exactly, remember the key word in this topic - "interchange". Blasting
raw bytes around is the worst method of interchange.

_______________________________________________
SG16 Unicode mailing list
Unicode@isocpp.open-std.org
http://www.open-std.org/mailman/listinfo/unicode