"David Webster-Jaggard"
The statement around line 69 from inheritance.hpp is as follows:
typedef typename mpl::if_c< is_polymorphic<T>::value , polymorphic_id_generator<T> , non_polymorphic_id_generator<T> >::type type;
Is the borland compiler simply incapable of compiling this statement or (as is likely)
Yes. A trivial transformation fixes that particular statement for Borland: typedef typename mpl::if_< is_polymorphic<T> , polymorphic_id_generator<T> , non_polymorphic_id_generator<T> >::type type; After applying a huge pile of these trivial transformations someone will get to see the *real* problems Borland has with this library ;-). Someone has been working on a Borland port (apologies to the person in question, whose name I've forgotten), but we haven't seen the result yet. Regards, -- Dave Abrahams Boost Consulting www.boost-consulting.com