oracle / graalpython

A Python 3 implementation built on GraalVM
Other
1.2k stars 103 forks source link

Incorrect ctype mapping leads to java.lang.IllegalStateException #313

Closed xiaxinmeng closed 1 year ago

xiaxinmeng commented 1 year ago

See the following example, incorrect ctype mapping leads to java.lang.IllegalStateException

test.py

import ctypes
libc = ctypes.CDLL("libc.so.6")
iconv = libc.iconv_open("ISO-8859-1", "ISO-8859-2")
print(iconv)

Error massage:

Traceback (most recent call last):
unknown type com.oracle.truffle.api.strings.TruffleString
Traceback (most recent call last):
unknown type com.oracle.truffle.api.strings.TruffleString
Traceback (most recent call last):
java.lang.IllegalStateException: unknown type com.oracle.truffle.api.strings.TruffleString

Behaviors on CPython 3.10.8:

-1

Environment:

'graalpy-22.3.1-linux-amd64/bin/graalpy' Python 3.8.5 [Graal, GraalVM CE, Java 19.0.2] on Ubuntu 18.04