On Wed, Jul 10, 2002 at 01:08:52PM -0400, Aaron J Mackey wrote:
> 
> Excellent, thanks - I'm surprised that perlguts and perlapi don't mention
> this ...

It refers to the Sv?V macros as macros.  C programmer boot camp wired
macro to mean danger in my brain, and a quick check of sv.h confirms
it:

  #define SvIV(sv) (SvIOK(sv) ? SvIVX(sv) : sv_2iv(sv))

perl5.8.0s perlapi fixes this, in that it documents SvIVx - a variant
guaranteed to only evaluate its argument once but which is less
efficient.  It's implemented in various ways, the first of which is:

  #define SvIVx(sv) ({SV *nsv = (SV*)(sv); SvIV(nsv); })

-- 
Richard Clamp <[EMAIL PROTECTED]>

Reply via email to