$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
Subject: [boost] [1.50] [Config] Enhancing support of -fno-rtti on clang
From: Michel Morin (mimomorin_at_[hidden])
Date: 2012-05-25 18:59:26
When using clang with -fno-rtti, the use of `typeid` results in
either compile-time errors or run-time errors.
But Boost.Config did not define BOOST_NO_TYPEID for that case.
So, for example, including any client header of BOOST_SP_TYPEID
produced compiler errors on clang trunk with -fno-rtti.
This was fixed in r78510 about a week ago:
(http://svn.boost.org/trac/boost/changeset/78510)
-#if !__has_feature(cxx_rtti)
+#if !__has_feature(cxx_rtti) && !defined(BOOST_NO_RTTI)
# define BOOST_NO_RTTI
#endif
+#if !__has_feature(cxx_rtti) && !defined(BOOST_NO_TYPEID)
+# define BOOST_NO_TYPEID
+#endif
If Boost would like to enhance the support of -fno-rtti on clang,
it would be good to merge the fix into the release branch.
I ran the test runner (clang trunk with -fno-rtti) for
unpatched release branch and patched release branch.
There was no regression and more than 1000 test results got
improved.
Regards,
Michel