#1297: PackFile_Constant_unpack_pmc should call Parrot_thaw_constants(), not
Parrot_thaw()
----------------------+-----------------------------------------------------
 Reporter:  Infinoid  |       Owner:     
     Type:  bug       |      Status:  new
 Priority:  normal    |   Milestone:     
Component:  none      |     Version:     
 Severity:  medium    |    Keywords:     
     Lang:            |       Patch:     
 Platform:            |  
----------------------+-----------------------------------------------------

Comment(by whiteknight):

 Taking into account chromatic's assessment above, it seems to me that
 there are two options forward to resolve this issue:

  - Treat the pool of Constant PMCs as a rootset and always mark the
 children of constant PMCs on each mark phase
  - When marking, if we reach a Constant PMC as a child of a non-constant
 PMC that we are marking, we should ignore it's "I'm already alive" flag
 and mark it's children anyway.

 I worry about situations where we have a constant PMC with non-constant
 children that are not getting marked. The children are collected, the
 pointers in the constant PMC are never updated, and the PMC itself is
 likely unreachable but its storage is never reclaimed. A small issue, to
 be sure, but definitely has an effect on Parrot's memory footprint.

-- 
Ticket URL: <https://trac.parrot.org/parrot/ticket/1297#comment:2>
Parrot <https://trac.parrot.org/parrot/>
Parrot Development
_______________________________________________
parrot-tickets mailing list
[email protected]
http://lists.parrot.org/mailman/listinfo/parrot-tickets

Reply via email to