Posted to tcl by de at Fri Apr 11 19:08:50 GMT 2008view raw

  1.  
  2. tcl8.4.19rc0, build with --enable-symbols, added -DPURIFY
  3.  
  4. In all.tcl:
  5. tcltest::singleProcess 1 (because on linux)
  6. (and before the return at the end of the file):
  7. proc exit args {}
  8.  
  9. If I run:
  10.  
  11. valgrind --num-callers=60 --leak-check=full --show-reachable=yes ./tcltest ../tests/all.tcl -file cmdAH.test -match 'cmdAH-2.3'
  12.  
  13. valgrind returns:
  14.  
  15. ==20547== Memcheck, a memory error detector.
  16. ==20547== Copyright (C) 2002-2006, and GNU GPL'd, by Julian Seward et al.
  17. ==20547== Using LibVEX rev 1658, a library for dynamic binary translation.
  18. ==20547== Copyright (C) 2004-2006, and GNU GPL'd, by OpenWorks LLP.
  19. ==20547== Using valgrind-3.2.1, a dynamic binary instrumentation framework.
  20. ==20547== Copyright (C) 2000-2006, and GNU GPL'd, by Julian Seward et al.
  21. ==20547== For more details, rerun with: -v
  22. ==20547==
  23. Tests running in interp: /home/rolf/tcltk/tcl8.4.19/unix/tcltest
  24. Tests located in: /home/rolf/tcltk/tcl8.4.19/tests
  25. Tests running in: /home/rolf/tcltk/tcl8.4.19/unix
  26. Temporary files stored in /home/rolf/tcltk/tcl8.4.19/unix
  27. Test files sourced into current interpreter
  28. Running tests that match: cmdAH-2.3
  29. Skipping test files that match: l.*.test
  30. Only running test files that match: cmdAH.test
  31. Tests began at Fre Apr 11 21:03:28 CEST 2008
  32. cmdAH.test
  33.  
  34. Tests ended at Fre Apr 11 21:03:32 CEST 2008
  35. all.tcl: Total 359 Passed 1 Skipped 358 Failed 0
  36. Sourced 1 Test Files.
  37. ==20547==
  38. ==20547== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 120 from 3)
  39. ==20547== malloc/free: in use at exit: 16 bytes in 1 blocks.
  40. ==20547== malloc/free: 80,186 allocs, 80,185 frees, 4,445,230 bytes allocated.
  41. ==20547== For counts of detected errors, rerun with: -v
  42. ==20547== searching for pointers to 1 not-freed blocks.
  43. ==20547== checked 114,288 bytes.
  44. ==20547==
  45. ==20547== 16 bytes in 1 blocks are still reachable in loss record 1 of 1
  46. ==20547== at 0x401ABC8: realloc (m_replacemalloc/vg_replace_malloc.c:306)
  47. ==20547== by 0x4040774: TclpRealloc (/home/rolf/tcltk/tcl8.4.19/generic/tclAlloc.c:735)
  48. ==20547== by 0x40488C4: Tcl_Realloc (/home/rolf/tcltk/tcl8.4.19/generic/tclCkalloc.c:1085)
  49. ==20547== by 0x406F465: TclSetEnv (/home/rolf/tcltk/tcl8.4.19/generic/tclEnv.c:246)
  50. ==20547== by 0x406F7BE: EnvTraceProc (/home/rolf/tcltk/tcl8.4.19/generic/tclEnv.c:559)
  51. ==20547== by 0x40BB51A: CallVarTraces (/home/rolf/tcltk/tcl8.4.19/generic/tclVar.c:4254)
  52. ==20547== by 0x40B8637: TclPtrSetVar (/home/rolf/tcltk/tcl8.4.19/generic/tclVar.c:1693)
  53. ==20547== by 0x40B81E9: Tcl_ObjSetVar2 (/home/rolf/tcltk/tcl8.4.19/generic/tclVar.c:1523)
  54. ==20547== by 0x40B7F87: Tcl_SetObjCmd (/home/rolf/tcltk/tcl8.4.19/generic/tclVar.c:1288)
  55. ==20547== by 0x40435B8: TclEvalObjvInternal (/home/rolf/tcltk/tcl8.4.19/generic/tclBasic.c:3219)
  56. ==20547== by 0x4044102: Tcl_EvalEx (/home/rolf/tcltk/tcl8.4.19/generic/tclBasic.c:4011)
  57. ==20547== by 0x4044937: Tcl_EvalObjEx (/home/rolf/tcltk/tcl8.4.19/generic/tclBasic.c:4529)
  58. ==20547== by 0x40AAA52: Tcl_UplevelObjCmd (/home/rolf/tcltk/tcl8.4.19/generic/tclProc.c:738)
  59. ==20547== by 0x40435B8: TclEvalObjvInternal (/home/rolf/tcltk/tcl8.4.19/generic/tclBasic.c:3219)
  60. ==20547== by 0x4072140: TclExecuteByteCode (/home/rolf/tcltk/tcl8.4.19/generic/tclExecute.c:1581)
  61. ==20547== by 0x40715AD: TclCompEvalObj (/home/rolf/tcltk/tcl8.4.19/generic/tclExecute.c:1106)
  62. ==20547== by 0x40AB22B: TclObjInterpProc (/home/rolf/tcltk/tcl8.4.19/generic/tclProc.c:1180)
  63. ==20547== by 0x40435B8: TclEvalObjvInternal (/home/rolf/tcltk/tcl8.4.19/generic/tclBasic.c:3219)
  64. ==20547== by 0x40437F6: Tcl_EvalObjv (/home/rolf/tcltk/tcl8.4.19/generic/tclBasic.c:3345)
  65. ==20547== by 0x40447EA: Tcl_EvalObjEx (/home/rolf/tcltk/tcl8.4.19/generic/tclBasic.c:4509)
  66. ==20547== by 0x40AAA52: Tcl_UplevelObjCmd (/home/rolf/tcltk/tcl8.4.19/generic/tclProc.c:738)
  67. ==20547== by 0x40435B8: TclEvalObjvInternal (/home/rolf/tcltk/tcl8.4.19/generic/tclBasic.c:3219)
  68. ==20547== by 0x4072140: TclExecuteByteCode (/home/rolf/tcltk/tcl8.4.19/generic/tclExecute.c:1581)
  69. ==20547== by 0x40715AD: TclCompEvalObj (/home/rolf/tcltk/tcl8.4.19/generic/tclExecute.c:1106)
  70. ==20547== by 0x40AB22B: TclObjInterpProc (/home/rolf/tcltk/tcl8.4.19/generic/tclProc.c:1180)
  71. ==20547== by 0x40435B8: TclEvalObjvInternal (/home/rolf/tcltk/tcl8.4.19/generic/tclBasic.c:3219)
  72. ==20547== by 0x40437F6: Tcl_EvalObjv (/home/rolf/tcltk/tcl8.4.19/generic/tclBasic.c:3345)
  73. ==20547== by 0x40447EA: Tcl_EvalObjEx (/home/rolf/tcltk/tcl8.4.19/generic/tclBasic.c:4509)
  74. ==20547== by 0x40AAA52: Tcl_UplevelObjCmd (/home/rolf/tcltk/tcl8.4.19/generic/tclProc.c:738)
  75. ==20547== by 0x40435B8: TclEvalObjvInternal (/home/rolf/tcltk/tcl8.4.19/generic/tclBasic.c:3219)
  76. ==20547== by 0x4072140: TclExecuteByteCode (/home/rolf/tcltk/tcl8.4.19/generic/tclExecute.c:1581)
  77. ==20547== by 0x40715AD: TclCompEvalObj (/home/rolf/tcltk/tcl8.4.19/generic/tclExecute.c:1106)
  78. ==20547== by 0x40AB22B: TclObjInterpProc (/home/rolf/tcltk/tcl8.4.19/generic/tclProc.c:1180)
  79. ==20547== by 0x409C1B0: InvokeImportedCmd (/home/rolf/tcltk/tcl8.4.19/generic/tclNamesp.c:1508)
  80. ==20547== by 0x40435B8: TclEvalObjvInternal (/home/rolf/tcltk/tcl8.4.19/generic/tclBasic.c:3219)
  81. ==20547== by 0x4044102: Tcl_EvalEx (/home/rolf/tcltk/tcl8.4.19/generic/tclBasic.c:4011)
  82. ==20547== by 0x4091FBD: Tcl_FSEvalFile (/home/rolf/tcltk/tcl8.4.19/generic/tclIOUtil.c:1776)
  83. ==20547== by 0x4053360: Tcl_SourceObjCmd (/home/rolf/tcltk/tcl8.4.19/generic/tclCmdMZ.c:1069)
  84. ==20547== by 0x40435B8: TclEvalObjvInternal (/home/rolf/tcltk/tcl8.4.19/generic/tclBasic.c:3219)
  85. ==20547== by 0x40437F6: Tcl_EvalObjv (/home/rolf/tcltk/tcl8.4.19/generic/tclBasic.c:3345)
  86. ==20547== by 0x40447EA: Tcl_EvalObjEx (/home/rolf/tcltk/tcl8.4.19/generic/tclBasic.c:4509)
  87. ==20547== by 0x40AAA52: Tcl_UplevelObjCmd (/home/rolf/tcltk/tcl8.4.19/generic/tclProc.c:738)
  88. ==20547== by 0x40435B8: TclEvalObjvInternal (/home/rolf/tcltk/tcl8.4.19/generic/tclBasic.c:3219)
  89. ==20547== by 0x4072140: TclExecuteByteCode (/home/rolf/tcltk/tcl8.4.19/generic/tclExecute.c:1581)
  90. ==20547== by 0x40715AD: TclCompEvalObj (/home/rolf/tcltk/tcl8.4.19/generic/tclExecute.c:1106)
  91. ==20547== by 0x40AB22B: TclObjInterpProc (/home/rolf/tcltk/tcl8.4.19/generic/tclProc.c:1180)
  92. ==20547== by 0x40435B8: TclEvalObjvInternal (/home/rolf/tcltk/tcl8.4.19/generic/tclBasic.c:3219)
  93. ==20547== by 0x4044102: Tcl_EvalEx (/home/rolf/tcltk/tcl8.4.19/generic/tclBasic.c:4011)
  94. ==20547== by 0x4091FBD: Tcl_FSEvalFile (/home/rolf/tcltk/tcl8.4.19/generic/tclIOUtil.c:1776)
  95. ==20547== by 0x409A00A: Tcl_Main (/home/rolf/tcltk/tcl8.4.19/generic/tclMain.c:295)
  96. ==20547==
  97. ==20547== LEAK SUMMARY:
  98. ==20547== definitely lost: 0 bytes in 0 blocks.
  99. ==20547== possibly lost: 0 bytes in 0 blocks.
  100. ==20547== still reachable: 16 bytes in 1 blocks.
  101. ==20547== suppressed: 0 bytes in 0 blocks.
  102.  
  103.