|Subject:||Storable won't compile with DEBUGME macro declaration in perl 5.8.6|
Tried on both MacOS X: This is perl, v5.8.6 built for darwin-thread-multi-2level (with 2 registered patches, see perl -V for more detail) and RH Linux: This is perl, v5.8.6 built for i686-linux Storable.xs from Storable-2.15 contains a DEBUGME macro that should enable lots of useful execution trace information. In the distribution, it is disabled by hiding the definition in a '#if 0' block. If you remove the hiding, the make operation will fail. cc -c -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm -O2 -funroll-loops -march=pentium4 -msse2 -fomit-frame-pointer -DVERSION=\"2.15\" -DXS_VERSION=\"2.15\" -fpic "-I/usr/local/lib/perl5/5.8.6/i686-linux/CORE" Storable.c Storable.xs: In function `store_hook': Storable.xs:3102: parse error before "void" Storable.xs:3102: `nxpv' undeclared (first use in this function) Storable.xs:3102: (Each undeclared identifier is reported only once Storable.xs:3102: for each function it appears in.) Storable.xs:3102: parse error before ')' token Storable.xs:2982: label `check_done' used but not defined Storable.xs: At top level: Storable.xs:3102: parse error before '}' token Storable.xs:3116: parse error before string constant Storable.xs:3116: warning: data definition has no type or storage class Storable.xs:3117: warning: data definition has no type or storage class And so on with many parse errors.