On Fri, Nov 14, 2003 at 10:15:07AM +0100, Rafael Garcia-Suarez wrote: > jim@rrsl.rsmas.miami.edu (via RT) wrote: > > > > Since I installed IRIX 7.4.1m compiler updates I cannot build > > perl (either 5.8.1 or 5.8.2). I get an error compiling gv.c. > > > > How do I workaround or fix this compilation problem? > > I don't see anything in README.irix about this issue. > > > > I used IRIX 7.4m compilers to build and install perl 5.8.0. > > I'd say it's a bug with your C preprocessor. > > Can you try the modification below, to see whether it solves your problem? > (basically it only expands a CAT2 macro) > > > ==== //depot/perl/pp.h#54 - /opt/p4/perl/pp.h ==== > @@ -385,7 +385,7 @@ > changed SV* ref to SV* tmpRef */ > #define RvDEEPCP(rv) STMT_START { SV* tmpRef=SvRV(rv); \ > if (SvREFCNT(tmpRef)>1) { \ > - SvRV(rv)=AMG_CALLun(rv,copy); \ > + SvRV(rv)=amagic_call(rv,&PL_sv_undef,copy_amg,AMGf_noright | AMGf_unary) \ > SvREFCNT_dec(tmpRef); \ > } } STMT_END > If that just moved the error further on, what happens with the build if a: you edit config.h to remove these lines: #if 42 == 1 #define CAT2(a,b) a/**/b #define STRINGIFY(a) "a" /* If you can get stringification with catify, tell me how! */ #endif b: you replace those lines, and add a #error directive inside them Nicholas Clark