This fixes numerous compilation warnings:
note: #pragma message:
The practice of declaring the Bind placeholders (_1, _2, ...)
in the global namespace is deprecated.
Please use <boost/bind/bind.hpp> + using namespace boost::placeholders,
or define BOOST_BIND_GLOBAL_PLACEHOLDERS to retain the current behavior.
BOOST_UNREACHABLE_RETURN creates several issues on
various MSVC compilers (manifest issue), curiously only
for the program monitor type of binaries. Making
a workaround for the time being.
- framework now does not shortcut the message when a skipped
tests is encountered
- framework messages are now at line "0" to avoid any further noise
in the messages when files in the framework are changed
- counting tests in case of disabled tests goes in the hierarchy
- counter class now has the ability to discard the enabled status
to count properly the children tests
- adding tests
- ensuring C++03 compatibility
* topic/GH-223-cannot-filter-template-test-cases:
Change log
Documentation updates
Normalizing test names accross several compilers
Sanitizing template test cases that contain ',' in their name
- subclassing cstring in order to be able to create an instance of cstring
without changing its signature: the code remains C++03/C++17 compatibile
even if boost.test is compiled with other options than the test module
- added casting and usage checks
- deduce_cstring rationale change
std::vector<bool>::const_iterator returns a temporary of a proxy class
while the value is needed for constructing the test case with parameters.
- added test reproducing the issue
On gcc and clang, add __attribute__((__format__)) checking to the report_error function.
Cast faulting addresses to uintptr_t for formatting as 0x%08lx - this won't work on LLP64, but Win64 uses SEH anyway.
Fix swapped si_code/si_addr (& si_band) format arguments.
Add missing %s to format diagnostic information.
- Check __GNUC__ major : format attribute was introduced sometime during gcc 2.8, so 3 definitely has it.
Same should apply for any compiler claiming GNUC compatibility
- Check that diagnostic information is not passed to format unescaped: If it is passed unescaped, the '%%' will be
condensed to a single '%' and the test will fail.
Check if SI_ASYNCIO and SI_MESGQ are defined as macros. This allows
to run tests on OpenBSD 6.5, where the macros are missing.
This is identical to patch-boost_test_impl_execution_monitor_ipp in
OpenBSD Ports, except that I added a comment.
* topic/GH-218-outstream-default-filename:
Change log
Master test suite name setup prior to all other setup
# Conflicts:
# doc/closing_chapters/change_log.qbk
This is a simple call to a global setting that can be performed
- in an idempotent manner
- prior to any other setup
Since some loggers rely on the master test suite (generation of the
output files), this setting should precede any other. In particular,
it should not be delayed until the user `init_unit_test` is called. A global object fits this purpose.
Fixes GH-209.
A new helper meta-function has been added to check if the type under
test is complete or not. Incomplete types cannot be used with
std::numeric_limits.
The newly added test cannot be run on pre C++11 because of the limited
BOOST_TEST support (unrelated to the std::numeric_limits issue).
Forward declarations for templates should also have the visibility right
Local static variables cannot have their visibility set and need to get out of the function scope.