Opened 6 years ago
Closed 6 years ago
#1576 closed defect (fixed)
Keywords get encoded with leading NUL byte, breaking read-write invariance of symbols starting with a NUL byte
Reported by: | sjamaan | Owned by: | |
---|---|---|---|
Priority: | minor | Milestone: | 5.1 |
Component: | core libraries | Version: | 5.0.0 |
Keywords: | keywords, symbols, read-write invariance | Cc: | |
Estimated difficulty: | medium |
Description
Similar to #1077, the string belonging to keywords still get interned by prefixing it with a NUL byte. This means (string->symbol "\000foo")
gets read as a keyword and printed back as #:foo
.
This is of course not really correct.
Fixing it means we'll need to get rid of the in-bound signaling of the keyword information. A potential fix could involve storing keywords in a different symbol table than regular symbols.
Note: See
TracTickets for help on using
tickets.
Fixed with 8665e7a and a1cd6afd