mirror of
https://github.com/python/cpython.git
synced 2025-10-14 18:59:46 +00:00
SF patch [ 597919 ] compiler package and SET_LINENO
A variety of changes from Michael Hudson to get the compiler working with 2.3. The primary change is the handling of SET_LINENO: # The set_lineno() function and the explicit emit() calls for # SET_LINENO below are only used to generate the line number table. # As of Python 2.3, the interpreter does not have a SET_LINENO # instruction. pyassem treats SET_LINENO opcodes as a special case. A few other small changes: - Remove unused code from pycodegen and pyassem. - Fix error handling in parsermodule. When PyParser_SimplerParseString() fails, it sets an exception with detailed info. The parsermodule was clobbering that exception and replacing it was a generic "could not parse string" exception. Keep the original exception.
This commit is contained in:
parent
436eadd455
commit
accb62b28e
6 changed files with 79 additions and 50 deletions
|
@ -1241,6 +1241,9 @@ decode_utf8(char **sPtr, char *end, char* encoding)
|
|||
#endif
|
||||
}
|
||||
|
||||
/* compiler.transformer.Transformer.decode_literal depends on what
|
||||
might seem like minor details of this function -- changes here
|
||||
must be reflected there. */
|
||||
static PyObject *
|
||||
parsestr(struct compiling *c, char *s)
|
||||
{
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue