GNU bug report logs -
#48029
28.1; [native-comp] Function names with non-ascii characters
Previous Next
Reported by: jakanakaevangeli <at> chiru.no
Date: Mon, 26 Apr 2021 08:49:02 UTC
Severity: normal
Tags: confirmed
Found in version 28.1
Done: Andrea Corallo <acorallo <at> gnu.org>
Bug is archived. No further changes may be made.
Full log
Message #31 received at 48029 <at> debbugs.gnu.org (full text, mbox):
Lars Ingebrigtsen <larsi <at> gnus.org> writes:
> Andrea Corallo <akrl <at> sdf.org> writes:
>
>>>> >>>> Visit it and M-x emacs-lisp-native-compile-and-load.
>>>> >>>> A function called "nonascii-test-žžž" will be defined.
>
> [...]
>
>> the place where the C function name is generated is `comp-c-func-name'
>> at comp.el:1175.
>>
>> ATM I'm not 100% sure the fix limited to this tho.
>
> This isn't about the C function name, though -- the problem is that the
> Emacs function name is "nonascii-test-žžž" instead of
> "nonascii-test-žžž".
Ah that's a very good point! Okay I had a look:
We have the symbol `nonascii-test-žžž' correct into our pipeline.
Then we prepare the file that will be executed by the subprocess that
will do the actual compilation, we do this in `comp-final'.
Here when we print `nonascii-test-žžž' using `prin1-to-string' this
becomes "nonascii-test-\x017e\x017e\x017e" (exploring it with the
debugger).
This is then stored in the temp file I mentioned, the file has on top
";; -*-coding: nil; -*- " and the symbol is shown as
"nonascii-test-\305\276\305\276\305\276" if I visit it on my emacs.
Now two options, either we are not printing it as we should or either
the reader doesn't know he has to handle these non ascii characters
while reading back.
I'm no expert in this area, I guess will be evident to experts what we
are not doing correctly here.
Thanks!
Andrea
This bug report was last modified 1 year and 353 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.