summaryrefslogtreecommitdiffstats
path: root/Python
Commit message (Collapse)AuthorAgeFilesLines
* Forgot a case where the locals can now be a general mappingArmin Rigo2006-11-291-1/+3
| | | | instead of just a dictionary. (backporting...)
* Bug #1588287: fix invalid assertion for `1,2` in debug builds.Neal Norwitz2006-11-041-0/+1
| | | | Will backport
* Update comments, remove commented out code.Neal Norwitz2006-10-291-87/+31
| | | | | Move assembler structure next to assembler code to make it easier to move it to a separate file.
* Clean up a leftover from old listcomp generation code.Georg Brandl2006-10-291-7/+1
|
* Fix bug #1565514, SystemError not raised on too many nested blocks.Neal Norwitz2006-10-281-1/+4
| | | | | | | It seems like this should be a different error than SystemError, but I don't have any great ideas and SystemError was raised in 2.4 and earlier. Will backport.
* Add some asserts. In sysmodule, I think these were to try to silenceNeal Norwitz2006-10-281-0/+4
| | | | | | | some warnings from Klokwork. They verify the assumptions of the format of svn version output. The assert in the thread module helped debug a problem on HP-UX.
* [Bug #1542016] Report PCALL_POP value. This makes the return value of ↵Andrew M. Kuchling2006-10-271-2/+2
| | | | | | | sys.callstats() match its docstring. Backport candidate. Though it's an API change, this is a pretty obscure portion of the API.
* Patch #1549049: Rewrite type conversion in structmember.Martin v. Löwis2006-10-271-53/+91
| | | | Fixes #1545696 and #1566140. Will backport to 2.5.
* Update the peephole optimizer to remove more dead code (jumps after returns)Neal Norwitz2006-10-142-5/+17
| | | | and inline jumps to returns.
* Bug #1283491: follow docstring convention wrt. keyword-able args in sum().Georg Brandl2006-10-121-2/+3
|
* Forward-port of r52136,52138: a review of overflow-detecting code.Armin Rigo2006-10-046-27/+37
| | | | | | | | | | | | | | | | | | | | | | | * unified the way intobject, longobject and mystrtoul handle values around -sys.maxint-1. * in general, trying to entierely avoid overflows in any computation involving signed ints or longs is extremely involved. Fixed a few simple cases where a compiler might be too clever (but that's all guesswork). * more overflow checks against bad data in marshal.c. * 2.5 specific: fixed a number of places that were still confusing int and Py_ssize_t. Some of them could potentially have caused "real-world" breakage. * list.pop(x): fixing overflow issues on x was messy. I just reverted to PyArg_ParseTuple("n"), which does the right thing. (An obscure test was trying to give a Decimal to list.pop()... doesn't make sense any more IMHO) * trying to write a few tests...
* Fix for SF bug 1569998: break permitted inside try.Jeremy Hylton2006-10-041-1/+13
| | | | | | | | The compiler was checking that there was something on the fblock stack, but not that there was a loop on the stack. Fixed that and added a test for the specific syntax error. Bug fix candidate.
* Fix minor typo in a comment.Brett Cannon2006-10-031-1/+1
|
* Very minor grammatical fix in a comment.Brett Cannon2006-09-281-1/+1
|
* Remove extra semi-colons reported by Johnny Lee on python-dev. Backport if ↵Neal Norwitz2006-09-231-1/+1
| | | | anyone cares.
* Bug #1557232: fix seg fault with def f((((x)))) and def f(((x),)).Neal Norwitz2006-09-221-2/+24
| | | | | | | These tests should be improved. Hopefully this fixes variations when flipping back and forth between fpdef and fplist. Backport candidate.
* Fix typo.Walter Dörwald2006-09-211-1/+1
|
* Forward-port of rev. 51857:Georg Brandl2006-09-111-1/+6
| | | | | | | | | | | Building with HP's cc on HP-UX turned up a couple of problems. _PyGILState_NoteThreadState was declared as static inconsistently. Make it static as it's not necessary outside of this module. Some tests failed because errno was reset to 0. (I think the tests that failed were at least: test_fcntl and test_mailbox). Ensure that errno doesn't change after a call to Py_END_ALLOW_THREADS. This only affected debug builds.
* Properly handle a NULL returned from PyArena_New().Neal Norwitz2006-09-111-2/+4
| | | | | | (Also fix some whitespace) Klocwork #364.
* with and as are now keywords. There are some generated files I can't recreate.Neal Norwitz2006-09-063-22/+14
|
* Bug #1550983: emit better error messages for erroneous relativeGeorg Brandl2006-09-061-2/+3
| | | | imports (if not in package and if beyond toplevel package).
* M-x untabifyNeal Norwitz2006-09-051-821/+821
|
* Add a comment about some refactoring. (There's probably more that should be ↵Neal Norwitz2006-09-051-6/+5
| | | | done.) I will reformat this file in the next checkin due to the inconsistent tabs/spaces.
* Bug #1520864 (again): unpacking singleton tuples in list comprehensions andNeal Norwitz2006-09-052-5/+14
| | | | | | | | | | | | | generator expressions (x for x, in ... ) works again. Sigh, I only fixed for loops the first time, not list comps and genexprs too. I couldn't find any more unpacking cases where there is a similar bug lurking. This code should be refactored to eliminate the duplication. I'm sure the listcomp/genexpr code can be refactored. I'm not sure if the for loop can re-use any of the same code though. Will backport to 2.5 (the only place it matters).
* Fix SF #1552093, eval docstring typo (3 ps in mapping)Neal Norwitz2006-09-051-1/+1
|
* Handle a few more error conditions.Neal Norwitz2006-08-211-0/+5
| | | | Klocwork 301 and 302. Will backport.
* Patch #1542451: disallow continue anywhere under a finallyNeal Norwitz2006-08-211-4/+9
| | | | | | I'm undecided if this should be backported to 2.5 or 2.5.1. Armin suggested to wait (I'm of the same opinion). Thomas W thinks it's fine to go in 2.5.
* Add assert to make Klocwork happy (#276)Neal Norwitz2006-08-211-0/+1
|
* Move peephole optimizer to separate file.Jeremy Hylton2006-08-212-608/+616
|
* Handle PyString_FromInternedString() failing (unlikely, but possible).Neal Norwitz2006-08-191-9/+8
| | | | | | Klocwork #325 (I'm not backporting this, but if someone wants to, feel free.)
* cpathname could be NULL if it was longer than MAXPATHLEN. Don't tryNeal Norwitz2006-08-131-1/+6
| | | | | | | | to write the .pyc to NULL. Check results of PyList_GetItem() and PyModule_GetDict() are not NULL. Klocwork 282, 283, 285
* Move/copy assert for tstate != NULL before first use.Neal Norwitz2006-08-131-1/+7
| | | | | | Verify that PyEval_Get{Globals,Locals} returned valid pointers. Klocwork 231-232
* Patch #1538606, Patch to fix __index__() clipping.Neal Norwitz2006-08-121-9/+9
| | | | | | | I modified this patch some by fixing style, some error checking, and adding XXX comments. This patch requires review and some changes are to be expected. I'm checking in now to get the greatest possible review and establish a baseline for moving forward. I don't want this to hold up release if possible.
* PyModule_GetDict() can fail, produce fatal errors if this happens on startup.Neal Norwitz2006-08-121-0/+4
| | | | Klocwork #298-299.
* Whoops, how did that get in there. :-) Revert all the parts of 51227 that ↵Neal Norwitz2006-08-122-12/+0
| | | | were not supposed to go it. Only Modules/_ctypes/cfields.c was supposed to be changed
* Check returned pointer is valid.Neal Norwitz2006-08-122-0/+12
| | | | Klocwork #233
* This code is actually not used unless WITHOUT_COMPLEX is defined.Neal Norwitz2006-08-121-0/+8
| | | | | | | | However, there was no error checking that PyFloat_FromDouble returned a valid pointer. I believe this change is correct as it seemed to follow other code in the area. Klocwork # 292.
* It's highly unlikely, though possible for PyEval_Get*() to return NULLs.Neal Norwitz2006-08-121-2/+2
| | | | | | So be safe and do an XINCREF. Klocwork # 221-222.
* Even though _Py_Mangle() isn't truly public anyone can call it andNeal Norwitz2006-08-121-2/+2
| | | | | | | | | | there was no verification that privateobj was a PyString. If it wasn't a string, this could have allowed a NULL pointer to creep in below and crash. I wonder if this should be PyString_CheckExact? Must identifiers be strings or can they be subclasses? Klocwork #275
* Klocwork made another run and found a bunch more problems.Neal Norwitz2006-08-122-1/+8
| | | | | | | 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).
* Followup to bug #1069160.Tim Peters2006-08-101-12/+27
| | | | | | PyThreadState_SetAsyncExc(): internal correctness changes wrt refcount safety and deadlock avoidance. Also added a basic test case (relying on ctypes) and repaired the docs.
* Concatenation on a long string breaks (SF #1526585).Armin Rigo2006-08-091-3/+9
|
* Introduce an upper bound on tuple nesting depth inGeorg Brandl2006-08-091-0/+3
| | | | C argument format strings; fixes rest of #1523610.
* Bug #1535165: fixed a segfault in input() and raw_input() whenGeorg Brandl2006-08-061-1/+1
| | | | sys.stdin is closed.
* On Windows, make PyErr_Warn an exported function again.Thomas Heller2006-08-041-1/+1
|
* There were really two issuesNeal Norwitz2006-08-041-1/+2
|
* Bug #1333982: string/number constants were inappropriately storedNeal Norwitz2006-08-041-2/+4
| | | | | in the byte code and co_consts even if they were not used, ie immediately popped off the stack.
* Bug #1191458: tracing over for loops now produces a line eventNeal Norwitz2006-08-042-8/+48
| | | | | | | | | | | | on each iteration. I'm not positive this is the best way to handle this. I'm also not sure that there aren't other cases where the lnotab is generated incorrectly. It would be great if people that use pdb or tracing could test heavily. Also: * Remove dead/duplicated code that wasn't used/necessary because we already handled the docstring prior to entering the loop. * add some debugging code into the compiler (#if 0'd out).
* Add some asserts and update commentsNeal Norwitz2006-07-302-2/+4
|
* Add PyErr_WarnEx() so C code can pass the stacklevel to warnings.warn().Neal Norwitz2006-07-301-2/+13
| | | | | | This provides the proper warning for struct.pack(). PyErr_Warn() is now deprecated in favor of PyErr_WarnEx(). As mentioned by Tim Peters on python-dev.