From 3893ce45d61e17cc87742977d172571927ba7ca0 Mon Sep 17 00:00:00 2001 From: Bartosz Golaszewski Date: Thu, 11 Oct 2018 09:44:24 +0200 Subject: [PATCH] Fix build in GCC 7 The following error is emitted by gcc 7.3: include/internal/catch_tostring.cpp:217:21: error: comparison is always true due to limited range of data type [-Werror=type-limits] | } else if ('\0' <= value && value < ' ') { | ~~~~~^~~~~~~~ | cc1plus: all warnings being treated as errors We can drop the first part of the if since '\0' == 0 and it will always be <= than value of char (which is unsigned by default). Signed-off-by: Bartosz Golaszewski --- include/internal/catch_tostring.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/internal/catch_tostring.cpp b/include/internal/catch_tostring.cpp index 4e0c027d..59cc8dec 100644 --- a/include/internal/catch_tostring.cpp +++ b/include/internal/catch_tostring.cpp @@ -214,7 +214,7 @@ std::string StringMaker::convert(char value) { return "'\\n'"; } else if (value == '\t') { return "'\\t'"; - } else if ('\0' <= value && value < ' ') { + } else if (value < ' ') { return ::Catch::Detail::stringify(static_cast(value)); } else { char chstr[] = "' '";