Christian Heimes
dfaf90da9c
Cleanup 'k' when the creation of PySTEntryObject fails. ad3824a90261 used to decref 'k' in too many error cases.
2012-09-12 17:58:10 +02:00
Christian Heimes
65a0141e14
Partly revert ad3824a90261 and add comment about reference ownership
2012-09-12 17:52:46 +02:00
Christian Heimes
8c1bce00d2
Closed reference leak of variable 'k' in function ste_new which wasn't decrefed in error cases
2012-09-10 03:08:46 +02:00
Benjamin Peterson
045bbcdc8e
Merged revisions 85757 via svnmerge from
...
svn+ssh://pythondev@svn.python.org/python/branches/py3k
........
r85757 | benjamin.peterson | 2010-10-20 16:25:23 -0500 (Wed, 20 Oct 2010) | 1 line
fix uninitialized struct member #10152
........
2010-10-20 21:28:09 +00:00
Benjamin Peterson
f76942d6bf
Merged revisions 85562 via svnmerge from
...
svn+ssh://pythondev@svn.python.org/python/branches/py3k
........
r85562 | benjamin.peterson | 2010-10-15 22:45:45 -0500 (Fri, 15 Oct 2010) | 1 line
don't identify the toplevel namespace by name #9997
........
2010-10-16 03:51:38 +00:00
Benjamin Peterson
c6660cf4d6
different spellings are just unacceptable
2010-06-11 21:40:37 +00:00
Antoine Pitrou
c83ea137d7
Untabify C files. Will watch buildbots.
2010-05-09 14:46:46 +00:00
Alexandre Vassalotti
b646547bb4
Issue #2333 : Backport set and dict comprehensions syntax.
2010-01-11 22:36:12 +00:00
Alexandre Vassalotti
ee936a2130
Issue #2335 : Backport set literals syntax from Python 3.x.
2010-01-09 23:35:54 +00:00
Benjamin Peterson
009b89d22a
genexps have linenos
2009-11-20 01:16:58 +00:00
Benjamin Peterson
d16d0abf0b
provide line number for lambdas
2009-11-20 01:15:53 +00:00
Benjamin Peterson
1a4ceb2f4b
fix grammar
2009-06-23 01:18:57 +00:00
Benjamin Peterson
d9920c255d
remove tmpname support since it's no longer used
2009-06-21 23:03:36 +00:00
Benjamin Peterson
f67caf8523
don't need to add the name 'lambda' as assigned
2009-06-21 23:01:07 +00:00
Benjamin Peterson
985951df7f
fix error handling
2009-04-02 02:52:46 +00:00
Jeremy Hylton
2696275348
Add check for PyDict_Update() error.
2009-03-31 15:04:15 +00:00
Jeremy Hylton
88f1c04215
Global statements from one function leaked into parallel functions.
...
Re http://bugs.python.org/issue4315
The symbol table used the same name dictionaries to recursively
analyze each of its child blocks, even though the dictionaries are
modified during analysis. The fix is to create new temporary
dictionaries via the analyze_child_block(). The only information that
needs to propagate back up is the names of the free variables.
Add more comments and break out a helper function. This code doesn't
get any easier to understand when you only look at it once a year.
2009-03-31 13:48:15 +00:00
Benjamin Peterson
25f2d89f32
uhh PySTEntry->ste_unoptimized has to be exposed too
2008-08-17 02:23:43 +00:00
Benjamin Peterson
e0d4c7b5bd
expose PySTEntry.nested so the symtable module will work
2008-08-17 01:09:17 +00:00
Benjamin Peterson
e0d12eb85c
PySTEntry's constructor is static; there's no point in a fancy API name
2008-08-16 23:29:40 +00:00
Benjamin Peterson
0847332716
include filename and line number in SyntaxError
2008-08-16 22:11:33 +00:00
Gregory P. Smith
dd96db63f6
This reverts r63675 based on the discussion in this thread:
...
http://mail.python.org/pipermail/python-dev/2008-June/079988.html
Python 2.6 should stick with PyString_* in its codebase. The PyBytes_* names
in the spirit of 3.0 are available via a #define only. See the email thread.
2008-06-09 04:58:54 +00:00
Christian Heimes
593daf545b
Renamed PyString to PyBytes
2008-05-26 12:51:38 +00:00
Georg Brandl
a48f3ab895
Patch #2511 : Give the "excepthandler" AST item proper attributes by making it a Sum.
2008-03-30 06:40:17 +00:00
Neal Norwitz
5becac576c
Handle memory allocation failure. Found by Adam Olsen
2008-03-15 22:36:01 +00:00
Christian Heimes
5224d28d38
Patch #1759 : Backport of PEP 3129 class decorators
...
with some help from Georg
2008-02-23 15:01:05 +00:00
Martin v. Löwis
6819210b9e
PEP 3123: Provide forward compatibility with Python 3.0, while keeping
...
backwards compatibility. Add Py_Refcnt, Py_Type, Py_Size, and
PyVarObject_HEAD_INIT.
2007-07-21 06:55:02 +00:00
Neal Norwitz
7605936dee
Handle PyString_FromInternedString() failing (unlikely, but possible).
...
Klocwork #325
(I'm not backporting this, but if someone wants to, feel free.)
2006-08-19 04:52:03 +00:00
Neal Norwitz
6f5ff3f3eb
Klocwork made another run and found a bunch more problems.
...
This is the first batch of fixes that should be easy to verify based on context.
This fixes problem numbers: 220 (ast), 323-324 (symtable),
321-322 (structseq), 215 (array), 210 (hotshot), 182 (codecs), 209 (etree).
2006-08-12 01:43:40 +00:00
Neal Norwitz
18b6adf9b2
Handle more mem alloc issues found with failmalloc
2006-07-23 07:50:36 +00:00
Neal Norwitz
b59d08c2fb
Fix more memory allocation issues found with failmalloc.
2006-07-22 16:20:49 +00:00
Neal Norwitz
d12bd012a6
Handle more memory allocation failures without crashing.
2006-07-21 07:59:47 +00:00
Georg Brandl
ddbaa660d3
Patch #1346214 : correctly optimize away "if 0"-style stmts
...
(thanks to Neal for review)
2006-06-04 21:56:52 +00:00
Anthony Baxter
019aec618a
Make symtable.c safe for C++ compilers. Changed macros in the same way as
...
compile.c to add a cast.
2006-04-12 04:00:50 +00:00
Neal Norwitz
090b3dde06
No need to export PySTEntry_New, it is only used in symtable.c
2006-02-28 22:36:46 +00:00
Guido van Rossum
c2e20744b2
PEP 343 -- the with-statement.
...
This was started by Mike Bland and completed by Guido
(with help from Neal).
This still needs a __future__ statement added;
Thomas is working on Michael's patch for that aspect.
There's a small amount of code cleanup and refactoring
in ast.c, compile.c and ceval.c (I fixed the lltrace
behavior when EXT_POP is used -- however I had to make
lltrace a static global).
2006-02-27 22:32:47 +00:00
Thomas Wouters
dca3b9c797
PEP 308 implementation, including minor refdocs and some testcases. It
...
breaks the parser module, because it adds the if/else construct as well as
two new grammar rules for backward compatibility. If no one else fixes
parsermodule, I guess I'll go ahead and fix it later this week.
The TeX code was checked with texcheck.py, but not rendered. There is
actually a slight incompatibility:
>>> (x for x in lambda:0)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: iteration over non-sequence
changes into
>>> (x for x in lambda: 0)
File "<stdin>", line 1
(x for x in lambda: 0)
^
SyntaxError: invalid syntax
Since there's no way the former version can be useful, it's probably a
bugfix ;)
2006-02-27 00:24:13 +00:00
Martin v. Löwis
d96ee90993
Use Py_ssize_t to count the
2006-02-16 14:37:16 +00:00
Martin v. Löwis
18e165558b
Merge ssize_t branch.
2006-02-15 17:27:45 +00:00
Tim Peters
d8fe7ab711
analyze_cells(): This no longer compiled under VC 7.1.
...
Move declaration of local `flags` to top of block.
2006-01-08 02:19:07 +00:00
Neal Norwitz
46b7bda9bc
Fix icc warnings: conversion from "long" to "int" may lose significant bits
2006-01-08 01:06:06 +00:00
Neal Norwitz
daf595f8a9
Fix icc warnings: shadowing local variable (i) and complex is set but not used, so remove
2006-01-07 21:24:54 +00:00
Neal Norwitz
5d0ad50f5a
Bug #889500 , fix line number on SyntaxWarning for global declarations.
2005-12-19 04:27:42 +00:00
Neal Norwitz
3715c3e576
Fix a few more ref leaks. Backport candidate
2005-11-24 22:09:18 +00:00
Neal Norwitz
4737b2348b
Last batch of ref leaks in new AST code.
...
Also converted a bunch of assert(0) to SystemError's.
There are still printfs, etc that need to be cleaned up.
2005-11-19 23:58:29 +00:00
Nick Coghlan
99b2533539
Bring handling of genexpr in line with other anonymous scope names
2005-11-16 12:45:24 +00:00
Neal Norwitz
b6fc9df8fc
Fix a lot of memory and ref leaks in error paths.
...
(Call symtable_exit_block or compiler_exit_scope as appropriate)
Use PyMem_Free on c_future since it was allocated with PyMem_Malloc
2005-11-13 18:50:34 +00:00
Neal Norwitz
62c2fac9a0
Do not pollute name block_ty, prefix with _Py_
2005-10-24 00:30:44 +00:00
Neil Schemenauer
2dfcef5c57
Fix check_unoptimized() function. The only optimized namespaces are
...
in function blocks. This elimiates spurious warnings about "import *" and
related statements at the class level.
2005-10-23 18:50:36 +00:00
Neil Schemenauer
8b528b28f1
Fix private name mangling. The symtable also must do mangles so that
...
the scope of names can be correctly determined.
2005-10-23 18:37:42 +00:00