geometry
geometry copied to clipboard
Some headers don't compile independently
Following on from Trac#12393… some Geometry headers don't compile independently (under Clang) in violation of the Boost header policy:
Make sure that a translation unit consisting of just the contents of the header file will compile successfully.
One example is extensions/algebra/algorithms/reverse.hpp:
boost/geometry/extensions/algebra/algorithms/reverse.hpp:33:24: error: unknown type name 'vector_tag'; did you mean 'mpl::aux::vector_tag'?
struct reverse<Vector, vector_tag>
^~~~~~~~~~
mpl::aux::vector_tag
/opt/include/boost/mpl/vector/aux_/tag.hpp:25:8: note: 'mpl::aux::vector_tag' declared here
struct vector_tag;
^
boost/geometry/extensions/algebra/algorithms/reverse.hpp:42:19: error: use of undeclared identifier 'rotation_quaternion_tag'
struct reverse<R, rotation_quaternion_tag>
^
boost/geometry/extensions/algebra/algorithms/reverse.hpp:51:19: error: use of undeclared identifier 'rotation_matrix_tag'
struct reverse<R, rotation_matrix_tag>
^
3 errors generated.
Thanks.
@tonyelewis Thanks for the report. Apparently, more headers need attention than just this one, see #525
NP. Thanks for looking into this so quickly.