-----Original Message----- From: Chris Marshall Sent: Thursday, October 15, 2015 6:53 PM To: pdl-devel@lists.sourceforge.net Subject: [Pdl-devel] PDL-2.014 testing well
> It would be nice to have PDL building for all the ASPerl configurations > but without inside help to debug we'll have to be satisfied with the > latest perls. I noticed that the 64-bit ActivePerl-5.16 happily built PDL-2.013, but not PDL-2.014. It so happens that I have the same compiler as used by ActiveState for their x64 perl-5.16 builds, so I was able to do some testing. AIUI, the problem is that the compiler they're using (Platform SDK) expects C90-compliant code, and PDL-2.014 generates a Bad.xs that is *not* C90-compliant. Specifically, once one of the ANYVAL_* macros has been called we can't subsequently make any declarations in the same block - and it's our non-compliance with that condition in Bad.xs that's causing the errors. (Obviously, the Bad.xs code generated by PDL-2.013 complies with the requirements of the Platform SDK compiler - and PDL-2.013 also builds fine for me with Platform SDK.) This type of problem has cropped up time and time again with PDL and ActiveState's M$ compilers. I don't know if M$ have even released a C99-compliant compiler yet. In the past we've got around this problem by simply inserting some scoping brackets where needed, but this case seems (to me) to be not-so-simple-to-fix. I don't know my way around the PDL source all that well so there may, in fact, be a trivial fix - but I think I'll leave this as an exercise for someone who cares. However, I'll happily test any patches that are presented. The 32-bit builds of ActivePerl-5.16 (and earlier) use MSVC++6.0, and that antiquated compiler imposes additional conditions. The blocker there is the use of 'long long' in the generated Basic/Ops/Ops.xs (fixed just now with commit c2ae69d). This is another constantly recurring problem with PDL and MSVC 6 - as soon as we fix one occurrence of 'long long' another one pops up to take its place :-) Of course, MSVC++ 6.0 also requires that the above issue with Bad.xs be fixed. I *do* agree that it "would be nice to have PDL building for all the ASPerl configurations", though I doubt it's really worth the effort. Cheers, Rob ------------------------------------------------------------------------------ _______________________________________________ pdl-devel mailing list pdl-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/pdl-devel