STINNER Victor added the comment:

The PyInit_NAME symbol is not the only place where NAME is used. The NAME is 
also present in the PyModuleDef structure. It looks lie Python expects UTF-8 
here. You encode it to UTF-8 and use "\xHH\xHH\xHH..." syntax to keep ASCII 
encoding for the C file? The NAME may also be mentionned in docstrings, C 
comments, type names, etc.

I don't like the idea of a new encoding just for one very specific function in 
C. There are already too many encodings in the world :-( The C language 
supports non-ASCII identifiers, but I don't know how they are encoded in the 
symbol table. I would prefer to rely on the C compiler if you would like to 
play in the playground of non-ASCII identifiers.

In Python/dynload_win.c, _PyImport_GetDynLoadWindows() uses GetProcAddressA().

Is it a theorical feature request, or you really have a Python module with a 
non-ASCII name?

I'm not sure that it's really useful to support non-ASCII module names for C 
modules, even if I spend many months to support non-ASCII module names for 
Python modules :-)

----------
type: behavior -> enhancement
versions:  -Python 3.3, Python 3.4

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue20485>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to