Neal Norwitz 
								
							 
						 
						
							
							
							
							
								
							
							
								3a5468efb0 
								
							 
						 
						
							
							
								
								Update known issues to reflect reality  
							
							
							
						 
						
							2006-03-02 04:06:10 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Martin v. Löwis 
								
							 
						 
						
							
							
							
							
								
							
							
								49c5da1d88 
								
							 
						 
						
							
							
								
								Patch  #1440601 : Add col_offset attribute to AST nodes.  
							
							
							
						 
						
							2006-03-01 22:49:05 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Jeremy Hylton 
								
							 
						 
						
							
							
							
							
								
							
							
								e9357b21c0 
								
							 
						 
						
							
							
								
								Tabify and reflow some long lines.  
							
							... 
							
							
							
							Much of the peephole optimizer is now indented badly, but it's about
to be revised anyway. 
							
						 
						
							2006-03-01 15:47:05 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Thomas Wouters 
								
							 
						 
						
							
							
							
							
								
							
							
								5e9f1fa706 
								
							 
						 
						
							
							
								
								Generally inehrit codeflags that are in PyCF_MASK, instead of writing it out  
							
							... 
							
							
							
							in multiple places. This makes compile()/eval()/etc also inherit the
absolute-import codeflag, like division and with-statement already were. 
							
						 
						
							2006-02-28 20:02:27 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Thomas Wouters 
								
							 
						 
						
							
							
							
							
								
							
							
								34aa7ba114 
								
							 
						 
						
							
							
								
								from __future__ import with_statement addon for 'with', mostly written by  
							
							... 
							
							
							
							Neal. 
							
						 
						
							2006-02-28 19:02:24 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Thomas Wouters 
								
							 
						 
						
							
							
							
							
								
							
							
								f7f438ba3b 
								
							 
						 
						
							
							
								
								SF patch  #1438387 , PEP 328: relative and absolute imports.  
							
							... 
							
							
							
							- IMPORT_NAME takes an extra argument from the stack: the relativeness of
   the import. Only passed to __import__ when it's not -1.
 - __import__() takes an optional 5th argument for the same thing; it
   __defaults to -1 (old semantics: try relative, then absolute)
 - 'from . import name' imports name (be it module or regular attribute)
   from the current module's *package*. Likewise, 'from .module import name'
   will import name from a sibling to the current module.
 - Importing from outside a package is not allowed; 'from . import sys' in a
   toplevel module will not work, nor will 'from .. import sys' in a
   (single-level) package.
 - 'from __future__ import absolute_import' will turn on the new semantics
   for import and from-import: imports will be absolute, except for
   from-import with dots.
Includes tests for regular imports and importhooks, parser changes and a
NEWS item, but no compiler-package changes or documentation changes. 
							
						 
						
							2006-02-28 16:09:29 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Thomas Wouters 
								
							 
						 
						
							
							
							
							
								
							
							
								1175c43a12 
								
							 
						 
						
							
							
								
								Clarify C-style exception handling with proper label name.  
							
							
							
						 
						
							2006-02-27 22:49:54 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Thomas Wouters 
								
							 
						 
						
							
							
							
							
								
							
							
								bfe51ea5c8 
								
							 
						 
						
							
							
								
								Fix assertions.  
							
							
							
						 
						
							2006-02-27 22:48:55 +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 
								
							 
						 
						
							
							
							
							
								
							
							
								18e165558b 
								
							 
						 
						
							
							
								
								Merge ssize_t branch.  
							
							
							
						 
						
							2006-02-15 17:27:45 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Neal Norwitz 
								
							 
						 
						
							
							
							
							
								
							
							
								08b401f67a 
								
							 
						 
						
							
							
								
								Fix icc warnings: single bit fields should be unsigned, shadowing local variables  
							
							
							
						 
						
							2006-01-07 21:24:09 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Martin v. Löwis 
								
							 
						 
						
							
							
							
							
								
							
							
								94962615b7 
								
							 
						 
						
							
							
								
								Adjust usage of compiler_use_new_block to its return type.  
							
							
							
						 
						
							2006-01-02 21:15:05 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Fredrik Lundh 
								
							 
						 
						
							
							
							
							
								
							
							
								93d69a7948 
								
							 
						 
						
							
							
								
								fixed compilation with an ordinary C89 compiler  
							
							
							
						 
						
							2005-12-18 15:44:21 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Neal Norwitz 
								
							 
						 
						
							
							
							
							
								
							
							
								51abbc7b4a 
								
							 
						 
						
							
							
								
								Fix Armin's bug 1333982. He found it, he didn't created it :-)  
							
							... 
							
							
							
							This code generated a C assertion:
        assert 1, ([s for s in x] +
                   [s for s in x])
        pass
assert was completely broken, it needed to use the proper block.
compiler_use_block() is now no longer used, so remove it. 
							
						 
						
							2005-12-18 07:06:23 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Neal Norwitz 
								
							 
						 
						
							
							
							
							
								
							
							
								4e6bf49a5e 
								
							 
						 
						
							
							
								
								Handle more error conditions with SystemError  
							
							
							
						 
						
							2005-12-18 05:32:41 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Neal Norwitz 
								
							 
						 
						
							
							
							
							
								
							
							
								87b801cc2d 
								
							 
						 
						
							
							
								
								Set MemoryError when alloc fails  
							
							
							
						 
						
							2005-12-18 04:42:47 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Neal Norwitz 
								
							 
						 
						
							
							
							
							
								
							
							
								adb69fcdff 
								
							 
						 
						
							
							
								
								Merge from ast-arena.  This reduces the code in Python/ast.c by ~300 lines,  
							
							... 
							
							
							
							simplifies a lot of error handling code, and fixes many memory leaks. 
							
						 
						
							2005-12-17 20:54:49 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Neal Norwitz 
								
							 
						 
						
							
							
							
							
								
							
							
								28b32ac6bc 
								
							 
						 
						
							
							
								
								Simplify logic for handling import *  
							
							
							
						 
						
							2005-12-06 07:41:30 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Neal Norwitz 
								
							 
						 
						
							
							
							
							
								
							
							
								3715c3e576 
								
							 
						 
						
							
							
								
								Fix a few more ref leaks.  Backport candidate  
							
							
							
						 
						
							2005-11-24 22:09:18 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Neal Norwitz 
								
							 
						 
						
							
							
							
							
								
							
							
								7bcabc60a3 
								
							 
						 
						
							
							
								
								Fix a few more memory leaks  
							
							... 
							
							
							
							Document more info about the benefits of configuring without
pymalloc when running valgrind 
							
						 
						
							2005-11-20 23:58:38 +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 
								
							 
						 
						
							
							
							
							
								
							
							
								944d3eb154 
								
							 
						 
						
							
							
								
								Correctly handle identifiers for anonymous scopes and align genexpr name with symtable.c  
							
							
							
						 
						
							2005-11-16 12:46:55 +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 
								
							 
						 
						
							
							
							
							
								
							
							
								2744c6cc35 
								
							 
						 
						
							
							
								
								make internal method static  
							
							
							
						 
						
							2005-11-13 01:08:38 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Neil Schemenauer 
								
							 
						 
						
							
							
							
							
								
							
							
								c396d9edd6 
								
							 
						 
						
							
							
								
								Ensure that compiler_exit_scope() is called as necessary to free memory  
							
							... 
							
							
							
							allocated by compiler_enter_scope().  Change return type for
compiler_exit_scope() to be void. 
							
						 
						
							2005-10-25 06:30:14 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Neal Norwitz 
								
							 
						 
						
							
							
							
							
								
							
							
								f1d50684c6 
								
							 
						 
						
							
							
								
								Fix problem handling EXTENDED_ARGs from SF bug # 1333982  
							
							
							
						 
						
							2005-10-23 23:00:41 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Neal Norwitz 
								
							 
						 
						
							
							
							
							
								
							
							
								7d37f2ff40 
								
							 
						 
						
							
							
								
								cleanup a bit and reuse instrsize (instruction size).  working towards fixing problems with EXTENDED_ARG  
							
							
							
						 
						
							2005-10-23 22:40:47 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Neil Schemenauer 
								
							 
						 
						
							
							
							
							
								
							
							
								dad06a159e 
								
							 
						 
						
							
							
								
								Remove unnecessary local variable.  
							
							
							
						 
						
							2005-10-23 18:52: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 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Neil Schemenauer 
								
							 
						 
						
							
							
							
							
								
							
							
								3a44aaa30f 
								
							 
						 
						
							
							
								
								Use PyTuple_Pack instead of Py_BuildValue.  
							
							
							
						 
						
							2005-10-23 17:21:54 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Neil Schemenauer 
								
							 
						 
						
							
							
							
							
								
							
							
								d403c45386 
								
							 
						 
						
							
							
								
								Fix arigo's funky LOAD_NAME bug: implicit globals inside classes have  
							
							... 
							
							
							
							historically been looked up using LOAD_NAME, not LOAD_GLOBAL.
looked up by LOAD_NAME, not 
							
						 
						
							2005-10-23 04:24:49 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Neil Schemenauer 
								
							 
						 
						
							
							
							
							
								
							
							
								ac699efad8 
								
							 
						 
						
							
							
								
								Don't stop generating code for import statements after the first "import as"  
							
							... 
							
							
							
							part.  Fixes one bug from #1333982 . 
							
						 
						
							2005-10-23 03:45:42 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Neil Schemenauer 
								
							 
						 
						
							
							
							
							
								
							
							
								ccd19218bc 
								
							 
						 
						
							
							
								
								Use <lamba> as the function name for lambdas (matches old compiler).  
							
							
							
						 
						
							2005-10-21 18:09:19 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Armin Rigo 
								
							 
						 
						
							
							
							
							
								
							
							
								3144130217 
								
							 
						 
						
							
							
								
								ANSI-C-ify the placement of local var declarations.  
							
							
							
						 
						
							2005-10-21 12:57:31 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Jeremy Hylton 
								
							 
						 
						
							
							
							
							
								
							
							
								3e0055f8c6 
								
							 
						 
						
							
							
								
								Merge ast-branch to head  
							
							... 
							
							
							
							This change implements a new bytecode compiler, based on a
transformation of the parse tree to an abstract syntax defined in
Parser/Python.asdl.
The compiler implementation is not complete, but it is in stable
enough shape to run the entire test suite excepting two disabled
tests. 
							
						 
						
							2005-10-20 19:59:25 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Tim Peters 
								
							 
						 
						
							
							
							
							
								
							
							
								ea9dcdc062 
								
							 
						 
						
							
							
								
								com_yield_expr():  Squash new compiler wng about unreferenced local.  
							
							
							
						 
						
							2005-08-03 18:33:05 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Phillip J. Eby 
								
							 
						 
						
							
							
							
							
								
							
							
								0d6615fd29 
								
							 
						 
						
							
							
								
								PEP 342 implementation.  Per Guido's comments, the generator throw()  
							
							... 
							
							
							
							method still needs to support string exceptions, and allow None for the
third argument.  Documentation updates are needed, too. 
							
						 
						
							2005-08-02 00:46:46 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brett Cannon 
								
							 
						 
						
							
							
							
							
								
							
							
								c9371d4a1b 
								
							 
						 
						
							
							
								
								Fix signedness of various char variables to stop causing a warning under gcc 4.  
							
							
							
						 
						
							2005-06-25 08:23:41 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brett Cannon 
								
							 
						 
						
							
							
							
							
								
							
							
								409d8f2ebd 
								
							 
						 
						
							
							
								
								Allow classes to be defined with empty parentheses.  This means that  
							
							... 
							
							
							
							``class C(): pass`` is no longer a syntax error. 
							
						 
						
							2005-03-05 06:47:57 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brett Cannon 
								
							 
						 
						
							
							
							
							
								
							
							
								5dc8ced4a8 
								
							 
						 
						
							
							
								
								Silence a gcc warning about putting in parentheses around && expressions mixed  
							
							... 
							
							
							
							with || expressions.  Also clarifies intend of 'if' conditional. 
							
						 
						
							2005-03-03 07:01:48 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								e63a078635 
								
							 
						 
						
							
							
								
								Preserve sign of -0.0 when result is run through marshal.  
							
							
							
						 
						
							2005-02-23 13:37:55 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								07359a7fed 
								
							 
						 
						
							
							
								
								Document how the pattern recognizer keeps all of its references in bounds.  
							
							... 
							
							
							
							Add a test in case the underlying assumptions ever change (i.e. the
compiler starts generating code blocks that are not punctuated by
RETURN_VALUE). 
							
						 
						
							2005-02-21 20:03:14 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								80121491e0 
								
							 
						 
						
							
							
								
								Teach the peepholer to fold unary operations on constants.  
							
							... 
							
							
							
							Afterwards, -0.5 loads in a single step and no longer requires a runtime
UNARY_NEGATIVE operation. 
							
						 
						
							2005-02-20 12:41:32 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								b615bf0681 
								
							 
						 
						
							
							
								
								Remove the set conversion which didn't work with:  [] in (0,)  
							
							
							
						 
						
							2005-02-10 01:42:32 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								5e547969f8 
								
							 
						 
						
							
							
								
								Have set conversion replace existing constant if not used elsewhere.  
							
							
							
						 
						
							2005-02-09 21:24:51 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								7fcb7869ba 
								
							 
						 
						
							
							
								
								Adopt Skip's idea to optimize lists of constants in the context  
							
							... 
							
							
							
							of a "in" or "not in" test. 
							
						 
						
							2005-02-07 19:32:38 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								a164574937 
								
							 
						 
						
							
							
								
								Transform "x in (1,2,3)" to "x in frozenset([1,2,3])".  
							
							... 
							
							
							
							Inspired by Skip's idea to recognize the throw-away nature of sequences
in this context and to transform their type to one with better performance. 
							
						 
						
							2005-02-06 22:05:42 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								9feb267caf 
								
							 
						 
						
							
							
								
								Do not fold a constant if a large sequence will result.  
							
							... 
							
							
							
							Saves space in the presence of code like: (None,)*10000 
							
						 
						
							2005-01-26 12:50:05 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Armin Rigo 
								
							 
						 
						
							
							
							
							
								
							
							
								664b43b3f4 
								
							 
						 
						
							
							
								
								Re-running python with/without the -Qnew flag uses incorrectly optimized  
							
							... 
							
							
							
							bytecodes from the previously saved .pyc files.  Fixed by disabling the static
optimization of BINARY_DIVIDE between two constants. 
							
						 
						
							2005-01-07 18:10:51 +00:00