-
- Downloads
py: Never intern data of large string/bytes object; add relevant tests.
Previously to this patch all constant string/bytes objects were interned by the compiler, and this lead to crashes when the qstr was too long (noticeable now that qstr length storage defaults to 1 byte). With this patch, long string/bytes objects are never interned, and are referenced directly as constant objects within generated code using load_const_obj.
Showing
- py/compile.c 21 additions, 11 deletionspy/compile.c
- py/parse.c 11 additions, 10 deletionspy/parse.c
- py/qstr.c 1 addition, 0 deletionspy/qstr.c
- tests/basics/bytes_large.py 2 additions, 0 deletionstests/basics/bytes_large.py
- tests/basics/string_large.py 2 additions, 0 deletionstests/basics/string_large.py
Loading
Please register or sign in to comment