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

Reply via email to