[serialization] link error and exception on get_key

I have a derived class that exports its type and overrides get_key for serialization through a base class pointer. If I move the definition of the overridden get_key function out of the header into a cpp file, an assertion fails on line 49 of extended_type_info.cpp. If I define any other functions in the cpp file, I get a linker error saying that the get_key symbol is already defined. It looks to me that any serializable derived class must be completely defined in the header file. Is this correct? If so, why does such a limitation exist? Thank you

I presume you're using the "no rtti" option? get_key used only for those systems which
use which depend on extended_type_info_no_rtti to handle extended_type_info functionality.
with which compiler?, which version of boost?
"Daniel Roberts"

Thanks for the response. Yes, I am using the no rtti option. I downloaded
test_no_rtti.cpp and got it to work as-is. I then made the following
changes:
1) Move polymorphic_base's definition into its own header file.
2) Move polymorphic_derived1's definition into its own header file.
3) Move the definition of polymorphic_derived1::get_key() into an
implementation file.
Making these changes causes the assertion failure. I am using boost v1.36.0
and Visual Studio 2008 9.0.30729.1 SP
Thanks,
Daniel Roberts
I presume you're using the "no rtti" option? get_key used only for those
systems which
use which depend on extended_type_info_no_rtti to handle extended_type_info
functionality.
with which compiler?, which version of boost?
"Daniel Roberts"

does the header file of polymorphic_derived1's include the following?
BOOST_CLASS_TYPE_INFO(
polymorphic_derived1,
extended_type_info_no_rtti
participants (2)
-
Daniel Roberts
-
Robert Ramey