Interactive must garbage-collect local variables

Bug #583622 reported by Matt Giuca
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Mars
Triaged
Low
Matt Giuca

Bug Description

As of trunk r1058 (due to fixing bug #580487), the interactive environment now assigns a unique variable name to each assignment of a variable (it is SSA). This means that where previously re-assigning a variable actually clobbered its value, internally, values now remain alive even after their variable has been re-assigned -- even temporaries (every temporary that ever existed remains alive).

This behaviour can be seen using :e.

This is much nicer semantics, but it is a minor memory leak. Apply a garbage collection step where any variable which isn't accessible via the st_localtable (look up the SSA name through the st_aststate's def_map) is deleted from the environment.

This is not the same as bug #553758, which relates to backend implementation and requires more work.

Tags: interactive
Matt Giuca (mgiuca)
Changed in mars:
importance: Medium → Low
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.