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
Benjamin Peterson
f19a7b90bd
A little reformating of Py3k warnings
2008-04-27 18:40:21 +00:00
Benjamin Peterson
9f4f48114f
Use PyErr_WarnPy3k throughout
2008-04-27 03:01:45 +00:00
Georg Brandl
d5b635f196
Make Py3k warnings consistent w.r.t. punctuation; also respect the
...
EOL 80 limit and supply more alternatives in warning messages.
2008-03-25 08:29:14 +00:00
Guido van Rossum
504153d55b
Issue #2341 : Add a Py3k warning when raising an exception that doesn't
...
derive from BaseException.
2008-03-18 04:26:48 +00:00
Guido van Rossum
20bda581e3
Clean up the Py3k warnings for non-BaseException-subclasses a bit. We
...
now don't warn for some corner cases that deserve a warning, rather
than warning double or incorrectly for some other corner cases.
2008-03-18 03:15:05 +00:00
Guido van Rossum
04edb528ca
- Issue #2371 : Add a Py3k warning when catching an exception that
...
doesn't derive from BaseException.
2008-03-18 02:49:46 +00:00
Nick Coghlan
7af53be66f
Speed up with statements by storing the __exit__ method on the stack instead of in a temp variable (bumps the magic number for pyc files)
2008-03-07 14:13:28 +00:00
Jeffrey Yasskin
9063a99042
compile.c always emits END_FINALLY after WITH_CLEANUP, so predict that in
...
ceval.c. This is worth about a .03-.04us speedup on a simple with block.
2008-03-03 01:27:03 +00:00
Neal Norwitz
8250fbeac6
Reduce buffer size since we do not need 1k
2008-01-27 17:12:15 +00:00
Guido van Rossum
1d9a9eaa89
Fix two crashers.
2008-01-23 20:19:01 +00:00
Christian Heimes
e93237dfcc
#1629 : Renamed Py_Size, Py_Type and Py_Refcnt to Py_SIZE, Py_TYPE and Py_REFCNT. Macros for b/w compatibility are available.
2007-12-19 02:37:44 +00:00
Raymond Hettinger
fd7ed407d7
Give meaning to the oparg for BUILD_MAP: estimated size of the dictionary.
...
Allows dictionaries to be pre-sized (upto 255 elements) saving time lost
to re-sizes with their attendant mallocs and re-insertions.
Has zero effect on small dictionaries (5 elements or fewer), a slight
benefit for dicts upto 22 elements (because they had to resize once
anyway), and more benefit for dicts upto 255 elements (saving multiple
resizes during the build-up and reducing the number of collisions on
the first insertions). Beyond 255 elements, there is no addional benefit.
2007-12-18 21:24:09 +00:00
Raymond Hettinger
effde12f5f
Speed-up dictionary constructor by about 10%.
...
New opcode, STORE_MAP saves the compiler from awkward stack manipulations
and specializes for dicts using PyDict_SetItem instead of PyObject_SetItem.
Old disassembly:
0 BUILD_MAP 0
3 DUP_TOP
4 LOAD_CONST 1 (1)
7 ROT_TWO
8 LOAD_CONST 2 ('x')
11 STORE_SUBSCR
12 DUP_TOP
13 LOAD_CONST 3 (2)
16 ROT_TWO
17 LOAD_CONST 4 ('y')
20 STORE_SUBSCR
New disassembly:
0 BUILD_MAP 0
3 LOAD_CONST 1 (1)
6 LOAD_CONST 2 ('x')
9 STORE_MAP
10 LOAD_CONST 3 (2)
13 LOAD_CONST 4 ('y')
16 STORE_MAP
2007-12-18 18:26:18 +00:00
Christian Heimes
52729ac856
Silence a warning about an unsed variable in debug builds
2007-12-14 02:33:57 +00:00
Georg Brandl
2d3953bd78
Fix typo.
2007-12-05 07:02:47 +00:00
Amaury Forgeot d'Arc
0d75f09177
Merge from py3k branch:
...
Correction for issue1265 (pdb bug with "with" statement).
When an unfinished generator-iterator is garbage collected, PyEval_EvalFrameEx
is called with a GeneratorExit exception set. This leads to funny results
if the sys.settrace function itself makes use of generators.
A visible effect is that the settrace function is reset to None.
Another is that the eventual "finally" block of the generator is not called.
It is necessary to save/restore the exception around the call to the trace
function.
This happens a lot with py3k: isinstance() of an ABCMeta instance runs
def __instancecheck__(cls, instance):
"""Override for isinstance(instance, cls)."""
return any(cls.__subclasscheck__(c)
for c in {instance.__class__, type(instance)})
which lets an opened generator expression each time it returns True.
Backport candidate, even if the case is less frequent in 2.5.
2007-11-13 21:54:28 +00:00
Raymond Hettinger
dc1d1ba9cf
Add build option for faster loop execution.
2007-11-07 02:45:46 +00:00
Thomas Wouters
e2176020f9
Try harder to stay within the 79-column limit. There's still two places that go (way) over, but those are harder to fix without suffering in readability.
2007-09-20 17:35:10 +00:00
Thomas Wouters
ae406c6018
Whitespace cleanup.
2007-09-19 17:27:43 +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
Georg Brandl
2134e754f2
Patch #1686487 : you can now pass any mapping after '**' in function calls.
2007-05-21 20:34:16 +00:00
Georg Brandl
bc1b5f1669
Remove an XXX that is unnecessary.
2007-05-11 09:41:37 +00:00
Kristján Valur Jónsson
2f2f57916c
Fix a bug when using the __lltrace__ opcode tracer, and a problem sith signed chars in frameobject.c which can occur with opcodes > 127
2007-04-13 22:07:33 +00:00