On Mon, Jul 12, 2004 at 12:17:37PM -0500, Eric Wilhelm wrote: > Hi all, > > I'm just getting ready to re-release Math::Geometry::Planar::GPC::Polygon, > which uses Inline::C to create an OO binding to Alan Murta's "General Polygon > Clipping" library. > > I notice the only failing test was on a Win32 machine: > http://testers.cpan.org/show/Math-Geometry-Planar-GPC-Polygon.html > > It seems to be choking on the vararg macro that I was using for debugging. Is > this feature not available on less-than-perfect systems?
varargs macros aren't in the C89 standard. IIRC gcc had an implementation a long time ago, and C99 added them, but I can't remember if gcc's and C99's are the same. Avoid varargs macros if you want your code to be portable. > Any suggestions? Maybe books / manuals about portable C programming? I don't know of any offhand. Testing, or better still developing on the most restrictive system you can find is generally a good start. Sadly x86, Linux, and gcc are all pretty much the least restrictive (ie most forgiving) architecture, OS and compiler, which means that a lot of open source code is being developed on the platform least conducive to bondage, discipline or portability. Getting accounts on HP testrdrive and sourceforge can give you access to a lot of systems to test things out on. Nicholas Clark