Message6769
Partial analysis ...
The error is effectively raised by org.python.core.PyString.hexescape(), which is trying to translate "\udef0" into a Unicode character. This accepts a value that controls how it responds to an invalid character code. Options are "ignore" (i.e. don't insert it), "replace" (with the standard Unicode replacement character), or "strict", meaning throw this error.
hexescape() is called (indirectly) from the parser at org.python.antlr.GrammarActions.extractToken() to convert the text. That is the place where a "strict" error policy is chosen.
None of the existing policies corresponds to inserting a character "unchecked", which appears to be the CPython policy. Either a fourth should be defined, or the behaviour of an existing policy changed.
This is not the only point at which the error policy may determine behaviour, so the other implications of not being "strict" should be examined. |
|
Date |
User |
Action |
Args |
2012-02-02 22:44:34 | jeff.allen | set | messageid: <1328222674.98.0.0318623945123.issue1836@psf.upfronthosting.co.za> |
2012-02-02 22:44:34 | jeff.allen | set | recipients:
+ jeff.allen, fwierzbicki |
2012-02-02 22:44:34 | jeff.allen | link | issue1836 messages |
2012-02-02 22:44:34 | jeff.allen | create | |
|