Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Removed some unreachable break statements to silence SGI compiler. | Sjoerd Mullender | 2001-08-30 | 1 | -3/+0 |
| | |||||
* | Removed some unreachable break statements to silence SGI compiler. | Sjoerd Mullender | 2001-08-30 | 1 | -3/+0 |
| | |||||
* | Started on the 2.2a2 installer | Jack Jansen | 2001-08-30 | 1 | -0/+0 |
| | |||||
* | Give the internal immutable list type .extend and .pop methods (they | Tim Peters | 2001-08-30 | 1 | -0/+2 |
| | | | | "should have" been added here when they were added to lists). | ||||
* | Add a new function imp.lock_held(), and use it to skip test_threaded_import | Tim Peters | 2001-08-30 | 4 | -4/+47 |
| | | | | when that test is doomed to deadlock. | ||||
* | Safety measures now that str and tuple are subclassable: | Guido van Rossum | 2001-08-30 | 1 | -1/+9 |
| | | | | | | If tp_itemsize of the basetype is nonzero, only allow empty __slots__ (declaring that no __dict__ should be added), and don't add a weakref offset. | ||||
* | Make 'super' subclassable. (Not sure how useful this is yet. :-) | Guido van Rossum | 2001-08-30 | 1 | -1/+1 |
| | |||||
* | Make unicode subclassable. | Guido van Rossum | 2001-08-30 | 1 | -2/+32 |
| | |||||
* | Make str and tuple types subclassable. | Guido van Rossum | 2001-08-30 | 2 | -4/+54 |
| | |||||
* | Make getset subclassable. | Guido van Rossum | 2001-08-30 | 1 | -1/+1 |
| | |||||
* | Fix typo: double semicolons. | Guido van Rossum | 2001-08-30 | 2 | -2/+2 |
| | |||||
* | Make the Py<type>_Check() macro use PyObject_TypeCheck(). | Guido van Rossum | 2001-08-30 | 3 | -3/+3 |
| | |||||
* | Squash new compiler wng in debug build. | Tim Peters | 2001-08-30 | 1 | -1/+1 |
| | |||||
* | gcmodule is now always compiled | Neil Schemenauer | 2001-08-30 | 1 | -3/+0 |
| | |||||
* | gcmodule is now enabled here | Neil Schemenauer | 2001-08-30 | 1 | -0/+6 |
| | |||||
* | Make more things internal to this file. Remove | Neil Schemenauer | 2001-08-30 | 1 | -93/+148 |
| | | | | | | | | | visit_finalizer_reachable since it's the same as visit_reachable. Rename visit_reachable to visit_move. Objects can now have the GC type flag set, reachable by tp_traverse and not be in a GC linked list. This should make the collector more robust and easier to use by extension module writers. Add memory management functions for container objects (new, del, resize). | ||||
* | Always build gcmodule. | Neil Schemenauer | 2001-08-29 | 1 | -297/+303 |
| | |||||
* | Flush output more aggressively. This makes things look better if | Neil Schemenauer | 2001-08-29 | 1 | -0/+2 |
| | | | | the setup script is running from inside Vim. | ||||
* | Use new GC API. Remove usage of BASICSIZE macros. | Neil Schemenauer | 2001-08-29 | 1 | -18/+18 |
| | |||||
* | Use new GC API. | Neil Schemenauer | 2001-08-29 | 8 | -99/+76 |
| | |||||
* | Remove GC related code. It lives in gcmodule now. | Neil Schemenauer | 2001-08-29 | 1 | -26/+1 |
| | |||||
* | Make frames a PyVarObject. Use new GC API. | Neil Schemenauer | 2001-08-29 | 1 | -30/+14 |
| | |||||
* | Remove bogus PyGC_HEAD_SIZE. | Neil Schemenauer | 2001-08-29 | 1 | -1/+1 |
| | |||||
* | Change the GC type flag since the API has changed. Allow types using | Neil Schemenauer | 2001-08-29 | 1 | -50/+66 |
| | | | | | | | the old flag to still compile. Remove the PyType_BASICSIZE and PyType_SET_BASICSIZE macros. Add PyObject_GC_New, PyObject_GC_NewVar, PyObject_GC_Resize, PyObject_GC_Del, PyObject_GC_Track, PyObject_GC_UnTrack. Part of SF patch #421893. | ||||
* | Change the GC type flag since the API has changed. Allow types using | Neil Schemenauer | 2001-08-29 | 1 | -6/+10 |
| | | | | the old flag to still compile. | ||||
* | Make frames a PyVarObject instead of a PyObject. | Neil Schemenauer | 2001-08-29 | 1 | -2/+1 |
| | |||||
* | Always compile gcmodule. | Neil Schemenauer | 2001-08-29 | 2 | -6/+3 |
| | |||||
* | Track the block stack more reasonably in order to handle continue in | Jeremy Hylton | 2001-08-29 | 2 | -26/+90 |
| | | | | | | | | try/except or try/finally. Previous versions had only track SETUP_LOOP blocks and ignored the exception part. This meant that it allowed continue inside a try/except but generated buggy code. Now it does the right thing. | ||||
* | Improve stack depth computation for try/except and try/finally | Jeremy Hylton | 2001-08-29 | 2 | -2/+8 |
| | | | | Add CONTINUE_LOOP to the list of unconditional transfers | ||||
* | Add __getitem__() handler for use by visitContinue() | Jeremy Hylton | 2001-08-29 | 2 | -0/+4 |
| | |||||
* | Added xx and xxsubtype modules, for completeness and because xxsubtype is ↵ | Jack Jansen | 2001-08-29 | 2 | -0/+7 |
| | | | | used by the test suite. | ||||
* | Started on release notes and readme for 2.2a2. | Jack Jansen | 2001-08-29 | 2 | -52/+113 |
| | |||||
* | SF bug [#456252] Python should never stomp on [u]intptr_t. | Tim Peters | 2001-08-29 | 6 | -17/+22 |
| | | | | | | | | | | | pyport.h: typedef a new Py_intptr_t type. DELICATE ASSUMPTION: That HAVE_UINTPTR_T implies intptr_t is available as well as uintptr_t. If that turns out not to be true, things must get uglier (C99 wants both, so I think it's an assumption we're *likely* to get away with). thread_nt.h, PyThread_start_new_thread: MS _beginthread is documented as returning unsigned long; no idea why uintptr_t was being used. Others: Always use Py_[u]intptr_t, never [u]intptr_t directly. | ||||
* | Generate SET_LINENO for list and tuple literals when the open paren | Jeremy Hylton | 2001-08-29 | 2 | -2/+6 |
| | | | | | | | starts a new line. Also fix undetected typo in visitDict() -- uncovered by recent change to add lineno attrs to atoms. | ||||
* | Make sure that atoms (Tuple, List, etc.) have lineno attributes | Jeremy Hylton | 2001-08-29 | 2 | -4/+8 |
| | |||||
* | Fix off-by-one errors in code to find depth of stack. | Jeremy Hylton | 2001-08-29 | 2 | -6/+6 |
| | | | | | XXX The code is still widely inaccurate, but most (all?) of the time it's an overestimate. | ||||
* | Workaround by Tim Peters to skip this test if run from test.autotest, | Jack Jansen | 2001-08-29 | 1 | -1/+5 |
| | | | | | in which case it will hang because the import lock is already held by the main thread. | ||||
* | Undo change from list to dict for handling varnames, consts, etc. | Jeremy Hylton | 2001-08-29 | 2 | -98/+44 |
| | | | | | | | | | | As the doc string for _lookupName() explains: This routine uses a list instead of a dictionary, because a dictionary can't store two different keys if the keys have the same value but different types, e.g. 2 and 2L. The compiler must treat these two separately, so it does an explicit type comparison before comparing the values. | ||||
* | Change default() to use getChildNodes() instead of getChildren() | Jeremy Hylton | 2001-08-29 | 2 | -6/+4 |
| | |||||
* | Support // and //= | Jeremy Hylton | 2001-08-29 | 2 | -2/+12 |
| | | | | | | | Generate SET_LINENO for del statements. Define klass=1 for PyFlowGraph constructor for a class statement. A class has no varnames. | ||||
* | Add support for // and //=. | Jeremy Hylton | 2001-08-29 | 2 | -10/+32 |
| | | | | | | | | Avoid if/elif/elif/else tests where the final else is supposed to handle exactly one case instead of all other cases. When the list of operators is extended, the catchall else treats all new operators as the last operator in the set of tests. Instead, raise an exception if an unexpected operator occurs. | ||||
* | Add generator detection to symbol table. | Jeremy Hylton | 2001-08-29 | 2 | -18/+70 |
| | | | | | Fix bug in handling of statements like "l[x:y] = 2". The visitor was treating this as assignments to l, x, and y! | ||||
* | Modify name conversion to be (hopefully) a bit more efficient. | Jeremy Hylton | 2001-08-29 | 2 | -34/+104 |
| | | | | | | | | Use a dictionary instead of a list to map objects to their offsets in a const/name tuple of a code object. XXX The conversion is perhaps incomplete, in that we shouldn't have to do the list2dict to start. | ||||
* | Revise implementations of getChildren() and getChildNodes(). | Jeremy Hylton | 2001-08-29 | 6 | -318/+1528 |
| | | | | | | | | | | | | | | | | Add support for floor division (// and //=) The implementation of getChildren() and getChildNodes() is intended to be faster, because it avoids calling flatten() on every return value. But it's not clear that it is a lot faster, because constructing a tuple with just the right values ends up being slow. (Too many attribute lookups probably.) The ast.txt file is much more complicated, with funny characters at the ends of names (*, &, !) to indicate the types of each child node. The astgen script is also much more complex, making me wonder if it's still useful. | ||||
* | Add opcodes for floor division and true division (PEP 238) | Jeremy Hylton | 2001-08-29 | 1 | -0/+4 |
| | |||||
* | Add tests for augmented floor division | Jeremy Hylton | 2001-08-29 | 2 | -0/+27 |
| | |||||
* | Don't include doc string of class in its code child | Jeremy Hylton | 2001-08-29 | 2 | -0/+10 |
| | |||||
* | Now that int is subclassable, have to change a test that tests for | Guido van Rossum | 2001-08-29 | 1 | -2/+2 |
| | | | | non-subclassability. (More tests for number subclassing should follow.) | ||||
* | Make int, long and float subclassable. | Guido van Rossum | 2001-08-29 | 3 | -14/+111 |
| | | | | This uses a slightly wimpy and wasteful approach, but it works. :-) | ||||
* | Fix super() so that it is usable for static methods (like __new__) as well. | Guido van Rossum | 2001-08-29 | 1 | -8/+27 |
| | | | | | In particular, the second argument can now be a subclass of the first as well (normally it must be an instance though). |