break in gdbinit is apparently does not break a loop, but rather sets a break point. I don't know how to hit the break within lineno with a simple test case. Debugging pychecker with a C extension (matplotlib) triggers it.
The only way I could see to fix it was by setting a continue flag and testing it. Does anyone know a better way to fix this problem? A patch is attached which fixes the problem for me, but I would rather check in a better solution if one exists. Any ideas? Or should I just check in the attached patch. n -- more gory details. after the patch, i get the expected results: (gdb) pystack ./pychecker/checker.py (573): _initModule ./pychecker/checker.py (537): load ./pychecker/checker.py (517): addModule ./pychecker/checker.py (574): _initModule ./pychecker/checker.py (537): load ./pychecker/checker.py (517): addModule ./pychecker/checker.py (574): _initModule ./pychecker/checker.py (540): load ./pychecker/checker.py (668): processFiles ./pychecker/checker.py (721): main ./pychecker/checker.py (741): ? before the patch, i get this: (gdb) pystack ./pychecker/checker.py (Breakpoint 1 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 2 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 3 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 4 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 5 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 6 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 7 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 8 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 9 at 0x455372: file Objects/typeobject.c, line 2012. 584): _initModule ./pychecker/checker.py (Breakpoint 10 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 11 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 12 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 13 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 14 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 15 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 16 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 17 at 0x455372: file Objects/typeobject.c, line 2012. 545): load ./pychecker/checker.py (Breakpoint 18 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 19 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 20 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 21 at 0x455372: file Objects/typeobject.c, line 2012. 521): addModule ./pychecker/checker.py (Breakpoint 22 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 23 at 0x455372: file Objects/typeobject.c, line 2012. ---Type <return> to continue, or q <return> to quit--- Breakpoint 24 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 25 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 26 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 27 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 28 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 29 at 0x455372: file Objects/typeobject.c, line 2012. 584): _initModule ./pychecker/checker.py (Breakpoint 30 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 31 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 32 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 33 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 34 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 35 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 36 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 37 at 0x455372: file Objects/typeobject.c, line 2012. 545): load ./pychecker/checker.py (Breakpoint 38 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 39 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 40 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 41 at 0x455372: file Objects/typeobject.c, line 2012. 521): addModule ./pychecker/checker.py (Breakpoint 42 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 43 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 44 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 45 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 46 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 47 at 0x455372: file Objects/typeobject.c, line 2012. ---Type <return> to continue, or q <return> to quit--- Breakpoint 48 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 49 at 0x455372: file Objects/typeobject.c, line 2012. 584): _initModule ./pychecker/checker.py (Breakpoint 50 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 51 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 52 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 53 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 54 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 55 at 0x455372: file Objects/typeobject.c, line 2012. 545): load ./pychecker/checker.py (Breakpoint 56 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 57 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 58 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 59 at 0x455372: file Objects/typeobject.c, line 2012. 671): processFiles ./pychecker/checker.py (Breakpoint 60 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 61 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 62 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 63 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 64 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 65 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 66 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 67 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 68 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 69 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 70 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 71 at 0x455372: file Objects/typeobject.c, line 2012. ---Type <return> to continue, or q <return> to quit--- Breakpoint 72 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 73 at 0x455372: file Objects/typeobject.c, line 2012. 735): main ./pychecker/checker.py (Breakpoint 74 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 75 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 76 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 77 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 78 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 79 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 80 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 81 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 82 at 0x455372: file Objects/typeobject.c, line 2012. Breakpoint 83 at 0x455372: file Objects/typeobject.c, line 2012. 796): ?
gdbinit-patch
Description: Binary data
_______________________________________________ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com