summaryrefslogtreecommitdiff
path: root/cord
diff options
context:
space:
mode:
authorBruce Hoult <bruce@hoult.org>2015-01-05 04:32:29 +1300
committerIvan Maidanski <ivmai@mail.ru>2016-03-12 00:08:44 +0300
commit7ce7e95b41948d23cc99cafefe5aafa630d1554c (patch)
treea7730a4dfd522e2f40e6c1dc304d22f918808c7a /cord
parenta4ae6934eaf1a60d01e5f22b558d3d8ff2dd456c (diff)
downloadbdwgc-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.c11
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");
}