golang/go

gccgo: does not understand CUNEIFORM SIGN DUG TIMES MI

dvyukov opened this issue · 6 comments

gccgo rejects to compile the following program (in hex):

00000000  70 61 63 6b 61 67 65 20  61 0a 76 61 72 20 f0 92  |package a.var ..|
00000010  92 a4 20 3d 20 30 0a                              |.. = 0.|
00000017
/tmp/test.go:2:5: error: invalid character 0x124a4 in input file
 var 𒒤 = 0

That 0x124a4 seems to be a letter:
http://www.fileformat.info/info/unicode/char/124a4/index.htm

gofrontend is on commit 81810917af7ba19e1f9f8efc8b1989f7d6419d30

The same for ANATOLIAN HIEROGLYPH A137
0x144a4
http://www.fileformat.info/info/unicode/char/144a4/index.htm

This is just gccgo's unicode letter table being out of sync with the one in the unicode package.

What does it mean? Do I need to do some additional steps when integrating gofrontend into gcc?

CL https://golang.org/cl/13985 mentions this issue.

Sorry, I sent out a CL to synchronize them; I expected the gopher bot to reply to this issue faster. But it would be nice to report any other valid unicode characters that are not accepted by gccgo in this issue. They should all be resolvable by updating the unicode table.