diff options
author | Bruce Hoult <bruce@hoult.org> | 2015-01-05 04:32:29 +1300 |
---|---|---|
committer | Ivan Maidanski <ivmai@mail.ru> | 2016-03-12 00:08:44 +0300 |
commit | 7ce7e95b41948d23cc99cafefe5aafa630d1554c (patch) | |
tree | a7730a4dfd522e2f40e6c1dc304d22f918808c7a /cord | |
parent | a4ae6934eaf1a60d01e5f22b558d3d8ff2dd456c (diff) | |
download | bdwgc-7ce7e95b41948d23cc99cafefe5aafa630d1554c.tar.gz |
Fix OSX issue with snprintf wrapper macro
(bug introduced in commit 7bef74b)
OS X for some reason has problems with defining snprintf as a macro
and including another macro expansion in its arguments.
* cord/tests/cordtest.c (GC_SNPRINTF_BUFSZ_ARG): Remove.
* cord/tests/cordtest.c (GC_SNPRINTF): Do not define if no snprintf()
available.
* cord/tests/cordtest.c (test_printf): If GC_SNPRINTF undefined then
use sprintf() instead.
Diffstat (limited to 'cord')
-rw-r--r-- | cord/tests/cordtest.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/cord/tests/cordtest.c b/cord/tests/cordtest.c index adff26b3..77ab27a6 100644 --- a/cord/tests/cordtest.c +++ b/cord/tests/cordtest.c @@ -208,8 +208,6 @@ void test_extras(void) #if defined(__DJGPP__) || defined(__STRICT_ANSI__) /* snprintf is missing in DJGPP (v2.0.3) */ -# define GC_SNPRINTF sprintf -# define GC_SNPRINTF_BUFSZ_ARG(bufsz) /* empty */ #else # if defined(_MSC_VER) # if defined(_WIN32_WCE) @@ -221,7 +219,6 @@ void test_extras(void) # else # define GC_SNPRINTF snprintf # endif -# define GC_SNPRINTF_BUFSZ_ARG(bufsz) (bufsz), #endif void test_printf(void) @@ -246,8 +243,12 @@ void test_printf(void) x = CORD_cat(x,x); if (CORD_sprintf(&result, "->%-120.78r!\n", x) != 124) ABORT("CORD_sprintf failed 3"); - (void)GC_SNPRINTF(result2, GC_SNPRINTF_BUFSZ_ARG(sizeof(result2)) - "->%-120.78s!\n", CORD_to_char_star(x)); +# ifdef GC_SNPRINTF + (void)GC_SNPRINTF(result2, sizeof(result2), "->%-120.78s!\n", + CORD_to_char_star(x)); +# else + (void)sprintf(result2, "->%-120.78s!\n", CORD_to_char_star(x)); +# endif result2[sizeof(result2) - 1] = '\0'; if (CORD_cmp(result, result2) != 0)ABORT("CORD_sprintf goofed 5"); } |