-
Notifications
You must be signed in to change notification settings - Fork 155
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Do not inject typeinfo
into std
namespace
#307
base: develop
Are you sure you want to change the base?
Do not inject typeinfo
into std
namespace
#307
Conversation
`BOOST_NO_STD_TYPEINFO` should be used to detect if there is no `typeinfo` in `std` namespace, or Boost.Core/Boost.TypeInfo wrappers for a portable solution.
#if defined(BOOST_NO_STD_TYPEINFO) && defined(__cplusplus) | ||
#include <typeinfo> | ||
namespace std{ using ::type_info; } | ||
#endif |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have to manually delete this block of code to get Boost.Config to compile with the IAR compiler, so I hope this PR gets merged soon!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As I mentioned on the issue tracker, I'm not sure removing these lines is the best solution after all.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This was an MSVC-specific workaround as I recall, if I restrict the code to MSVC does that help?
BTW is there really no typeinfo? What else is missing?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Really and truly. Granted, this is because I have disabled exceptions and RTTI on this compiler because our target is embedded. So for example I have BOOST_NO_EXCEPTIONS
, BOOST_NO_RTTI
and BOOST_NO_TYPEID
defined in the preprocessor, and that solves most anticipated problems.
@Kojoley I think you need to resolve the merge conflicts for this to ever have a hope of being merged. |
The change it conflicts with (035c096) is just wrong and should be reverted, then this will land cleanly. |
The problem I have is that this PR breaks the original purpose of those workarounds. Try this: 46e0a13 |
What is |
BOOST_NO_STD_TYPEINFO
should be used to detect if there is notypeinfo
instd
namespace, or Boost.Core/Boost.TypeInfo wrappers for a portable solution.Closes #306.