Do not directly throw from within tl_assert() if dialect is >=C++11 #1
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Building with >=C++11 (e.g., GCC-6), throwing an uncaught exception from within a destructor is generally considered dangerous and, when
-Werror=terminateis forced in CXXFLAGS (as can be with Gentoo Linux, see bug 612978) it will break the compile.tl_assert()macro is expanded in some destructors (e.g.,Child::~Child()from "src/unit_tests/tlXMLParser.cc"). Since function attribute[[noreturn]]is defined for >=C++11, better to use that instead ofthrow int(0).