
13 Jan
2009
13 Jan
'09
11:29 p.m.
If I nest macro calls such as: namespace SomeNamespace { BOOST_SERIALIZATION_ASSUME_ABSTRACT(SomeClass) BOOST_CLASS_TYPE_INFO(SomeClass, extended_type_info_no_rtti<SomeClass>) BOOST_CLASS_EXPORT(SomeClass) } inside the namespace containing the type I get a TON of compiler errors. The wackiest is that the compiler thinks boost is a namespace inside of my namespace. Things improve (not fully tested) if I move the macros outside of my namespace and qualify the type with namespace name: BOOST_SERIALIZATION_ASSUME_ABSTRACT(SomeNamespace::SomeClass) BOOST_CLASS_TYPE_INFO(SomeNamespace::SomeClass, extended_type_info_no_rttiSomeNamespace::SomeClass) BOOST_CLASS_EXPORT(SomeNamespace::SomeClass) Can someone explain please? Thanks