using a build directory just inside the source directory and saving
just one copy of the test data in the source tree, rather than having
a copy in each build directory.
* Can now test for basic blocks.
* Optimize inverted comparisions.
* Optimize unary_not followed by a conditional jump.
* Added a new opcode, NOP, to keep code size constant.
* Applied NOP to previous transformations where appropriate.
Note, the NOP would not be necessary if other functions were
added to re-target jump addresses and update the co_lnotab mapping.
That would yield slightly faster and cleaner bytecode at the
expense of optimizer simplicity and of keeping it decoupled
from the line-numbering structure.
* UINT_MAX -> ULONG_MAX since we are dealing with longs
* ParseTuple needs &int for 'i' and &long for 'l'
There may be a better way to do this, but this works.
Remove "." in coverage output for lines with comments.
Silence complaints in coverage output about unexecuted docstrings.
Eliminate use of inspect module in favor of direct access to frame and
code objects. We're in a trace function here: Efficiency counts!
Remove unused code. Reflow long lines.
Remove backwards compatibility for stored trace output from Zooko's
experiment to add calledfuncs to the pickled dict.
Move code to generate per-file coverage stats to a separate routine.
Replace use of parser module with call to compile.
- restructure build for modules now in Python DLL
README.os2emx
- clean out old cruft no longer appropriate now that EMX port builds
from CVS
- reflect move of modules into core DLL
- add section on building from source
string does what is expected (ie unset [BEGIN|END]LIBPATH)
- set the size of the DosQuerySysInfo buffer correctly; it was safe,
but incorrect (allowing a 1 element overrun)
* Fixed some long-hidden bugs revealed by the new PyUnit-based
test suite (thanks to Johannes Gijsbers the new test suite,
improved tests that caught the bugs, and the bug fixes).
* Make store_true/store_false store True/False rather than 1/0.
Details available in Optik's CVS repository.
I've applied a modified version of Greg Chapman's patch. I've included
the fixes without introducing the reorganization mentioned, for the sake
of stability. Also, the second fix mentioned in the patch don't fix the
mentioned problem anymore, because of the change introduced by patch
#720991 (by Greg as well). The new fix wasn't complicated though, and is
included as well.
As a note. It seems that there are other places that require the
"protection" of LASTMARK_SAVE()/LASTMARK_RESTORE(), and are just waiting
for someone to find how to break them. Particularly, I belive that every
recursion of SRE_MATCH() should be protected by these macros. I won't
do that right now since I'm not completely sure about this, and we don't
have much time for testing until the next release.
to be compliant with previous python versions, by backing out the changes
made in revision 2.84 which affected this. The bugfix for backtracking is
still maintained.
particular leaving the traceback object (and everything reachable
from it) alive throughout shutdown. The patch is mostly from Guido.
Bugfix candidate.
raising an exception. This is consistent with calling the
constructors for the other builtin types -- called without argument
they all return the false value of that type. (SF patch #724135)
Thanks to Alex Martelli.