| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PEP 238. Changes:
- add a new flag variable Py_DivisionWarningFlag, declared in
pydebug.h, defined in object.c, set in main.c, and used in
{int,long,float,complex}object.c. When this flag is set, the
classic division operator issues a DeprecationWarning message.
- add a new API PyRun_SimpleStringFlags() to match
PyRun_SimpleString(). The main() function calls this so that
commands run with -c can also benefit from -Dnew.
- While I was at it, I changed the usage message in main() somewhat:
alphabetized the options, split it in *four* parts to fit in under
512 bytes (not that I still believe this is necessary -- doc strings
elsewhere are much longer), and perhaps most visibly, don't display
the full list of options on each command line error. Instead, the
full list is only displayed when -h is used, and otherwise a brief
reminder of -h is displayed. When -h is used, write to stdout so
that you can do `python -h | more'.
Notes:
- I don't want to use the -W option to control whether the classic
division warning is issued or not, because the machinery to decide
whether to display the warning or not is very expensive (it involves
calling into the warnings.py module). You can use -Werror to turn
the warnings into exceptions though.
- The -Dnew option doesn't select future division for all of the
program -- only for the __main__ module. I don't know if I'll ever
change this -- it would require changes to the .pyc file magic
number to do it right, and a more global notion of compiler flags.
- You can usefully combine -Dwarn and -Dnew: this gives the __main__
module new division, and warns about classic division everywhere
else.
|
|
|
|
| |
xxx_subtype_new() functions are OK, but I goofed up in this one. :-( )
|
| |
|
|
|
|
|
| |
type and obj properties. The "bogus super object" message is gone --
this will now just raise an AttributeError.
|
|
|
|
| |
untested).
|
|
|
|
|
|
| |
I actually rewrote normpath quite a bit: it had no test cases, and as
soon as I starting writing some I found several cases that didn't make
sense.
|
| |
|
| |
|
|
|
|
| |
looooong time. Reported by Chris Smith.
|
|
|
|
| |
itself, when we're looking for the resource file.
|
|
|
|
| |
scratchpad -- the merge is long behind us.
|
|
|
|
|
|
| |
using cooperative multiple inheritance.
inherits(): add a test for subclassing the unicode type.
|
|
|
|
| |
Consequences for Jython still unknown (but raised on Jython-Dev).
|
|
|
|
| |
object at %p>".
|
|
|
|
|
|
|
|
|
| |
Fix list comp code generation -- emit GET_ITER instead of Const(0)
after the list.
Add CO_GENERATOR flag to generators.
Get CO_xxx flags from the new module
|
| |
|
|
|
|
| |
tuples).
|
|
|
|
|
|
|
|
|
|
|
|
| |
__dict__ slot for string subtypes.
subtype_dealloc(): properly use _PyObject_GetDictPtr() to get the
(potentially negative) dict offset. Don't copy things into local
variables that are used only once.
type_new(): properly calculate a negative dict offset when tp_itemsize
is nonzero. The __dict__ attribute, if present, is now a calculated
attribute rather than a structure member.
|
|
|
|
|
| |
based on a suggestion from Tim Peters; also make sure that we're really
doing exponentiation and not multiplication.
|
|
|
|
| |
bug from compile.c. (SF bug #456756.)
|
|
|
|
|
| |
affect nodes without another operator. This was causing negated
exponentiations to drop the exponentiation. This closes SF bug #456756.
|
|
|
|
|
|
|
| |
tupledealloc(): only feed the free list when the type is really a
tuple, not a subtype. Otherwise, use PyObject_GC_Del().
_PyTuple_Resize(): disallow using this for tuple subtypes.
|
|
|
|
|
| |
PyInt_Check() succeeds. That returns true for subtypes of int, which
may override __add__ or __sub__.
|
|
|
|
|
| |
long_subtype_new(): fix a typo (type->ob_size instead of
tmp->ob_size).
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
default_getpass(). This should prevent hanging when it is called in
IDLE.
Fixes SF bug #455648.
|
|
|
|
| |
restricted execution mode.
|
|
|
|
| |
Algorithm. This closes SF bug #454917.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
"should have" been added here when they were added to lists).
|
|
|
|
| |
when that test is doomed to deadlock.
|
|
|
|
|
|
| |
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.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
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).
|
| |
|