---
 mingw-w64-crt/Makefile.am                  |  3 +++
 mingw-w64-crt/testcases/t_snwprintf.c      |  1 +
 mingw-w64-crt/testcases/t_snwprintf0.c     |  2 ++
 mingw-w64-crt/testcases/t_snwprintf1.c     |  2 ++
 mingw-w64-crt/testcases/t_snwprintf_tmpl.h | 18 ++++++++++++++++++
 5 files changed, 26 insertions(+)
 create mode 100644 mingw-w64-crt/testcases/t_snwprintf.c
 create mode 100644 mingw-w64-crt/testcases/t_snwprintf0.c
 create mode 100644 mingw-w64-crt/testcases/t_snwprintf1.c
 create mode 100644 mingw-w64-crt/testcases/t_snwprintf_tmpl.h

diff --git a/mingw-w64-crt/Makefile.am b/mingw-w64-crt/Makefile.am
index 6b5ba785a9ee..c7aebd8b1993 100644
--- a/mingw-w64-crt/Makefile.am
+++ b/mingw-w64-crt/Makefile.am
@@ -4340,6 +4340,9 @@ testcase_progs = \
   testcases/t_swprintf \
   testcases/t_swprintf0 \
   testcases/t_swprintf1 \
+  testcases/t_snwprintf \
+  testcases/t_snwprintf0 \
+  testcases/t_snwprintf1 \
   testcases/t_setjmp \
   testcases/t_sigv \
   testcases/t_speed_powl \
diff --git a/mingw-w64-crt/testcases/t_snwprintf.c 
b/mingw-w64-crt/testcases/t_snwprintf.c
new file mode 100644
index 000000000000..a879aec2f4d8
--- /dev/null
+++ b/mingw-w64-crt/testcases/t_snwprintf.c
@@ -0,0 +1 @@
+#include "t_snwprintf_tmpl.h"
diff --git a/mingw-w64-crt/testcases/t_snwprintf0.c 
b/mingw-w64-crt/testcases/t_snwprintf0.c
new file mode 100644
index 000000000000..8f98ff09f6f4
--- /dev/null
+++ b/mingw-w64-crt/testcases/t_snwprintf0.c
@@ -0,0 +1,2 @@
+#define __USE_MINGW_ANSI_STDIO 0
+#include "t_snwprintf_tmpl.h"
diff --git a/mingw-w64-crt/testcases/t_snwprintf1.c 
b/mingw-w64-crt/testcases/t_snwprintf1.c
new file mode 100644
index 000000000000..5689c85f737f
--- /dev/null
+++ b/mingw-w64-crt/testcases/t_snwprintf1.c
@@ -0,0 +1,2 @@
+#define __USE_MINGW_ANSI_STDIO 1
+#include "t_snwprintf_tmpl.h"
diff --git a/mingw-w64-crt/testcases/t_snwprintf_tmpl.h 
b/mingw-w64-crt/testcases/t_snwprintf_tmpl.h
new file mode 100644
index 000000000000..6ce0b00b4ac4
--- /dev/null
+++ b/mingw-w64-crt/testcases/t_snwprintf_tmpl.h
@@ -0,0 +1,18 @@
+#include <stdio.h>
+#include <wchar.h>
+
+int main() {
+  int i;
+  wchar_t buffer[10] = L"XXXXXXXXXX";
+  int ret = snwprintf(buffer, 3, L"%ls", L"AAA");
+  if (ret != 3 || wmemcmp(buffer, L"AA\0XXXXXXX", 10) != 0) {
+    fprintf(stderr, "ret: expected=3 got=%d\n", ret);
+    fprintf(stderr, "buffer:");
+    for (i = 0; i < 10; i++) {
+      fprintf(stderr, " 0x%02x", (int)(wint_t)buffer[i]);
+    }
+    fprintf(stderr, "\n");
+    return 1;
+  }
+  return 0;
+}
-- 
2.20.1



_______________________________________________
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to