Posted to tcl by de at Fri Apr 11 19:08:50 GMT 2008view pretty
tcl8.4.19rc0, build with --enable-symbols, added -DPURIFY In all.tcl: tcltest::singleProcess 1 (because on linux) (and before the return at the end of the file): proc exit args {} If I run: valgrind --num-callers=60 --leak-check=full --show-reachable=yes ./tcltest ../tests/all.tcl -file cmdAH.test -match 'cmdAH-2.3' valgrind returns: ==20547== Memcheck, a memory error detector. ==20547== Copyright (C) 2002-2006, and GNU GPL'd, by Julian Seward et al. ==20547== Using LibVEX rev 1658, a library for dynamic binary translation. ==20547== Copyright (C) 2004-2006, and GNU GPL'd, by OpenWorks LLP. ==20547== Using valgrind-3.2.1, a dynamic binary instrumentation framework. ==20547== Copyright (C) 2000-2006, and GNU GPL'd, by Julian Seward et al. ==20547== For more details, rerun with: -v ==20547== Tests running in interp: /home/rolf/tcltk/tcl8.4.19/unix/tcltest Tests located in: /home/rolf/tcltk/tcl8.4.19/tests Tests running in: /home/rolf/tcltk/tcl8.4.19/unix Temporary files stored in /home/rolf/tcltk/tcl8.4.19/unix Test files sourced into current interpreter Running tests that match: cmdAH-2.3 Skipping test files that match: l.*.test Only running test files that match: cmdAH.test Tests began at Fre Apr 11 21:03:28 CEST 2008 cmdAH.test Tests ended at Fre Apr 11 21:03:32 CEST 2008 all.tcl: Total 359 Passed 1 Skipped 358 Failed 0 Sourced 1 Test Files. ==20547== ==20547== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 120 from 3) ==20547== malloc/free: in use at exit: 16 bytes in 1 blocks. ==20547== malloc/free: 80,186 allocs, 80,185 frees, 4,445,230 bytes allocated. ==20547== For counts of detected errors, rerun with: -v ==20547== searching for pointers to 1 not-freed blocks. ==20547== checked 114,288 bytes. ==20547== ==20547== 16 bytes in 1 blocks are still reachable in loss record 1 of 1 ==20547== at 0x401ABC8: realloc (m_replacemalloc/vg_replace_malloc.c:306) ==20547== by 0x4040774: TclpRealloc (/home/rolf/tcltk/tcl8.4.19/generic/tclAlloc.c:735) ==20547== by 0x40488C4: Tcl_Realloc (/home/rolf/tcltk/tcl8.4.19/generic/tclCkalloc.c:1085) ==20547== by 0x406F465: TclSetEnv (/home/rolf/tcltk/tcl8.4.19/generic/tclEnv.c:246) ==20547== by 0x406F7BE: EnvTraceProc (/home/rolf/tcltk/tcl8.4.19/generic/tclEnv.c:559) ==20547== by 0x40BB51A: CallVarTraces (/home/rolf/tcltk/tcl8.4.19/generic/tclVar.c:4254) ==20547== by 0x40B8637: TclPtrSetVar (/home/rolf/tcltk/tcl8.4.19/generic/tclVar.c:1693) ==20547== by 0x40B81E9: Tcl_ObjSetVar2 (/home/rolf/tcltk/tcl8.4.19/generic/tclVar.c:1523) ==20547== by 0x40B7F87: Tcl_SetObjCmd (/home/rolf/tcltk/tcl8.4.19/generic/tclVar.c:1288) ==20547== by 0x40435B8: TclEvalObjvInternal (/home/rolf/tcltk/tcl8.4.19/generic/tclBasic.c:3219) ==20547== by 0x4044102: Tcl_EvalEx (/home/rolf/tcltk/tcl8.4.19/generic/tclBasic.c:4011) ==20547== by 0x4044937: Tcl_EvalObjEx (/home/rolf/tcltk/tcl8.4.19/generic/tclBasic.c:4529) ==20547== by 0x40AAA52: Tcl_UplevelObjCmd (/home/rolf/tcltk/tcl8.4.19/generic/tclProc.c:738) ==20547== by 0x40435B8: TclEvalObjvInternal (/home/rolf/tcltk/tcl8.4.19/generic/tclBasic.c:3219) ==20547== by 0x4072140: TclExecuteByteCode (/home/rolf/tcltk/tcl8.4.19/generic/tclExecute.c:1581) ==20547== by 0x40715AD: TclCompEvalObj (/home/rolf/tcltk/tcl8.4.19/generic/tclExecute.c:1106) ==20547== by 0x40AB22B: TclObjInterpProc (/home/rolf/tcltk/tcl8.4.19/generic/tclProc.c:1180) ==20547== by 0x40435B8: TclEvalObjvInternal (/home/rolf/tcltk/tcl8.4.19/generic/tclBasic.c:3219) ==20547== by 0x40437F6: Tcl_EvalObjv (/home/rolf/tcltk/tcl8.4.19/generic/tclBasic.c:3345) ==20547== by 0x40447EA: Tcl_EvalObjEx (/home/rolf/tcltk/tcl8.4.19/generic/tclBasic.c:4509) ==20547== by 0x40AAA52: Tcl_UplevelObjCmd (/home/rolf/tcltk/tcl8.4.19/generic/tclProc.c:738) ==20547== by 0x40435B8: TclEvalObjvInternal (/home/rolf/tcltk/tcl8.4.19/generic/tclBasic.c:3219) ==20547== by 0x4072140: TclExecuteByteCode (/home/rolf/tcltk/tcl8.4.19/generic/tclExecute.c:1581) ==20547== by 0x40715AD: TclCompEvalObj (/home/rolf/tcltk/tcl8.4.19/generic/tclExecute.c:1106) ==20547== by 0x40AB22B: TclObjInterpProc (/home/rolf/tcltk/tcl8.4.19/generic/tclProc.c:1180) ==20547== by 0x40435B8: TclEvalObjvInternal (/home/rolf/tcltk/tcl8.4.19/generic/tclBasic.c:3219) ==20547== by 0x40437F6: Tcl_EvalObjv (/home/rolf/tcltk/tcl8.4.19/generic/tclBasic.c:3345) ==20547== by 0x40447EA: Tcl_EvalObjEx (/home/rolf/tcltk/tcl8.4.19/generic/tclBasic.c:4509) ==20547== by 0x40AAA52: Tcl_UplevelObjCmd (/home/rolf/tcltk/tcl8.4.19/generic/tclProc.c:738) ==20547== by 0x40435B8: TclEvalObjvInternal (/home/rolf/tcltk/tcl8.4.19/generic/tclBasic.c:3219) ==20547== by 0x4072140: TclExecuteByteCode (/home/rolf/tcltk/tcl8.4.19/generic/tclExecute.c:1581) ==20547== by 0x40715AD: TclCompEvalObj (/home/rolf/tcltk/tcl8.4.19/generic/tclExecute.c:1106) ==20547== by 0x40AB22B: TclObjInterpProc (/home/rolf/tcltk/tcl8.4.19/generic/tclProc.c:1180) ==20547== by 0x409C1B0: InvokeImportedCmd (/home/rolf/tcltk/tcl8.4.19/generic/tclNamesp.c:1508) ==20547== by 0x40435B8: TclEvalObjvInternal (/home/rolf/tcltk/tcl8.4.19/generic/tclBasic.c:3219) ==20547== by 0x4044102: Tcl_EvalEx (/home/rolf/tcltk/tcl8.4.19/generic/tclBasic.c:4011) ==20547== by 0x4091FBD: Tcl_FSEvalFile (/home/rolf/tcltk/tcl8.4.19/generic/tclIOUtil.c:1776) ==20547== by 0x4053360: Tcl_SourceObjCmd (/home/rolf/tcltk/tcl8.4.19/generic/tclCmdMZ.c:1069) ==20547== by 0x40435B8: TclEvalObjvInternal (/home/rolf/tcltk/tcl8.4.19/generic/tclBasic.c:3219) ==20547== by 0x40437F6: Tcl_EvalObjv (/home/rolf/tcltk/tcl8.4.19/generic/tclBasic.c:3345) ==20547== by 0x40447EA: Tcl_EvalObjEx (/home/rolf/tcltk/tcl8.4.19/generic/tclBasic.c:4509) ==20547== by 0x40AAA52: Tcl_UplevelObjCmd (/home/rolf/tcltk/tcl8.4.19/generic/tclProc.c:738) ==20547== by 0x40435B8: TclEvalObjvInternal (/home/rolf/tcltk/tcl8.4.19/generic/tclBasic.c:3219) ==20547== by 0x4072140: TclExecuteByteCode (/home/rolf/tcltk/tcl8.4.19/generic/tclExecute.c:1581) ==20547== by 0x40715AD: TclCompEvalObj (/home/rolf/tcltk/tcl8.4.19/generic/tclExecute.c:1106) ==20547== by 0x40AB22B: TclObjInterpProc (/home/rolf/tcltk/tcl8.4.19/generic/tclProc.c:1180) ==20547== by 0x40435B8: TclEvalObjvInternal (/home/rolf/tcltk/tcl8.4.19/generic/tclBasic.c:3219) ==20547== by 0x4044102: Tcl_EvalEx (/home/rolf/tcltk/tcl8.4.19/generic/tclBasic.c:4011) ==20547== by 0x4091FBD: Tcl_FSEvalFile (/home/rolf/tcltk/tcl8.4.19/generic/tclIOUtil.c:1776) ==20547== by 0x409A00A: Tcl_Main (/home/rolf/tcltk/tcl8.4.19/generic/tclMain.c:295) ==20547== ==20547== LEAK SUMMARY: ==20547== definitely lost: 0 bytes in 0 blocks. ==20547== possibly lost: 0 bytes in 0 blocks. ==20547== still reachable: 16 bytes in 1 blocks. ==20547== suppressed: 0 bytes in 0 blocks.