As of about a week ago, PMROOT was removed from the HV struct and
moved off to magic. Unfortunately, mod_perl seems to be using
the HvPMROOT() macro to store away the modperl_interp_t
pointer in modperl_interp.h. The comments seem to indicate that
mod_perl isn't using PMROOT for its intended purpose, but instead
as a quick place to store the interp pointer.
So, mod_perl is going to need a new place to put the interp
pointer. I'm guessing that it could use PMROOT's new place in
magic. Code like the following would probably work get the
magic. I haven't tested it, but the code for MP_THX_INTERP_SET
would look like...
#define MP_THX_INTERP_SET(thx, interp) \
# ifndef(HvPMROOT)
MAGIC *mg = mg_find((SV*)thx, PERL_MAGIC_symtab); \
mg->mg_obj = (SV*)interp
# else
<current code>
Of course, there may be a much better place or way of doing it
which I don't know about. I'm just hoping to start some discussion
instead of it being a surprise when 5.9.3 is released.
Steve Peters
[EMAIL PROTECTED]