Hi,

 

I’m having an Issue when trying to register a windows POINT type.

I’m registering the Point structure from windef.h as follows:

              BOOST_GEOMETRY_REGISTER_POINT_2D(POINT, LONG, boost::geometry::cs::cartesian, x, y);

       I’m getting the following in my build log:

     1>c:\work\pantheon studios\o2\disesupport\supportfunctions.cpp(37): error C2870: 'boost' : a namespace definition must appear either at file scope or immediately within another namespace definition

     1>c:\work\pantheon studios\o2\disesupport\supportfunctions.cpp(37): error C2143: syntax error : missing ';' before '<'

     1>c:\work\pantheon studios\o2\disesupport\supportfunctions.cpp(37): error C2913: explicit specialization; 'boost::geometry::traits::tag' is not a specialization of a class template

     1>c:\work\pantheon studios\o2\disesupport\supportfunctions.cpp(37): error C2059: syntax error : '<'

     1>c:\work\pantheon studios\o2\disesupport\supportfunctions.cpp(37): error C2143: syntax error : missing ';' before '{'

     1>c:\work\pantheon studios\o2\disesupport\supportfunctions.cpp(37): error C2447: '{' : missing function header (old-style formal list?)

     1>c:\work\pantheon studios\o2\disesupport\supportfunctions.cpp(37): error C2143: syntax error : missing ';' before '<'

     1>c:\work\pantheon studios\o2\disesupport\supportfunctions.cpp(37): error C2913: explicit specialization; 'boost::geometry::traits::dimension' is not a specialization of a class template

     1>c:\work\pantheon studios\o2\disesupport\supportfunctions.cpp(37): error C2059: syntax error : '<'

     1>c:\work\pantheon studios\o2\disesupport\supportfunctions.cpp(37): error C3083: 'mpl': the symbol to the left of a '::' must be a type

     1>c:\work\pantheon studios\o2\disesupport\supportfunctions.cpp(37): error C2039: 'int_' : is not a member of 'boost'

     1>c:\work\pantheon studios\o2\disesupport\supportfunctions.cpp(37): error C2143: syntax error : missing ';' before '<'

     1>c:\work\pantheon studios\o2\disesupport\supportfunctions.cpp(37): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int

     1>c:\work\pantheon studios\o2\disesupport\supportfunctions.cpp(37): error C2143: syntax error : missing ';' before '<'

     1>c:\work\pantheon studios\o2\disesupport\supportfunctions.cpp(37): error C2913: explicit specialization; 'boost::geometry::traits::coordinate_type' is not a specialization of a class template

     1>c:\work\pantheon studios\o2\disesupport\supportfunctions.cpp(37): error C2059: syntax error : '<'

     1>c:\work\pantheon studios\o2\disesupport\supportfunctions.cpp(37): error C2143: syntax error : missing ';' before '<'

     1>c:\work\pantheon studios\o2\disesupport\supportfunctions.cpp(37): error C2913: explicit specialization; 'boost::geometry::coordinate_system' is not a specialization of a class template

     1>c:\work\pantheon studios\o2\disesupport\supportfunctions.cpp(37): error C2059: syntax error : '<'

     1>c:\work\pantheon studios\o2\disesupport\supportfunctions.cpp(37): error C3083: 'cs': the symbol to the left of a '::' must be a type

     1>c:\work\pantheon studios\o2\disesupport\supportfunctions.cpp(37): error C2039: 'cartesian' : is not a member of 'boost::geometry'

     1>c:\work\pantheon studios\o2\disesupport\supportfunctions.cpp(37): error C2143: syntax error : missing ';' before '<'

     1>c:\work\pantheon studios\o2\disesupport\supportfunctions.cpp(37): error C2913: explicit specialization; 'boost::access' is not a specialization of a class template

     1>c:\work\pantheon studios\o2\disesupport\supportfunctions.cpp(37): error C2059: syntax error : '<'

     1>c:\work\pantheon studios\o2\disesupport\supportfunctions.cpp(37): error C2267: 'set' : static functions with block scope are illegal

     1>c:\work\pantheon studios\o2\disesupport\supportfunctions.cpp(37): fatal error C1903: unable to recover from previous error(s); stopping compilation

I’d rather not have to define my own point structure if at all possible!

Any help appreciated to solve this.

Cheers

Sean.