perl-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Steve Hay" <>
Subject RE: [MP2] Nullav undeclared make error
Date Tue, 17 Jul 2012 09:02:11 GMT
[Apologies for the previous HTML format reply :-( ...]

I've now eliminated our uses of deprecated core perl symbols in commits 1362399, 1362409 and
1362414, although we'll need to update Apache-Test in mod_perl to get the commit which touched

This gets mod_perl building again with a perl that doesn't have large files support.

I still think we should also remove our usage of PERL_CORE, though...

From: Steve Hay [] 
Sent: 13 July 2012 08:23
To: Fred Moyer
Cc:;; mod_perl Dev
Subject: Re: [MP2] Nullav undeclared make error

Various perl changes removed Nullsv, Nullav etc from the core (e.g. see 24792b8dab and 3ae1b22641),
but left definitions of them for when PERL_CORE is not defined, for backwards compatibility
with all those CPAN modules out there which use them.

The problem here is what Nick hinted at in his comment for 24792b8dab, namely that "obviously"
nobody outside of the perl core is defining PERL_CORE... It's a rather too common and surely
always wrong thing to do that, and we're guilty of it ourselves: modperl_perl_includes.h defines
PERL_CORE as some kind of optimization, but only when USE_ITHREADS is defined and USE_LARGE_FILES
is not. That's not a common configuration, hence we haven't seen this happen before, but the
last line which I've quoted below does indeed undefine large file support, hence PERL_CORE
gets defined and the definitions of Nullsv, Nullav etc are not provided.

I replaced all uses of Nullxx with (XX*)NULL in my modules some time ago in the belief that
if it was good for the core then it was good for me, so I will do likewise for mod_perl unless
anyone objects (or beats me to it).

View raw message