Skip to content

Commit 52a58b6

Browse files
phillipjohnstoneyalroz
authored andcommitted
Remove duplicated non-standard test, and increase disabled warnings for same test
One invalid test was duplicated, so I removed the implementatino outside of the TEST_WITH_NON_STANDARD_FORMAT_STRINGS block. Within that block, I disabled two other warnings (one which needed a new pragma definition), because Clang shows one and GCC shows the other in my setup.
1 parent 242e4a7 commit 52a58b6

File tree

1 file changed

+7
-1
lines changed

1 file changed

+7
-1
lines changed

test/test_suite.cpp

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,7 @@ do { \
8383
#define DISABLE_WARNING_PRINTF_FORMAT
8484
#define DISABLE_WARNING_PRINTF_FORMAT_EXTRA_ARGS
8585
#define DISABLE_WARNING_PRINTF_FORMAT_OVERFLOW
86+
#define DISABLE_WARNING_PRINTF_FORMAT_INVALID_SPECIFIER
8687

8788
#elif defined(__GNUC__) || defined(__clang__)
8889
#define DO_PRAGMA(X) _Pragma(#X)
@@ -94,20 +95,24 @@ do { \
9495
#define DISABLE_WARNING_PRINTF_FORMAT_EXTRA_ARGS DISABLE_WARNING(-Wformat-extra-args)
9596
#if defined(__clang__)
9697
#define DISABLE_WARNING_PRINTF_FORMAT_OVERFLOW
98+
#define DISABLE_WARNING_PRINTF_FORMAT_INVALID_SPECIFIER DISABLE_WARNING(-Wformat-invalid-specifier)
9799
#else
98100
#define DISABLE_WARNING_PRINTF_FORMAT_OVERFLOW DISABLE_WARNING(-Wformat-overflow)
101+
#define DISABLE_WARNING_PRINTF_FORMAT_INVALID_SPECIFIER
99102
#endif
100103
#else
101104
#define DISABLE_WARNING_PUSH
102105
#define DISABLE_WARNING_POP
103106
#define DISABLE_WARNING_PRINTF_FORMAT
104107
#define DISABLE_WARNING_PRINTF_FORMAT_EXTRA_ARGS
108+
#define DISABLE_WARNING_PRINTF_FORMAT_INVALID_SPECIFIER
105109
#endif
106110

107111
#ifdef TEST_WITH_NON_STANDARD_FORMAT_STRINGS
108112
DISABLE_WARNING_PUSH
109113
DISABLE_WARNING_PRINTF_FORMAT
110114
DISABLE_WARNING_PRINTF_FORMAT_EXTRA_ARGS
115+
DISABLE_WARNING_PRINTF_FORMAT_INVALID_SPECIFIER
111116
#endif
112117

113118
#if defined(_MSC_VER)
@@ -1095,7 +1100,6 @@ TEST_CASE("string length", "[]" ) {
10951100
PRINTING_CHECK("123", ==, sprintf_, buffer, "%.7s", "123");
10961101
PRINTING_CHECK("", ==, sprintf_, buffer, "%.7s", "");
10971102
PRINTING_CHECK("1234ab", ==, sprintf_, buffer, "%.4s%.2s", "123456", "abcdef");
1098-
PRINTING_CHECK(".2s", ==, sprintf_, buffer, "%.4.2s", "123456");
10991103
PRINTING_CHECK("123", ==, sprintf_, buffer, "%.*s", 3, "123456");
11001104

11011105
DISABLE_WARNING_PUSH
@@ -1109,6 +1113,8 @@ TEST_CASE("string length (non-standard format)", "[]" ) {
11091113
char buffer[100];
11101114
DISABLE_WARNING_PUSH
11111115
DISABLE_WARNING_PRINTF_FORMAT
1116+
DISABLE_WARNING_PRINTF_FORMAT_EXTRA_ARGS
1117+
DISABLE_WARNING_PRINTF_FORMAT_INVALID_SPECIFIER
11121118
PRINTING_CHECK(".2s", ==, sprintf_, buffer, "%.4.2s", "123456");
11131119
DISABLE_WARNING_POP
11141120
}

0 commit comments

Comments
 (0)