[geos-devel] OverlayOp::DIFFERENCE

Howard Butler hobu at iastate.edu
Sun Jun 4 23:50:45 EDT 2006


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