summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStephan Bergmann <sbergman@redhat.com>2019-02-01 13:37:59 +0100
committerStephan Bergmann <sbergman@redhat.com>2019-02-13 10:28:02 +0100
commit3788fccdd12ea1e3240d79e85d9146f6c264c6ec (patch)
tree68c7f8bc0b8fbc82e538691cf94f76e9f1ede098
parent48145587c4c2dc4f1e07d83073e136336c81ce79 (diff)
downloadcppunit-3788fccdd12ea1e3240d79e85d9146f6c264c6ec.tar.gz
Unconditionally use C++11 [[noreturn]]
This helps avoid issues like <https://gerrit.libreoffice.org/plugins/gitiles/ core/+/9808486a89c6368f836579f8d8c0dda63fd0063c%5E%21> "Avoid -Werror,-Wimplicit-fallthrough with clang-cl ...where CPPUNIT_FAIL is marked as noreturn only for __GNUC__". Change-Id: Idb33af7375f103f2dd7a7b4c3dbf20ce731b17ad Reviewed-on: https://gerrit.libreoffice.org/67247 Reviewed-by: Stephan Bergmann <sbergman@redhat.com> Tested-by: Stephan Bergmann <sbergman@redhat.com>
-rw-r--r--include/cppunit/Asserter.h12
1 files changed, 3 insertions, 9 deletions
diff --git a/include/cppunit/Asserter.h b/include/cppunit/Asserter.h
index 3321b87..dd39ead 100644
--- a/include/cppunit/Asserter.h
+++ b/include/cppunit/Asserter.h
@@ -43,23 +43,17 @@ class Message;
* \endcode
*/
-#if defined __GNUC__
-# define NORETURN __attribute__((noreturn))
-#else
-# define NORETURN
-#endif
-
struct Asserter
{
/*! \brief Throws a Exception with the specified message and location.
*/
- NORETURN static void CPPUNIT_API fail( const Message &message,
+ [[noreturn]] static void CPPUNIT_API fail( const Message &message,
const SourceLine &sourceLine = SourceLine() );
/*! \brief Throws a Exception with the specified message and location.
* \deprecated Use fail( Message, SourceLine ) instead.
*/
- NORETURN static void CPPUNIT_API fail( std::string message,
+ [[noreturn]] static void CPPUNIT_API fail( std::string message,
const SourceLine &sourceLine = SourceLine() );
/*! \brief Throws a Exception with the specified message and location.
@@ -165,7 +159,7 @@ struct Asserter
* what are the differences between the expected and actual value.
* \param shortDescription Short description for the failure message.
*/
- NORETURN static void CPPUNIT_API failNotEqual( std::string expected,
+ [[noreturn]] static void CPPUNIT_API failNotEqual( std::string expected,
std::string actual,
const SourceLine &sourceLine,
const AdditionalMessage &additionalMessage = AdditionalMessage(),