Track SVs for destruction when -DPURIFY
authorChip Salzenberg <salzench@nielsenmedia.com>
Mon, 2 Sep 1996 00:08:15 +0000 (00:08 +0000)
committerAndy Dougherty <doughera@lafcol.lafayette.edu>
Mon, 2 Sep 1996 00:08:15 +0000 (00:08 +0000)
commit4561caa41d8258ddc0ef28aa349d5a8a2b7a0543
tree2de43aa2f1a3519450e212750ef16351d991372c
parentb328e6b91c715c8a6bec9c3e30180cdb4f94f718
Track SVs for destruction when -DPURIFY

This patch removes a few obvious redundancies in the source.

This patch changes neither behavior nor performance.  However, it does
reduce code size and improve maintainability by combining some common
code in gv_fullname() and gv_efullname().

When checking for memory leaks, I compiled Perl with "-DPURIFY".
Although that flag improves the leak checking, it also breaks
destruction of global objects, because SVs aren't kept in captive
arenas any more.

This patch rectifies the problem by providing an alternative
method for keeping track of SVs when Perl is compiled for Purify.
It has no effect on normal operation.

Add comment about assert(len >=0) when len is unsigned anyway.
sv.c