# New Ticket Created by  Will Coleda 
# Please include the string:  [perl #37814]
# in the subject line of all future correspondence about this issue. 
# <URL: https://rt.perl.org/rt3/Ticket/Display.html?id=37814 >


Backstory: I downloaded this tcl file:

http://cvs.sourceforge.net/viewcvs.py/tcl/tcl/library/tcltest/ 
tcltest.tcl?view=markup

And tried to run it against partcl to see where my implementation  
gaps were. Imagine my surprise when I got a bus error. I got a gdb  
backtrace against this, but, per leo, it's useless: functions are  
calling functions they aughtn't.

Attached, find the valgrind trace that leo did against this code. If  
anyone can figure this out, it'll be a big help to tcl in the short  
term. And, the problem does seem to be in parrot core, so it's not  
just for tcl.

Regards.

valgrind (amd64/linux) output of:

[EMAIL PROTECTED] tcl $ valgrind ../../parrot tcl.pbc -e=array 

==14404== Memcheck, a memory error detector.
==14404== Copyright (C) 2002-2005, and GNU GPL'd, by Julian Seward et al.
==14404== Using LibVEX rev 1367, a library for dynamic binary translation.
==14404== Copyright (C) 2004-2005, and GNU GPL'd, by OpenWorks LLP.
==14404== Using valgrind-3.0.1, a dynamic binary instrumentation framework.
==14404== Copyright (C) 2000-2005, and GNU GPL'd, by Julian Seward et al.
==14404== For more details, rerun with: -v
==14404== 
==14404== Conditional jump or move depends on uninitialised value(s)
==14404==    at 0x1190F413: (within /lib/ld-2.3.4.so)
==14404==    by 0x11903D0A: (within /lib/ld-2.3.4.so)
==14404==    by 0x11906028: (within /lib/ld-2.3.4.so)
==14404==    by 0x11903784: (within /lib/ld-2.3.4.so)
==14404==    by 0x1190DB17: (within /lib/ld-2.3.4.so)
==14404==    by 0x11901545: (within /lib/ld-2.3.4.so)
==14404==    by 0x11900AB7: (within /lib/ld-2.3.4.so)
==14404== 
==14404== Conditional jump or move depends on uninitialised value(s)
==14404==    at 0x1190F422: (within /lib/ld-2.3.4.so)
==14404==    by 0x11903D0A: (within /lib/ld-2.3.4.so)
==14404==    by 0x11906028: (within /lib/ld-2.3.4.so)
==14404==    by 0x11903784: (within /lib/ld-2.3.4.so)
==14404==    by 0x1190DB17: (within /lib/ld-2.3.4.so)
==14404==    by 0x11901545: (within /lib/ld-2.3.4.so)
==14404==    by 0x11900AB7: (within /lib/ld-2.3.4.so)
==14404== 
==14404== Conditional jump or move depends on uninitialised value(s)
==14404==    at 0x1190F431: (within /lib/ld-2.3.4.so)
==14404==    by 0x11903D0A: (within /lib/ld-2.3.4.so)
==14404==    by 0x11906028: (within /lib/ld-2.3.4.so)
==14404==    by 0x11903784: (within /lib/ld-2.3.4.so)
==14404==    by 0x1190DB17: (within /lib/ld-2.3.4.so)
==14404==    by 0x11901545: (within /lib/ld-2.3.4.so)
==14404==    by 0x11900AB7: (within /lib/ld-2.3.4.so)
==14404== 
==14404== Conditional jump or move depends on uninitialised value(s)
==14404==    at 0x1190F5A7: (within /lib/ld-2.3.4.so)
==14404==    by 0x11903D17: (within /lib/ld-2.3.4.so)
==14404==    by 0x11906028: (within /lib/ld-2.3.4.so)
==14404==    by 0x11903784: (within /lib/ld-2.3.4.so)
==14404==    by 0x1190DB17: (within /lib/ld-2.3.4.so)
==14404==    by 0x11901545: (within /lib/ld-2.3.4.so)
==14404==    by 0x11900AB7: (within /lib/ld-2.3.4.so)
==14404== 
==14404== Conditional jump or move depends on uninitialised value(s)
==14404==    at 0x1190F5A7: (within /lib/ld-2.3.4.so)
==14404==    by 0x11907E4C: (within /lib/ld-2.3.4.so)
==14404==    by 0x1190488F: (within /lib/ld-2.3.4.so)
==14404==    by 0x1190609D: (within /lib/ld-2.3.4.so)
==14404==    by 0x11903784: (within /lib/ld-2.3.4.so)
==14404==    by 0x1190DB17: (within /lib/ld-2.3.4.so)
==14404==    by 0x11901545: (within /lib/ld-2.3.4.so)
==14404==    by 0x11900AB7: (within /lib/ld-2.3.4.so)
==14404== 
==14404== Conditional jump or move depends on uninitialised value(s)
==14404==    at 0x119084AE: (within /lib/ld-2.3.4.so)
==14404==    by 0x119026B2: (within /lib/ld-2.3.4.so)
==14404==    by 0x1190DB17: (within /lib/ld-2.3.4.so)
==14404==    by 0x11901545: (within /lib/ld-2.3.4.so)
==14404==    by 0x11900AB7: (within /lib/ld-2.3.4.so)
==14404== 
==14404== Conditional jump or move depends on uninitialised value(s)
==14404==    at 0x119085E5: (within /lib/ld-2.3.4.so)
==14404==    by 0x119026B2: (within /lib/ld-2.3.4.so)
==14404==    by 0x1190DB17: (within /lib/ld-2.3.4.so)
==14404==    by 0x11901545: (within /lib/ld-2.3.4.so)
==14404==    by 0x11900AB7: (within /lib/ld-2.3.4.so)
==14404== 
==14404== Conditional jump or move depends on uninitialised value(s)
==14404==    at 0x11908609: (within /lib/ld-2.3.4.so)
==14404==    by 0x119026B2: (within /lib/ld-2.3.4.so)
==14404==    by 0x1190DB17: (within /lib/ld-2.3.4.so)
==14404==    by 0x11901545: (within /lib/ld-2.3.4.so)
==14404==    by 0x11900AB7: (within /lib/ld-2.3.4.so)
==14404== 
==14404== Conditional jump or move depends on uninitialised value(s)
==14404==    at 0x119084AE: (within /lib/ld-2.3.4.so)
==14404==    by 0x11902753: (within /lib/ld-2.3.4.so)
==14404==    by 0x1190DB17: (within /lib/ld-2.3.4.so)
==14404==    by 0x11901545: (within /lib/ld-2.3.4.so)
==14404==    by 0x11900AB7: (within /lib/ld-2.3.4.so)
==14404== 
==14404== Conditional jump or move depends on uninitialised value(s)
==14404==    at 0x119084B7: (within /lib/ld-2.3.4.so)
==14404==    by 0x11902753: (within /lib/ld-2.3.4.so)
==14404==    by 0x1190DB17: (within /lib/ld-2.3.4.so)
==14404==    by 0x11901545: (within /lib/ld-2.3.4.so)
==14404==    by 0x11900AB7: (within /lib/ld-2.3.4.so)
==14404== 
==14404== Invalid read of size 8
==14404==    at 0x1190F3C0: (within /lib/ld-2.3.4.so)
==14404==    by 0x11903D0A: (within /lib/ld-2.3.4.so)
==14404==    by 0x11906028: (within /lib/ld-2.3.4.so)
==14404==    by 0x1280689B: (within /lib/tls/libc-2.3.4.so)
==14404==    by 0x1190A61F: (within /lib/ld-2.3.4.so)
==14404==    by 0x128071C9: _dl_open (in /lib/tls/libc-2.3.4.so)
==14404==    by 0x11E5C0B3: (within /lib/libdl-2.3.4.so)
==14404==    by 0x1190A61F: (within /lib/ld-2.3.4.so)
==14404==    by 0x11E5C592: (within /lib/libdl-2.3.4.so)
==14404==    by 0x11E5C0F1: dlopen (in /lib/libdl-2.3.4.so)
==14404==    by 0x45ECCB: Parrot_load_lib (dynext.c:168)
==14404==    by 0x4841EE: Parrot_ParrotInterpreter_thawfinish 
(parrotinterpreter.pmc:575)
==14404==  Address 0x12E07B60 is 64 bytes inside a block of size 69 alloc'd
==14404==    at 0x11B19F9E: malloc (in /usr/lib/valgrind/vgpreload_memcheck.so)
==14404==    by 0x446DC5: mem_sys_allocate (memory.c:43)
==14404==    by 0x4547DE: Parrot_locate_runtime_file (library.c:249)
==14404==    by 0x45ECBB: Parrot_load_lib (dynext.c:165)
==14404==    by 0x4841EE: Parrot_ParrotInterpreter_thawfinish 
(parrotinterpreter.pmc:575)
==14404==    by 0x450C8F: visit_loop_todo_list (pmc_freeze.c:1397)
==14404==    by 0x450E36: run_thaw (pmc_freeze.c:1488)
==14404==    by 0x44BA3C: PackFile_Constant_unpack_pmc (packfile.c:3216)
==14404==    by 0x44BDE1: PackFile_Constant_unpack (packfile.c:3166)
==14404==    by 0x11C1F24F: ???
==14404== 
==14404== Conditional jump or move depends on uninitialised value(s)
==14404==    at 0x1190F3D0: (within /lib/ld-2.3.4.so)
==14404==    by 0x11903D0A: (within /lib/ld-2.3.4.so)
==14404==    by 0x11906028: (within /lib/ld-2.3.4.so)
==14404==    by 0x1280689B: (within /lib/tls/libc-2.3.4.so)
==14404==    by 0x1190A61F: (within /lib/ld-2.3.4.so)
==14404==    by 0x128071C9: _dl_open (in /lib/tls/libc-2.3.4.so)
==14404==    by 0x11E5C0B3: (within /lib/libdl-2.3.4.so)
==14404==    by 0x1190A61F: (within /lib/ld-2.3.4.so)
==14404==    by 0x11E5C592: (within /lib/libdl-2.3.4.so)
==14404==    by 0x11E5C0F1: dlopen (in /lib/libdl-2.3.4.so)
==14404==    by 0x45ECCB: Parrot_load_lib (dynext.c:168)
==14404==    by 0x4841EE: Parrot_ParrotInterpreter_thawfinish 
(parrotinterpreter.pmc:575)
==14404== 
==14404== Conditional jump or move depends on uninitialised value(s)
==14404==    at 0x1190F3DF: (within /lib/ld-2.3.4.so)
==14404==    by 0x11903D0A: (within /lib/ld-2.3.4.so)
==14404==    by 0x11906028: (within /lib/ld-2.3.4.so)
==14404==    by 0x1280689B: (within /lib/tls/libc-2.3.4.so)
==14404==    by 0x1190A61F: (within /lib/ld-2.3.4.so)
==14404==    by 0x128071C9: _dl_open (in /lib/tls/libc-2.3.4.so)
==14404==    by 0x11E5C0B3: (within /lib/libdl-2.3.4.so)
==14404==    by 0x1190A61F: (within /lib/ld-2.3.4.so)
==14404==    by 0x11E5C592: (within /lib/libdl-2.3.4.so)
==14404==    by 0x11E5C0F1: dlopen (in /lib/libdl-2.3.4.so)
==14404==    by 0x45ECCB: Parrot_load_lib (dynext.c:168)
==14404==    by 0x4841EE: Parrot_ParrotInterpreter_thawfinish 
(parrotinterpreter.pmc:575)
==14404== 
==14404== Conditional jump or move depends on uninitialised value(s)
==14404==    at 0x1190F3EE: (within /lib/ld-2.3.4.so)
==14404==    by 0x11903D0A: (within /lib/ld-2.3.4.so)
==14404==    by 0x11906028: (within /lib/ld-2.3.4.so)
==14404==    by 0x1280689B: (within /lib/tls/libc-2.3.4.so)
==14404==    by 0x1190A61F: (within /lib/ld-2.3.4.so)
==14404==    by 0x128071C9: _dl_open (in /lib/tls/libc-2.3.4.so)
==14404==    by 0x11E5C0B3: (within /lib/libdl-2.3.4.so)
==14404==    by 0x1190A61F: (within /lib/ld-2.3.4.so)
==14404==    by 0x11E5C592: (within /lib/libdl-2.3.4.so)
==14404==    by 0x11E5C0F1: dlopen (in /lib/libdl-2.3.4.so)
==14404==    by 0x45ECCB: Parrot_load_lib (dynext.c:168)
==14404==    by 0x4841EE: Parrot_ParrotInterpreter_thawfinish 
(parrotinterpreter.pmc:575)
==14404== 
==14404== Invalid read of size 8
==14404==    at 0x1190F580: (within /lib/ld-2.3.4.so)
==14404==    by 0x11903D17: (within /lib/ld-2.3.4.so)
==14404==    by 0x11906028: (within /lib/ld-2.3.4.so)
==14404==    by 0x1280689B: (within /lib/tls/libc-2.3.4.so)
==14404==    by 0x1190A61F: (within /lib/ld-2.3.4.so)
==14404==    by 0x128071C9: _dl_open (in /lib/tls/libc-2.3.4.so)
==14404==    by 0x11E5C0B3: (within /lib/libdl-2.3.4.so)
==14404==    by 0x1190A61F: (within /lib/ld-2.3.4.so)
==14404==    by 0x11E5C592: (within /lib/libdl-2.3.4.so)
==14404==    by 0x11E5C0F1: dlopen (in /lib/libdl-2.3.4.so)
==14404==    by 0x45ECCB: Parrot_load_lib (dynext.c:168)
==14404==    by 0x4841EE: Parrot_ParrotInterpreter_thawfinish 
(parrotinterpreter.pmc:575)
==14404==  Address 0x12E07B60 is 64 bytes inside a block of size 69 alloc'd
==14404==    at 0x11B19F9E: malloc (in /usr/lib/valgrind/vgpreload_memcheck.so)
==14404==    by 0x446DC5: mem_sys_allocate (memory.c:43)
==14404==    by 0x4547DE: Parrot_locate_runtime_file (library.c:249)
==14404==    by 0x45ECBB: Parrot_load_lib (dynext.c:165)
==14404==    by 0x4841EE: Parrot_ParrotInterpreter_thawfinish 
(parrotinterpreter.pmc:575)
==14404==    by 0x450C8F: visit_loop_todo_list (pmc_freeze.c:1397)
==14404==    by 0x450E36: run_thaw (pmc_freeze.c:1488)
==14404==    by 0x44BA3C: PackFile_Constant_unpack_pmc (packfile.c:3216)
==14404==    by 0x44BDE1: PackFile_Constant_unpack (packfile.c:3166)
==14404==    by 0x11C1F24F: ???
==14404== 
==14404== Conditional jump or move depends on uninitialised value(s)
==14404==    at 0x1190F58D: (within /lib/ld-2.3.4.so)
==14404==    by 0x11903D17: (within /lib/ld-2.3.4.so)
==14404==    by 0x11906028: (within /lib/ld-2.3.4.so)
==14404==    by 0x1280689B: (within /lib/tls/libc-2.3.4.so)
==14404==    by 0x1190A61F: (within /lib/ld-2.3.4.so)
==14404==    by 0x128071C9: _dl_open (in /lib/tls/libc-2.3.4.so)
==14404==    by 0x11E5C0B3: (within /lib/libdl-2.3.4.so)
==14404==    by 0x1190A61F: (within /lib/ld-2.3.4.so)
==14404==    by 0x11E5C592: (within /lib/libdl-2.3.4.so)
==14404==    by 0x11E5C0F1: dlopen (in /lib/libdl-2.3.4.so)
==14404==    by 0x45ECCB: Parrot_load_lib (dynext.c:168)
==14404==    by 0x4841EE: Parrot_ParrotInterpreter_thawfinish 
(parrotinterpreter.pmc:575)
==14404== 
==14404== Invalid read of size 8
==14404==    at 0x1190F580: (within /lib/ld-2.3.4.so)
==14404==    by 0x11907E4C: (within /lib/ld-2.3.4.so)
==14404==    by 0x1190488F: (within /lib/ld-2.3.4.so)
==14404==    by 0x1190609D: (within /lib/ld-2.3.4.so)
==14404==    by 0x1280689B: (within /lib/tls/libc-2.3.4.so)
==14404==    by 0x1190A61F: (within /lib/ld-2.3.4.so)
==14404==    by 0x128071C9: _dl_open (in /lib/tls/libc-2.3.4.so)
==14404==    by 0x11E5C0B3: (within /lib/libdl-2.3.4.so)
==14404==    by 0x1190A61F: (within /lib/ld-2.3.4.so)
==14404==    by 0x11E5C592: (within /lib/libdl-2.3.4.so)
==14404==    by 0x11E5C0F1: dlopen (in /lib/libdl-2.3.4.so)
==14404==    by 0x45ECCB: Parrot_load_lib (dynext.c:168)
==14404==  Address 0x12E07B60 is 64 bytes inside a block of size 69 alloc'd
==14404==    at 0x11B19F9E: malloc (in /usr/lib/valgrind/vgpreload_memcheck.so)
==14404==    by 0x446DC5: mem_sys_allocate (memory.c:43)
==14404==    by 0x4547DE: Parrot_locate_runtime_file (library.c:249)
==14404==    by 0x45ECBB: Parrot_load_lib (dynext.c:165)
==14404==    by 0x4841EE: Parrot_ParrotInterpreter_thawfinish 
(parrotinterpreter.pmc:575)
==14404==    by 0x450C8F: visit_loop_todo_list (pmc_freeze.c:1397)
==14404==    by 0x450E36: run_thaw (pmc_freeze.c:1488)
==14404==    by 0x44BA3C: PackFile_Constant_unpack_pmc (packfile.c:3216)
==14404==    by 0x44BDE1: PackFile_Constant_unpack (packfile.c:3166)
==14404==    by 0x11C1F24F: ???
==14404== 
==14404== Conditional jump or move depends on uninitialised value(s)
==14404==    at 0x1190F58D: (within /lib/ld-2.3.4.so)
==14404==    by 0x11907E4C: (within /lib/ld-2.3.4.so)
==14404==    by 0x1190488F: (within /lib/ld-2.3.4.so)
==14404==    by 0x1190609D: (within /lib/ld-2.3.4.so)
==14404==    by 0x1280689B: (within /lib/tls/libc-2.3.4.so)
==14404==    by 0x1190A61F: (within /lib/ld-2.3.4.so)
==14404==    by 0x128071C9: _dl_open (in /lib/tls/libc-2.3.4.so)
==14404==    by 0x11E5C0B3: (within /lib/libdl-2.3.4.so)
==14404==    by 0x1190A61F: (within /lib/ld-2.3.4.so)
==14404==    by 0x11E5C592: (within /lib/libdl-2.3.4.so)
==14404==    by 0x11E5C0F1: dlopen (in /lib/libdl-2.3.4.so)
==14404==    by 0x45ECCB: Parrot_load_lib (dynext.c:168)
==14404== 
==14404== Invalid read of size 8
==14404==    at 0x1190F580: (within /lib/ld-2.3.4.so)
==14404==    by 0x11907F89: (within /lib/ld-2.3.4.so)
==14404==    by 0x1190488F: (within /lib/ld-2.3.4.so)
==14404==    by 0x1190609D: (within /lib/ld-2.3.4.so)
==14404==    by 0x1280689B: (within /lib/tls/libc-2.3.4.so)
==14404==    by 0x1190A61F: (within /lib/ld-2.3.4.so)
==14404==    by 0x128071C9: _dl_open (in /lib/tls/libc-2.3.4.so)
==14404==    by 0x11E5C0B3: (within /lib/libdl-2.3.4.so)
==14404==    by 0x1190A61F: (within /lib/ld-2.3.4.so)
==14404==    by 0x11E5C592: (within /lib/libdl-2.3.4.so)
==14404==    by 0x11E5C0F1: dlopen (in /lib/libdl-2.3.4.so)
==14404==    by 0x45ECCB: Parrot_load_lib (dynext.c:168)
==14404==  Address 0x12E07C98 is 64 bytes inside a block of size 65 alloc'd
==14404==    at 0x11B19F9E: malloc (in /usr/lib/valgrind/vgpreload_memcheck.so)
==14404==    by 0x11903D23: (within /lib/ld-2.3.4.so)
==14404==    by 0x11906028: (within /lib/ld-2.3.4.so)
==14404==    by 0x1280689B: (within /lib/tls/libc-2.3.4.so)
==14404==    by 0x1190A61F: (within /lib/ld-2.3.4.so)
==14404==    by 0x128071C9: _dl_open (in /lib/tls/libc-2.3.4.so)
==14404==    by 0x11E5C0B3: (within /lib/libdl-2.3.4.so)
==14404==    by 0x1190A61F: (within /lib/ld-2.3.4.so)
==14404==    by 0x11E5C592: (within /lib/libdl-2.3.4.so)
==14404==    by 0x11E5C0F1: dlopen (in /lib/libdl-2.3.4.so)
==14404==    by 0x45ECCB: Parrot_load_lib (dynext.c:168)
==14404==    by 0x4841EE: Parrot_ParrotInterpreter_thawfinish 
(parrotinterpreter.pmc:575)
==14404== 
==14404== Invalid read of size 8
==14404==    at 0x1190F5CE: (within /lib/ld-2.3.4.so)
==14404==    by 0x11907B5B: (within /lib/ld-2.3.4.so)
==14404==    by 0x1280887C: (within /lib/tls/libc-2.3.4.so)
==14404==    by 0x11E5C173: (within /lib/libdl-2.3.4.so)
==14404==    by 0x1190A61F: (within /lib/ld-2.3.4.so)
==14404==    by 0x11E5C592: (within /lib/libdl-2.3.4.so)
==14404==    by 0x11E5C1D7: dlsym (in /lib/libdl-2.3.4.so)
==14404==    by 0x45EDE0: Parrot_load_lib (dynext.c:373)
==14404==    by 0x4841EE: Parrot_ParrotInterpreter_thawfinish 
(parrotinterpreter.pmc:575)
==14404==    by 0x450C8F: visit_loop_todo_list (pmc_freeze.c:1397)
==14404==    by 0x450E36: run_thaw (pmc_freeze.c:1488)
==14404==    by 0x44BA3C: PackFile_Constant_unpack_pmc (packfile.c:3216)
==14404==  Address 0x12E08368 is 24 bytes inside a block of size 26 alloc'd
==14404==    at 0x11B19F9E: malloc (in /usr/lib/valgrind/vgpreload_memcheck.so)
==14404==    by 0x446DC5: mem_sys_allocate (memory.c:43)
==14404==    by 0x44E2B3: string_to_cstring (string.c:2202)
==14404==    by 0x45EDD0: Parrot_load_lib (dynext.c:372)
==14404==    by 0x4841EE: Parrot_ParrotInterpreter_thawfinish 
(parrotinterpreter.pmc:575)
==14404==    by 0x450C8F: visit_loop_todo_list (pmc_freeze.c:1397)
==14404==    by 0x450E36: run_thaw (pmc_freeze.c:1488)
==14404==    by 0x44BA3C: PackFile_Constant_unpack_pmc (packfile.c:3216)
==14404==    by 0x44BDE1: PackFile_Constant_unpack (packfile.c:3166)
==14404==    by 0x11C1F24F: ???
==14404== 
==14404== Invalid read of size 8
==14404==    at 0x1190FB97: (within /lib/ld-2.3.4.so)
==14404==    by 0x11907B8E: (within /lib/ld-2.3.4.so)
==14404==    by 0x1280887C: (within /lib/tls/libc-2.3.4.so)
==14404==    by 0x11E5C173: (within /lib/libdl-2.3.4.so)
==14404==    by 0x1190A61F: (within /lib/ld-2.3.4.so)
==14404==    by 0x11E5C592: (within /lib/libdl-2.3.4.so)
==14404==    by 0x11E5C1D7: dlsym (in /lib/libdl-2.3.4.so)
==14404==    by 0x45EDE0: Parrot_load_lib (dynext.c:373)
==14404==    by 0x4841EE: Parrot_ParrotInterpreter_thawfinish 
(parrotinterpreter.pmc:575)
==14404==    by 0x450C8F: visit_loop_todo_list (pmc_freeze.c:1397)
==14404==    by 0x450E36: run_thaw (pmc_freeze.c:1488)
==14404==    by 0x44BA3C: PackFile_Constant_unpack_pmc (packfile.c:3216)
==14404==  Address 0x12E08368 is 24 bytes inside a block of size 26 alloc'd
==14404==    at 0x11B19F9E: malloc (in /usr/lib/valgrind/vgpreload_memcheck.so)
==14404==    by 0x446DC5: mem_sys_allocate (memory.c:43)
==14404==    by 0x44E2B3: string_to_cstring (string.c:2202)
==14404==    by 0x45EDD0: Parrot_load_lib (dynext.c:372)
==14404==    by 0x4841EE: Parrot_ParrotInterpreter_thawfinish 
(parrotinterpreter.pmc:575)
==14404==    by 0x450C8F: visit_loop_todo_list (pmc_freeze.c:1397)
==14404==    by 0x450E36: run_thaw (pmc_freeze.c:1488)
==14404==    by 0x44BA3C: PackFile_Constant_unpack_pmc (packfile.c:3216)
==14404==    by 0x44BDE1: PackFile_Constant_unpack (packfile.c:3166)
==14404==    by 0x11C1F24F: ???
==14404== 
==14404== Invalid read of size 8
==14404==    at 0x1190F580: (within /lib/ld-2.3.4.so)
==14404==    by 0x1190A413: (within /lib/ld-2.3.4.so)
==14404==    by 0x1190A5BD: (within /lib/ld-2.3.4.so)
==14404==  Address 0x12E07C98 is 64 bytes inside a block of size 65 alloc'd
==14404==    at 0x11B19F9E: malloc (in /usr/lib/valgrind/vgpreload_memcheck.so)
==14404==    by 0x11903D23: (within /lib/ld-2.3.4.so)
==14404==    by 0x11906028: (within /lib/ld-2.3.4.so)
==14404==    by 0x1280689B: (within /lib/tls/libc-2.3.4.so)
==14404==    by 0x1190A61F: (within /lib/ld-2.3.4.so)
==14404==    by 0x128071C9: _dl_open (in /lib/tls/libc-2.3.4.so)
==14404==    by 0x11E5C0B3: (within /lib/libdl-2.3.4.so)
==14404==    by 0x1190A61F: (within /lib/ld-2.3.4.so)
==14404==    by 0x11E5C592: (within /lib/libdl-2.3.4.so)
==14404==    by 0x11E5C0F1: dlopen (in /lib/libdl-2.3.4.so)
==14404==    by 0x45ECCB: Parrot_load_lib (dynext.c:168)
==14404==    by 0x4841EE: Parrot_ParrotInterpreter_thawfinish 
(parrotinterpreter.pmc:575)
==14404== 
==14404== Conditional jump or move depends on uninitialised value(s)
==14404==    at 0x1190F5A7: (within /lib/ld-2.3.4.so)
==14404==    by 0x1190A41F: (within /lib/ld-2.3.4.so)
==14404==    by 0x1190A5BD: (within /lib/ld-2.3.4.so)
==14404== 
==14404== Conditional jump or move depends on uninitialised value(s)
==14404==    at 0x45AC22: trace_mem_block (dod.c:1023)
==14404==    by 0x45CDD4: trace_system_areas (cpu_dep.c:117)
==14404==    by 0x45B21C: Parrot_dod_trace_root (dod.c:375)
==14404==    by 0x45B370: Parrot_dod_ms_run (dod.c:387)
==14404==    by 0x45B42A: Parrot_do_dod_run (dod.c:1269)
==14404==    by 0x47DA82: mem_allocate (resources.c:142)
==14404==    by 0x47E089: Parrot_reallocate_string (resources.c:525)
==14404==    by 0x44CE20: string_append (string.c:509)
==14404==    by 0x542E01: Parrot_scalar_i_concatenate_str (scalar.pmc:1172)
==14404==    by 0x4606FB: mmd_dispatch_v_ps (mmd.c:761)
==14404==    by 0x462106: Parrot_infix_ic_p_s (math.ops:74)
==14404==    by 0x4A2F49: runops_slow_core (runops_cores.c:153)
==14404== 
==14404== Conditional jump or move depends on uninitialised value(s)
==14404==    at 0x45AC36: trace_mem_block (dod.c:1028)
==14404==    by 0x45CDD4: trace_system_areas (cpu_dep.c:117)
==14404==    by 0x45B21C: Parrot_dod_trace_root (dod.c:375)
==14404==    by 0x45B370: Parrot_dod_ms_run (dod.c:387)
==14404==    by 0x45B42A: Parrot_do_dod_run (dod.c:1269)
==14404==    by 0x47DA82: mem_allocate (resources.c:142)
==14404==    by 0x47E089: Parrot_reallocate_string (resources.c:525)
==14404==    by 0x44CE20: string_append (string.c:509)
==14404==    by 0x542E01: Parrot_scalar_i_concatenate_str (scalar.pmc:1172)
==14404==    by 0x4606FB: mmd_dispatch_v_ps (mmd.c:761)
==14404==    by 0x462106: Parrot_infix_ic_p_s (math.ops:74)
==14404==    by 0x4A2F49: runops_slow_core (runops_cores.c:153)
==14404== 
==14404== Conditional jump or move depends on uninitialised value(s)
==14404==    at 0x45AC4C: trace_mem_block (dod.c:1035)
==14404==    by 0x45CDD4: trace_system_areas (cpu_dep.c:117)
==14404==    by 0x45B21C: Parrot_dod_trace_root (dod.c:375)
==14404==    by 0x45B370: Parrot_dod_ms_run (dod.c:387)
==14404==    by 0x45B42A: Parrot_do_dod_run (dod.c:1269)
==14404==    by 0x47DA82: mem_allocate (resources.c:142)
==14404==    by 0x47E089: Parrot_reallocate_string (resources.c:525)
==14404==    by 0x44CE20: string_append (string.c:509)
==14404==    by 0x542E01: Parrot_scalar_i_concatenate_str (scalar.pmc:1172)
==14404==    by 0x4606FB: mmd_dispatch_v_ps (mmd.c:761)
==14404==    by 0x462106: Parrot_infix_ic_p_s (math.ops:74)
==14404==    by 0x4A2F49: runops_slow_core (runops_cores.c:153)
==14404== 
==14404== Conditional jump or move depends on uninitialised value(s)
==14404==    at 0x459A67: contained_in_pool (smallobject.c:55)
==14404==    by 0x45A563: is_pmc_ptr (headers.c:540)
==14404==    by 0x45AC90: trace_mem_block (dod.c:1028)
==14404==    by 0x45CDD4: trace_system_areas (cpu_dep.c:117)
==14404==    by 0x45B21C: Parrot_dod_trace_root (dod.c:375)
==14404==    by 0x45B370: Parrot_dod_ms_run (dod.c:387)
==14404==    by 0x45B42A: Parrot_do_dod_run (dod.c:1269)
==14404==    by 0x47DA82: mem_allocate (resources.c:142)
==14404==    by 0x47E089: Parrot_reallocate_string (resources.c:525)
==14404==    by 0x44CE20: string_append (string.c:509)
==14404==    by 0x542E01: Parrot_scalar_i_concatenate_str (scalar.pmc:1172)
==14404==    by 0x4606FB: mmd_dispatch_v_ps (mmd.c:761)
==14404== 
==14404== Conditional jump or move depends on uninitialised value(s)
==14404==    at 0x459A77: contained_in_pool (smallobject.c:55)
==14404==    by 0x45A563: is_pmc_ptr (headers.c:540)
==14404==    by 0x45AC90: trace_mem_block (dod.c:1028)
==14404==    by 0x45CDD4: trace_system_areas (cpu_dep.c:117)
==14404==    by 0x45B21C: Parrot_dod_trace_root (dod.c:375)
==14404==    by 0x45B370: Parrot_dod_ms_run (dod.c:387)
==14404==    by 0x45B42A: Parrot_do_dod_run (dod.c:1269)
==14404==    by 0x47DA82: mem_allocate (resources.c:142)
==14404==    by 0x47E089: Parrot_reallocate_string (resources.c:525)
==14404==    by 0x44CE20: string_append (string.c:509)
==14404==    by 0x542E01: Parrot_scalar_i_concatenate_str (scalar.pmc:1172)
==14404==    by 0x4606FB: mmd_dispatch_v_ps (mmd.c:761)
==14404== 
==14404== Conditional jump or move depends on uninitialised value(s)
==14404==    at 0x459A67: contained_in_pool (smallobject.c:55)
==14404==    by 0x45A4DD: is_buffer_ptr (headers.c:512)
==14404==    by 0x45AC70: trace_mem_block (dod.c:1035)
==14404==    by 0x45CDD4: trace_system_areas (cpu_dep.c:117)
==14404==    by 0x45B21C: Parrot_dod_trace_root (dod.c:375)
==14404==    by 0x45B370: Parrot_dod_ms_run (dod.c:387)
==14404==    by 0x45B42A: Parrot_do_dod_run (dod.c:1269)
==14404==    by 0x47DA82: mem_allocate (resources.c:142)
==14404==    by 0x47E089: Parrot_reallocate_string (resources.c:525)
==14404==    by 0x44CE20: string_append (string.c:509)
==14404==    by 0x542E01: Parrot_scalar_i_concatenate_str (scalar.pmc:1172)
==14404==    by 0x4606FB: mmd_dispatch_v_ps (mmd.c:761)
==14404== 
==14404== Conditional jump or move depends on uninitialised value(s)
==14404==    at 0x459A77: contained_in_pool (smallobject.c:55)
==14404==    by 0x45A4DD: is_buffer_ptr (headers.c:512)
==14404==    by 0x45AC70: trace_mem_block (dod.c:1035)
==14404==    by 0x45CDD4: trace_system_areas (cpu_dep.c:117)
==14404==    by 0x45B21C: Parrot_dod_trace_root (dod.c:375)
==14404==    by 0x45B370: Parrot_dod_ms_run (dod.c:387)
==14404==    by 0x45B42A: Parrot_do_dod_run (dod.c:1269)
==14404==    by 0x47DA82: mem_allocate (resources.c:142)
==14404==    by 0x47E089: Parrot_reallocate_string (resources.c:525)
==14404==    by 0x44CE20: string_append (string.c:509)
==14404==    by 0x542E01: Parrot_scalar_i_concatenate_str (scalar.pmc:1172)
==14404==    by 0x4606FB: mmd_dispatch_v_ps (mmd.c:761)
==14404== 
==14404== Conditional jump or move depends on uninitialised value(s)
==14404==    at 0x459A67: contained_in_pool (smallobject.c:55)
==14404==    by 0x45A513: is_buffer_ptr (headers.c:517)
==14404==    by 0x45AC70: trace_mem_block (dod.c:1035)
==14404==    by 0x45CDD4: trace_system_areas (cpu_dep.c:117)
==14404==    by 0x45B21C: Parrot_dod_trace_root (dod.c:375)
==14404==    by 0x45B370: Parrot_dod_ms_run (dod.c:387)
==14404==    by 0x45B42A: Parrot_do_dod_run (dod.c:1269)
==14404==    by 0x47DA82: mem_allocate (resources.c:142)
==14404==    by 0x47E089: Parrot_reallocate_string (resources.c:525)
==14404==    by 0x44CE20: string_append (string.c:509)
==14404==    by 0x542E01: Parrot_scalar_i_concatenate_str (scalar.pmc:1172)
==14404==    by 0x4606FB: mmd_dispatch_v_ps (mmd.c:761)
==14404== 
==14404== Conditional jump or move depends on uninitialised value(s)
==14404==    at 0x459A77: contained_in_pool (smallobject.c:55)
==14404==    by 0x45A513: is_buffer_ptr (headers.c:517)
==14404==    by 0x45AC70: trace_mem_block (dod.c:1035)
==14404==    by 0x45CDD4: trace_system_areas (cpu_dep.c:117)
==14404==    by 0x45B21C: Parrot_dod_trace_root (dod.c:375)
==14404==    by 0x45B370: Parrot_dod_ms_run (dod.c:387)
==14404==    by 0x45B42A: Parrot_do_dod_run (dod.c:1269)
==14404==    by 0x47DA82: mem_allocate (resources.c:142)
==14404==    by 0x47E089: Parrot_reallocate_string (resources.c:525)
==14404==    by 0x44CE20: string_append (string.c:509)
==14404==    by 0x542E01: Parrot_scalar_i_concatenate_str (scalar.pmc:1172)
==14404==    by 0x4606FB: mmd_dispatch_v_ps (mmd.c:761)
wrong # args: should be "array option arrayName ?arg ...?"
==14404== 
==14404== Invalid read of size 8
==14404==    at 0x520B68: Parrot_Sub_destroy (sub.pmc:37)
==14404==    by 0x45AB04: Parrot_dod_sweep (dod.c:826)
==14404==    by 0x45B32C: Parrot_dod_ms_run (dod.c:1218)
==14404==    by 0x45B42A: Parrot_do_dod_run (dod.c:1269)
==14404==    by 0x446051: Parrot_really_destroy (inter_create.c:321)
==14404==    by 0x45B4B9: Parrot_exit (exit.c:91)
==14404==    by 0x445445: main (main.c:648)
==14404==  Address 0x14CCEDD0 is 160 bytes inside a block of size 168 free'd
==14404==    at 0x11B1ACC3: free (in /usr/lib/valgrind/vgpreload_memcheck.so)
==14404==    by 0x52286E: Parrot_Eval_destroy (eval.pmc:174)
==14404==    by 0x45AB04: Parrot_dod_sweep (dod.c:826)
==14404==    by 0x45B32C: Parrot_dod_ms_run (dod.c:1218)
==14404==    by 0x45B42A: Parrot_do_dod_run (dod.c:1269)
==14404==    by 0x446051: Parrot_really_destroy (inter_create.c:321)
==14404==    by 0x45B4B9: Parrot_exit (exit.c:91)
==14404==    by 0x445445: main (main.c:648)
==14404== 
==14404== ERROR SUMMARY: 81 errors from 33 contexts (suppressed: 0 from 0)
==14404== malloc/free: in use at exit: 15004301 bytes in 24108 blocks.
==14404== malloc/free: 48869 allocs, 24761 frees, 26014905 bytes allocated.
==14404== For counts of detected errors, rerun with: -v
==14404== searching for pointers to 24108 not-freed blocks.
==14404== checked 32373704 bytes.
==14404== 
==14404== LEAK SUMMARY:
==14404==    definitely lost: 2047666 bytes in 13709 blocks.
==14404==      possibly lost: 6120 bytes in 7 blocks.
==14404==    still reachable: 12950515 bytes in 10392 blocks.
==14404==         suppressed: 0 bytes in 0 blocks.
==14404== Use --leak-check=full to see details of leaked memory.

Reply via email to