summaryrefslogtreecommitdiff
path: root/test/string/bug-strcoll1.c
diff options
context:
space:
mode:
Diffstat (limited to 'test/string/bug-strcoll1.c')
-rw-r--r--test/string/bug-strcoll1.c24
1 files changed, 24 insertions, 0 deletions
diff --git a/test/string/bug-strcoll1.c b/test/string/bug-strcoll1.c
new file mode 100644
index 0000000..b6510d9
--- /dev/null
+++ b/test/string/bug-strcoll1.c
@@ -0,0 +1,24 @@
+#include <stdio.h>
+#include <string.h>
+#include <locale.h>
+
+int
+main (void)
+{
+ const char t1[] = "0-0-0-0-0-0-0-0-0-0.COM";
+ const char t2[] = "00000-00000.COM";
+ int res1;
+ int res2;
+
+ setlocale (LC_ALL, "en_US.ISO-8859-1");
+
+ res1 = strcoll (t1, t2);
+ printf ("strcoll (\"%s\", \"%s\") = %d\n", t1, t2, res1);
+ res2 = strcoll (t2, t1);
+ printf ("strcoll (\"%s\", \"%s\") = %d\n", t2, t1, res2);
+
+ return ((res1 == 0 && res2 != 0)
+ || (res1 != 0 && res2 == 0)
+ || (res1 < 0 && res2 < 0)
+ || (res1 > 0 && res2 > 0));
+}