It's not the stack.  Addresses are being reused.

(I'm watching the stack on entry to stack_push.  Pop is probably working 
okay, too.  I don't know why the old contents aren't being clobbered, 
though.  Since I know when it happens, I'll try to narrow it down there.)

`parrot`stacks.c`stack_push`stack = {
   used  = 44 
   next  = 0x332000 
   prev  = 0x332000 
   entry = ({
      entry      = {                                             # stack[0]
         num_val         = 1.0956763994969e-307 
         int_val         = 3388008 
         pmc_val         = 0x33b268 
         string_val      = 0x33b268 
         generic_pointer = 0x33b268
      } 
      entry_type = 3 
      flags      = 0 
      cleanup    = (nil)
   } {
      entry      = {
         num_val         = 1.0955949148585e-307 
         int_val         = 3387912 
         pmc_val         = 0x33b208 
         string_val      = 0x33b208 
         generic_pointer = 0x33b208
      } 
      entry_type = 3 
      flags      = 0 
      cleanup    = (nil)
   } {
      entry      = {
         num_val         = 1.0955134302202e-307 
         int_val         = 3387816 
         pmc_val         = 0x33b1a8 
         string_val      = 0x33b1a8 
         generic_pointer = 0x33b1a8
      } 
      entry_type = 3 
      flags      = 0 
      cleanup    = (nil)
   } {
      entry      = {
         num_val         = 1.0954319455818e-307 
         int_val         = 3387720 
         pmc_val         = 0x33b148 
         string_val      = 0x33b148 
         generic_pointer = 0x33b148
      } 
      entry_type = 3 
      flags      = 0 
      cleanup    = (nil)
   } {
      entry      = {
         num_val         = 1.0953504609434e-307 
         int_val         = 3387624 
         pmc_val         = 0x33b0e8 
         string_val      = 0x33b0e8 
         generic_pointer = 0x33b0e8
      } 
      entry_type = 3 
      flags      = 0 
      cleanup    = (nil)
   } {
      entry      = {
         num_val         = 1.095268976305e-307 
         int_val         = 3387528 
         pmc_val         = 0x33b088 
         string_val      = 0x33b088 
         generic_pointer = 0x33b088
      } 
      entry_type = 3 
      flags      = 0 
      cleanup    = (nil)
   } {

..
..
..

      entry      = {                                             # stack[41]
         num_val         = 1.0957578841353e-307 
         int_val         = 3388104 
         pmc_val         = 0x33b2c8 
         string_val      = 0x33b2c8 
         generic_pointer = 0x33b2c8
      } 
      entry_type = 3 
      flags      = 0 
      cleanup    = (nil)
   } {
      entry      = {                                             # stack[42]
         num_val         = 1.0956763994969e-307 
         int_val         = 3388008 
         pmc_val         = 0x33b268 
         string_val      = 0x33b268 
         generic_pointer = 0x33b268
      } 
      entry_type = 3 
      flags      = 0 
      cleanup    = (nil)
   } {
      entry      = {                                             # stack[43]
         num_val         = 1.0955949148585e-307 
         int_val         = 3387912 
         pmc_val         = 0x33b208 
         string_val      = 0x33b208 
         generic_pointer = 0x33b208
      } 

..
..
..



-- 
Bryan C. Warnock
[EMAIL PROTECTED]

Reply via email to