[Compiler-sig] ast branch

Jeremy Hylton jeremy@alum.mit.edu
01 Apr 2003 18:46:35 -0500


I guess I better figure out how to use Valgrind, because it diagnoses
problems faster than I do :-).

The PyObject_Free(mod) fails in a debug build.
file_input containing 38 statements
Debug memory block at address p=0x8144f28:
    3688618971 bytes originally requested
    The 4 pad bytes at p-4 are not all FORBIDDENBYTE (0xfb):
        at p-4: 0x11 *** OUCH
        at p-3: 0x00 *** OUCH
        at p-2: 0x00 *** OUCH
        at p-1: 0x00 *** OUCH
    Because memory is corrupted at the start, the count of bytes
requested
       may be bogus, and checking the trailing pad bytes may segfault.
    The 4 pad bytes at tail=0xe3f02b03 are Segmentation fault (core
dumped)

Also, the compiler_use_next_block() after a jump is not the right answer
in the long run.  The next part means that there is a control flow from
the previous block to the next block.  If the previous block ends with a
jump, there's clearly no implicit control flow to the next block.  There
must be some other way to fix the problem, but I'm not sure what it is.

Jeremy