From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on ip-172-31-74-118.ec2.internal X-Spam-Level: X-Spam-Status: No, score=-1.9 required=3.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.6 Path: eternal-september.org!reader02.eternal-september.org!aioe.org!vNObJwB5W4WN632vBkQn9g.user.46.165.242.75.POSTED!not-for-mail From: Simon Wright Newsgroups: comp.lang.ada Subject: Re: Ada and Unicode Date: Mon, 04 Apr 2022 15:19:16 +0100 Organization: Aioe.org NNTP Server Message-ID: References: <607b5b20$0$27442$426a74cc@news.free.fr> <660e25a5-506b-43c0-b4ac-e7738e5500e5n@googlegroups.com> <48309745-aa2a-47bd-a4f9-6daa843e0771n@googlegroups.com> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: gioia.aioe.org; logging-data="42082"; posting-host="vNObJwB5W4WN632vBkQn9g.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org"; User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.2 (darwin) X-Notice: Filtered by postfilter v. 0.9.2 Cancel-Lock: sha1:MezQlYBg1S6ccyXwBaOgurYWAKw= Xref: reader02.eternal-september.org comp.lang.ada:63695 List-Id: Vadim Godunko writes: > On Sunday, April 3, 2022 at 10:20:21 PM UTC+3, Thomas wrote: >> >> > But don't use unit names containing international characters, at >> > any rate if you're (interested in compiling on) Windows or macOS: >> > >> > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81114 >> >> and this kind of problems would be easier to avoid if string types >> were stronger ... >> > > Your suggestion is unable to resolve this issue on Mac OS X. Like case > sensitivity, binary compare of two strings can't compare strings in > different normalization forms. Right solution is to use right type to > represent any paths, and even it doesn't resolve some issues, like > relative paths and change of rules at mounting points. I think that's a macOS problem that Apple aren't going to resolve* any time soon! While banging my head against PR81114 recently, I found (can't remember where) that (lower case a acute) and (lower case a, combining acute) represent the same concept and it's up to tools/operating systems etc to recognise that. Emacs, too, has a problem: it doesn't recognise the 'combining' part of (lower case a, combining acute), so what you see on your screen is "a'". * I don't know how/whether clang addresses this.