aboutsummaryrefslogtreecommitdiff
path: root/stdio-common/bug17.c
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2007-01-22 16:18:03 +0000
committerUlrich Drepper <drepper@redhat.com>2007-01-22 16:18:03 +0000
commit6cae39579b699d09b94a315483a9ac804b56fe34 (patch)
tree25e1ae56c925aac9ee267ca7626d9aa860a10604 /stdio-common/bug17.c
parent439201dea2b759359eba24dd9458b4a2ef55bfac (diff)
downloadglibc-6cae39579b699d09b94a315483a9ac804b56fe34.zip
glibc-6cae39579b699d09b94a315483a9ac804b56fe34.tar.gz
glibc-6cae39579b699d09b94a315483a9ac804b56fe34.tar.bz2
[BZ #3902]
2007-01-22 Ulrich Drepper <drepper@redhat.com> [BZ #3902] * stdio-common/_itoa.c (_itoa): Make sure at least a zero is emitted. * stdio-common/Makefile (tests): Add bug17. * stdio-common/bug17.c: New file.
Diffstat (limited to 'stdio-common/bug17.c')
-rw-r--r--stdio-common/bug17.c31
1 files changed, 31 insertions, 0 deletions
diff --git a/stdio-common/bug17.c b/stdio-common/bug17.c
new file mode 100644
index 0000000..2ef3986
--- /dev/null
+++ b/stdio-common/bug17.c
@@ -0,0 +1,31 @@
+#include <stdio.h>
+#include <string.h>
+
+static int
+do_test (void)
+{
+ static const char expect[] = "0, 0, 0";
+ char buf[100];
+ int status = 0;
+
+ static const char fmt1[] = "%0d, %0ld, %0lld";
+ snprintf (buf, sizeof (buf), fmt1, 0, 0L, 0LL);
+ if (strcmp (buf, expect) != 0)
+ {
+ printf ("\"%s\": got \"%s\", expected \"%s\"\n", fmt1, buf, expect);
+ status = 1;
+ }
+
+ static const char fmt2[] = "%0u, %0lu, %0llu";
+ snprintf (buf, sizeof (buf), fmt2, 0u, 0uL, 0uLL);
+ if (strcmp (buf, expect) != 0)
+ {
+ printf ("\"%s\": got \"%s\", expected \"%s\"\n", fmt2, buf, expect);
+ status = 1;
+ }
+
+ return status;
+}
+
+#define TEST_FUNCTION do_test ()
+#include "../test-skeleton.c"