Victor Stinner
2ad474ba5e
Update assertion in compiler_addop_i()
...
In practice, bytecode instruction arguments are unsigned. Update the assertion
to make it more explicit that argument must be greater or equal than 0.
Rewrite also the comment.
2016-03-01 23:34:47 +01:00
Martin Panter
8cacc63002
Issue #22836 : Merge exception reporting from 3.5
2016-02-28 03:29:51 +00:00
Martin Panter
3263f6874a
Issue #22836 : Keep exception reports sensible despite errors
2016-02-28 03:16:11 +00:00
Victor Stinner
fc6f2efd13
compile.c: inline compiler_use_new_block()
...
* Inline compiler_use_new_block() function into its only callee,
compiler_enter_scope()
* Remove unused NEW_BLOCK() macro
2016-02-27 02:19:22 +01:00
Benjamin Peterson
9d66d4af06
remove unused c_encoding struct member
2016-02-25 23:25:14 -08:00
Benjamin Peterson
768921cf33
rewrite parsestr() so it's comprehensible; remove dead code
2016-02-25 23:13:53 -08:00
Benjamin Peterson
202803a0c0
c_encoding can never be NULL, which allows some code simplification
2016-02-25 22:34:45 -08:00
Brett Cannon
0911c0d271
Merge for issue #26367
2016-02-20 12:59:36 -08:00
Brett Cannon
4f38cb41fe
Issue #26367 : Have importlib.__init__() raise RuntimeError when
...
'level' is specified but no __package__.
This brings the function inline with builtins.__import__(). Thanks to
Manuel Jacob for the patch.
2016-02-20 12:52:06 -08:00
Serhiy Storchaka
885bdc4946
Issue #25985 : sys.version_info is now used instead of sys.version
...
to format short Python version.
2016-02-11 13:10:36 +02:00
Serhiy Storchaka
a9725f86a9
Issue #26312 : SystemError is now raised in all programming bugs with using
...
PyArg_ParseTupleAndKeywords(). RuntimeError did raised before in some
programming bugs.
2016-02-11 12:41:40 +02:00
Serhiy Storchaka
5b613dd810
Issue #25698 : Prevent possible replacing imported module with the empty one
...
if the stack is too deep.
2016-02-10 10:31:43 +02:00
Serhiy Storchaka
48a583b1d8
Issue #25698 : Prevent possible replacing imported module with the empty one
...
if the stack is too deep.
2016-02-10 10:31:20 +02:00
Victor Stinner
15a3095d64
compiler: don't emit SyntaxWarning on const stmt
...
Issue #26204 : the compiler doesn't emit SyntaxWarning warnings anymore when
constant statements are ignored.
2016-02-08 22:45:06 +01:00
Victor Stinner
a2724095cd
compiler now ignores constant statements
...
The compile ignores constant statements and emit a SyntaxWarning warning.
Don't emit the warning for string statement because triple quoted string is a
common syntax for multiline comments.
Don't emit the warning on ellipis neither: 'def f(): ...' is a legit syntax for
abstract functions.
Changes:
* test_ast: ignore SyntaxWarning when compiling test statements. Modify
test_load_const() to use assignment expressions rather than constant
expression.
* test_code: add more kinds of constant statements, ignore SyntaxWarning when
testing that the compiler removes constant statements.
* test_grammar: ignore SyntaxWarning on the statement "1"
2016-02-08 18:17:58 +01:00
Serhiy Storchaka
4cd63ef67a
Issue #26198 : ValueError is now raised instead of TypeError on buffer
...
overflow in parsing "es#" and "et#" format units. SystemError is now raised
instead of TypeError on programmical error in parsing format string.
2016-02-08 01:22:47 +02:00
Serhiy Storchaka
3e17c788a8
Issue #26198 : Fixed error messages for some argument parsing errors.
2016-02-08 01:20:21 +02:00
Serhiy Storchaka
c4b813d05d
Issue #26198 : Fixed error messages for some argument parsing errors.
...
Fixed the documented about buffer overflow error for "es#" and "et#" format
units.
2016-02-08 01:06:11 +02:00
Eric V. Smith
eb588a1d10
Switch to more idiomatic C code.
2016-02-05 18:26:20 -05:00
Eric V. Smith
135d5f49f6
Fix issue 26287: While handling FORMAT_VALUE opcode, the top of stack was being corrupted if an error occurred in PyObject_Format().
2016-02-05 18:23:08 -05:00
Martin Panter
cca32995b3
Issue #4806 : Merge * unpacking fix from 3.5
2016-01-31 06:33:16 +00:00
Martin Panter
b5944220ab
Issue #4806 : Avoid masking original TypeError in call with * unpacking
...
Based on patch by Hagen Fürstenau and Daniel Urban.
2016-01-31 06:30:56 +00:00
Victor Stinner
be59d1489b
Issue #26146 : enhance ast.Constant error message
...
Mention the name of the invalid type in error message of AST validation for
constants.
Suggestion made by Joseph Jevnik on a review.
2016-01-27 00:39:12 +01:00
Victor Stinner
25219f596a
Issue #26146 : remove useless code
...
obj2ast_constant() code is baesd on obj2ast_object() which has a special case
for Py_None. But in practice, we don't need to have a special case for
constants.
Issue noticed by Joseph Jevnik on a review.
2016-01-27 00:37:59 +01:00
Victor Stinner
726f6902ce
Fix a refleak in validate_constant()
...
Issue #26146 .
2016-01-27 00:11:47 +01:00