$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
Subject: [boost] [serialization] RTTI issue with non-polymorphic types
From: Jorge Lodos (jlodos_at_[hidden])
Date: 2018-03-05 17:03:17
Hi
I am trying to use the serialization library for non-polymorphic types
without RTTI. In release mode everything works fine, but in debug mode there
are problems because dynamic_cast is used for debugging purposes.
The code is in smart_cast.hpp, starting in line 87:
#if ! defined(NDEBUG) \
|| defined(__MWERKS__)
// do a checked dynamic cast
return cross::cast(u);
#else
I believe the first line could be replaced with:
#if (! defined(NDEBUG) && ! defined(BOOST_NO_RTTI) ) \
Is this something you are willing to consider? I decided to ask before
creating any ticket or pull request because there is a number of previous
attempts to make serialization work without RTTI for the general case.
But this is specific for non-polymorphic types.
Thanks.
Jorge