[geos-devel] OverlayOp::DIFFERENCE

strk at refractions.net strk at refractions.net
Mon Jun 5 11:39:08 EDT 2006


I've committed the change. Tests welcome.
--strk;

On Mon, Jun 05, 2006 at 05:09:15PM +0200, strk at refractions.net wrote:
> I'd rename all values by prefixing the lower-case 'op' to them.
> We did it for other enums as well to reduce likelihood of
> clashes with #defines.
> 
> Also, I'd give the enum a name (OpCode) and update function
> signatures to enforce typechecking for them.
> 
> --strk;
> 
> On Sun, Jun 04, 2006 at 10:50:45PM -0500, Howard Butler wrote:
> > Mateusz and strk,
> > 
> > I was working on building some makefiles for windows of xmltester, 
> > and I ran into an issue that is confusing.  MSVC 2003 doesn't seem to 
> > like line 563 of XMLTester.cpp, complaining about not finding a 
> > constructor:
> > 
> >         cl -I../../source/headers /MD /GR /O2 /D "NDEBUG" /nologo  /D 
> > "NOMINMAX"
> >  /D "WIN32_LEAN_AND_MEAN" /D "NOGDI"  /GX /c XMLTester.cpp /FoXMLTester.obj
> > XMLTester.cpp
> > XMLTester.cpp(563) : error C2589: 'constant' : illegal token on right 
> > side of ':
> > :'
> > XMLTester.cpp(563) : error C2143: syntax error : missing ')' before '::'
> > XMLTester.cpp(563) : error C2512: 
> > 'geos::operation::overlay::overlayOp::overlayO
> > p' : no appropriate default constructor available
> > XMLTester.cpp(563) : error C2059: syntax error : ')'
> > NMAKE : fatal error U1077: 'cl' : return code '0x2'
> > Stop.
> > 
> > If I change the OverlayOp::DIFFERENCE enum to be 
> > OverlayOp::DIFFERENCE2 in both the call and the header file, things 
> > compile fine. What's curious is that the C API also calls difference 
> > this way and doesn't fail to compile.  I'm not sure if it is some 
> > sort of weird namespace issue.  Any ideas?
> > 
> > Also, http://geos.builds.hobu.net is building clean for all three 
> > architectures.
> > 
> > Howard



More information about the geos-devel mailing list