From cd4810a2e773671556a61151dd12a9b0dd57a799 Mon Sep 17 00:00:00 2001 From: Beman Dawes Date: Thu, 19 Aug 2010 17:03:38 +0000 Subject: [PATCH] Remove path array optimization; problematic when array contains a string shorter than the array length. Reported by Adam Badura. [SVN r64928] --- include/boost/detail/lightweight_test.hpp | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/include/boost/detail/lightweight_test.hpp b/include/boost/detail/lightweight_test.hpp index ffa750d..8aa76f8 100644 --- a/include/boost/detail/lightweight_test.hpp +++ b/include/boost/detail/lightweight_test.hpp @@ -24,6 +24,7 @@ // #include +#include #include namespace boost @@ -64,10 +65,31 @@ template inline void test_eq_impl( char const * expr1, char co } } +struct report_errors_reminder +{ + bool remembered_to_call_report_errors_function; + report_errors_reminder() : remembered_to_call_report_errors_function(false) {} + ~report_errors_reminder() + { + BOOST_ASSERT(remembered_to_call_report_errors_function); + } +}; + } // namespace detail +} // namespace boost +namespace +{ + boost::detail::report_errors_reminder boost_report_errors_reminder; +} + +namespace boost +{ + inline int report_errors() { + boost_report_errors_reminder.remembered_to_call_report_errors_function = true; + int errors = detail::test_errors(); if( errors == 0 )