Author: ngie
Date: Sun Nov  8 02:06:17 2015
New Revision: 290532
URL: https://svnweb.freebsd.org/changeset/base/290532

Log:
  Integrate tools/regression/lib/libc/locale into the FreeBSD test suite
  as lib/libc/tests/locale
  
  MFC after: 1 week
  Sponsored by: EMC / Isilon Storage Division

Added:
  head/lib/libc/tests/locale/btowc_test.c
     - copied, changed from r290531, 
head/tools/regression/lib/libc/locale/test-btowc.c
  head/lib/libc/tests/locale/c16rtomb_test.c
     - copied, changed from r290531, 
head/tools/regression/lib/libc/locale/test-c16rtomb.c
  head/lib/libc/tests/locale/iswctype_test.c
     - copied, changed from r290531, 
head/tools/regression/lib/libc/locale/test-iswctype.c
  head/lib/libc/tests/locale/mblen_test.c
     - copied, changed from r290531, 
head/tools/regression/lib/libc/locale/test-mblen.c
  head/lib/libc/tests/locale/mbrlen_test.c
     - copied, changed from r290531, 
head/tools/regression/lib/libc/locale/test-mbrlen.c
  head/lib/libc/tests/locale/mbrtoc16_test.c
     - copied, changed from r290531, 
head/tools/regression/lib/libc/locale/test-mbrtoc16.c
  head/lib/libc/tests/locale/mbrtowc_test.c
     - copied, changed from r290531, 
head/tools/regression/lib/libc/locale/test-mbrtowc.c
  head/lib/libc/tests/locale/mbsnrtowcs_test.c
     - copied, changed from r290531, 
head/tools/regression/lib/libc/locale/test-mbsnrtowcs.c
  head/lib/libc/tests/locale/mbsrtowcs_test.c
     - copied, changed from r290531, 
head/tools/regression/lib/libc/locale/test-mbsrtowcs.c
  head/lib/libc/tests/locale/mbstowcs_test.c
     - copied, changed from r290531, 
head/tools/regression/lib/libc/locale/test-mbstowcs.c
  head/lib/libc/tests/locale/mbtowc_test.c
     - copied, changed from r290531, 
head/tools/regression/lib/libc/locale/test-mbtowc.c
  head/lib/libc/tests/locale/towctrans_test.c
     - copied, changed from r290531, 
head/tools/regression/lib/libc/locale/test-towctrans.c
  head/lib/libc/tests/locale/wcrtomb_test.c
     - copied, changed from r290531, 
head/tools/regression/lib/libc/locale/test-wcrtomb.c
  head/lib/libc/tests/locale/wcsnrtombs_test.c
     - copied, changed from r290531, 
head/tools/regression/lib/libc/locale/test-wcsnrtombs.c
  head/lib/libc/tests/locale/wcsrtombs_test.c
     - copied, changed from r290531, 
head/tools/regression/lib/libc/locale/test-wcsrtombs.c
  head/lib/libc/tests/locale/wcstombs_test.c
     - copied, changed from r290531, 
head/tools/regression/lib/libc/locale/test-wcstombs.c
  head/lib/libc/tests/locale/wctomb_test.c
     - copied, changed from r290531, 
head/tools/regression/lib/libc/locale/test-wctomb.c
Deleted:
  head/tools/regression/lib/libc/locale/
Modified:
  head/lib/libc/tests/locale/Makefile

Modified: head/lib/libc/tests/locale/Makefile
==============================================================================
--- head/lib/libc/tests/locale/Makefile Sun Nov  8 01:41:44 2015        
(r290531)
+++ head/lib/libc/tests/locale/Makefile Sun Nov  8 02:06:17 2015        
(r290532)
@@ -2,6 +2,24 @@
 
 .include <bsd.own.mk>
 
+ATF_TESTS_C+=          btowc_test
+ATF_TESTS_C+=          c16rtomb_test
+ATF_TESTS_C+=          iswctype_test
+ATF_TESTS_C+=          mblen_test
+ATF_TESTS_C+=          mbrlen_test
+ATF_TESTS_C+=          mbrtoc16_test
+ATF_TESTS_C+=          mbrtowc_2_test
+ATF_TESTS_C+=          mbsnrtowcs_2_test
+ATF_TESTS_C+=          mbsrtowcs_test
+ATF_TESTS_C+=          mbstowcs_2_test
+ATF_TESTS_C+=          mbtowc_2_test
+ATF_TESTS_C+=          towctrans_test
+ATF_TESTS_C+=          wcrtomb_test
+ATF_TESTS_C+=          wcsnrtombs_test
+ATF_TESTS_C+=          wcsrtombs_test
+ATF_TESTS_C+=          wcstombs_test
+ATF_TESTS_C+=          wctomb_2_test
+
 NETBSD_ATF_TESTS_C=    io_test
 NETBSD_ATF_TESTS_C+=   mbrtowc_test
 NETBSD_ATF_TESTS_C+=   mbstowcs_test
@@ -13,7 +31,13 @@ NETBSD_ATF_TESTS_C+= wcsspn_test
 NETBSD_ATF_TESTS_C+=   wcstod_test
 NETBSD_ATF_TESTS_C+=   wctomb_test
 
-CFLAGS.t_wctomb.c+= -Wno-stack-protector
+SRCS.mbrtowc_2_test=   mbrtowc_test.c
+SRCS.mbsnrtowcs_2_test=        mbsnrtowcs_test.c
+SRCS.mbstowcs_2_test=  mbstowcs_test.c
+SRCS.mbtowc_2_test=    mbtowc_test.c
+SRCS.wctomb_2_test=    wctomb_test.c
+
+CFLAGS.t_wctomb.c+=    -Wno-stack-protector
 
 .include "../Makefile.netbsd-tests"
 

Copied and modified: head/lib/libc/tests/locale/btowc_test.c (from r290531, 
head/tools/regression/lib/libc/locale/test-btowc.c)
==============================================================================
--- head/tools/regression/lib/libc/locale/test-btowc.c  Sun Nov  8 01:41:44 
2015        (r290531, copy source)
+++ head/lib/libc/tests/locale/btowc_test.c     Sun Nov  8 02:06:17 2015        
(r290532)
@@ -34,7 +34,6 @@
 #include <sys/cdefs.h>
 __FBSDID("$FreeBSD$");
 
-#include <assert.h>
 #include <limits.h>
 #include <locale.h>
 #include <stdio.h>
@@ -42,32 +41,31 @@ __FBSDID("$FreeBSD$");
 #include <string.h>
 #include <wchar.h>
 
-int
-main(int argc, char *argv[])
+#include <atf-c.h>
+
+ATF_TC_WITHOUT_HEAD(btowc_test);
+ATF_TC_BODY(btowc_test, tc)
 {
        int i;
 
-       printf("1..2\n");
-
-       /*
-        * C/POSIX locale.
-        */
-       assert(btowc(EOF) == WEOF);
-       assert(wctob(WEOF) == EOF);
+       /* C/POSIX locale. */
+       ATF_REQUIRE(btowc(EOF) == WEOF);
+       ATF_REQUIRE(wctob(WEOF) == EOF);
        for (i = 0; i < UCHAR_MAX; i++)
-               assert(btowc(i) == (wchar_t)i && i == (int)wctob(i));
+               ATF_REQUIRE(btowc(i) == (wchar_t)i && i == (int)wctob(i));
 
-       /*
-        * Japanese (EUC) locale.
-        */
+       /* Japanese (EUC) locale. */
+       ATF_REQUIRE(strcmp(setlocale(LC_CTYPE, "ja_JP.eucJP"), "ja_JP.eucJP") 
== 0);
+       ATF_REQUIRE(MB_CUR_MAX > 1);
+       ATF_REQUIRE(btowc('A') == L'A' && wctob(L'A') == 'A');
+       ATF_REQUIRE(btowc(0xa3) == WEOF && wctob(0xa3c1) == EOF);
 
-       assert(strcmp(setlocale(LC_CTYPE, "ja_JP.eucJP"), "ja_JP.eucJP") == 0);
-       assert(MB_CUR_MAX > 1);
-       assert(btowc('A') == L'A' && wctob(L'A') == 'A');
-       assert(btowc(0xa3) == WEOF && wctob(0xa3c1) == EOF);
+}
+
+ATF_TP_ADD_TCS(tp)
+{
 
-       printf("ok 1 - btowc()\n");
-       printf("ok 2 - wctob()\n");
+       ATF_TP_ADD_TC(tp, btowc_test);
 
-       return (0);
+       return (atf_no_error());
 }

Copied and modified: head/lib/libc/tests/locale/c16rtomb_test.c (from r290531, 
head/tools/regression/lib/libc/locale/test-c16rtomb.c)
==============================================================================
--- head/tools/regression/lib/libc/locale/test-c16rtomb.c       Sun Nov  8 
01:41:44 2015        (r290531, copy source)
+++ head/lib/libc/tests/locale/c16rtomb_test.c  Sun Nov  8 02:06:17 2015        
(r290532)
@@ -33,7 +33,6 @@
 #include <sys/cdefs.h>
 __FBSDID("$FreeBSD$");
 
-#include <assert.h>
 #include <errno.h>
 #include <limits.h>
 #include <locale.h>
@@ -41,105 +40,103 @@ __FBSDID("$FreeBSD$");
 #include <string.h>
 #include <uchar.h>
 
-int
-main(int argc, char *argv[])
+#include <atf-c.h>
+
+ATF_TC_WITHOUT_HEAD(c16rtomb_test);
+ATF_TC_BODY(c16rtomb_test, tc)
 {
        mbstate_t s;
        char buf[MB_LEN_MAX + 1];
 
-       /*
-        * C/POSIX locale.
-        */
-
-       printf("1..1\n");
+       /* C/POSIX locale. */
 
        /*
         * If the buffer argument is NULL, c16 is implicitly 0,
         * c16rtomb() resets its internal state.
         */
-       assert(c16rtomb(NULL, L'\0', NULL) == 1);
-       assert(c16rtomb(NULL, 0xdc00, NULL) == 1);
+       ATF_REQUIRE(c16rtomb(NULL, L'\0', NULL) == 1);
+       ATF_REQUIRE(c16rtomb(NULL, 0xdc00, NULL) == 1);
 
        /* Null wide character. */
        memset(&s, 0, sizeof(s));
        memset(buf, 0xcc, sizeof(buf));
-       assert(c16rtomb(buf, 0, &s) == 1);
-       assert((unsigned char)buf[0] == 0 && (unsigned char)buf[1] == 0xcc);
+       ATF_REQUIRE(c16rtomb(buf, 0, &s) == 1);
+       ATF_REQUIRE((unsigned char)buf[0] == 0 && (unsigned char)buf[1] == 
0xcc);
 
        /* Latin letter A, internal state. */
-       assert(c16rtomb(NULL, L'\0', NULL) == 1);
-       assert(c16rtomb(NULL, L'A', NULL) == 1);
+       ATF_REQUIRE(c16rtomb(NULL, L'\0', NULL) == 1);
+       ATF_REQUIRE(c16rtomb(NULL, L'A', NULL) == 1);
 
        /* Latin letter A. */
        memset(&s, 0, sizeof(s));
        memset(buf, 0xcc, sizeof(buf));
-       assert(c16rtomb(buf, L'A', &s) == 1);
-       assert((unsigned char)buf[0] == 'A' && (unsigned char)buf[1] == 0xcc);
+       ATF_REQUIRE(c16rtomb(buf, L'A', &s) == 1);
+       ATF_REQUIRE((unsigned char)buf[0] == 'A' && (unsigned char)buf[1] == 
0xcc);
 
        /* Unicode character 'Pile of poo'. */
        memset(&s, 0, sizeof(s));
        memset(buf, 0xcc, sizeof(buf));
-       assert(c16rtomb(buf, 0xd83d, &s) == 0);
-       assert(c16rtomb(buf, 0xdca9, &s) == (size_t)-1);
-       assert(errno == EILSEQ);
-       assert((unsigned char)buf[0] == 0xcc);
+       ATF_REQUIRE(c16rtomb(buf, 0xd83d, &s) == 0);
+       ATF_REQUIRE(c16rtomb(buf, 0xdca9, &s) == (size_t)-1);
+       ATF_REQUIRE(errno == EILSEQ);
+       ATF_REQUIRE((unsigned char)buf[0] == 0xcc);
 
-       /*
-        * ISO8859-1.
-        */
+       /* ISO8859-1. */
 
-       assert(strcmp(setlocale(LC_CTYPE, "en_US.ISO8859-1"),
+       ATF_REQUIRE(strcmp(setlocale(LC_CTYPE, "en_US.ISO8859-1"),
            "en_US.ISO8859-1") == 0);
 
        /* Unicode character 'Euro sign'. */
        memset(&s, 0, sizeof(s));
        memset(buf, 0xcc, sizeof(buf));
-       assert(c16rtomb(buf, 0x20ac, &s) == (size_t)-1);
-       assert(errno == EILSEQ);
-       assert((unsigned char)buf[0] == 0xcc);
+       ATF_REQUIRE(c16rtomb(buf, 0x20ac, &s) == (size_t)-1);
+       ATF_REQUIRE(errno == EILSEQ);
+       ATF_REQUIRE((unsigned char)buf[0] == 0xcc);
 
-       /*
-        * ISO8859-15.
-        */
+       /* ISO8859-15. */
 
-       assert(strcmp(setlocale(LC_CTYPE, "en_US.ISO8859-15"),
+       ATF_REQUIRE(strcmp(setlocale(LC_CTYPE, "en_US.ISO8859-15"),
            "en_US.ISO8859-15") == 0);
 
        /* Unicode character 'Euro sign'. */
        memset(&s, 0, sizeof(s));
        memset(buf, 0xcc, sizeof(buf));
-       assert(c16rtomb(buf, 0x20ac, &s) == 1);
-       assert((unsigned char)buf[0] == 0xa4 && (unsigned char)buf[1] == 0xcc);
+       ATF_REQUIRE(c16rtomb(buf, 0x20ac, &s) == 1);
+       ATF_REQUIRE((unsigned char)buf[0] == 0xa4 && (unsigned char)buf[1] == 
0xcc);
 
-       /*
-        * UTF-8.
-        */
+       /* UTF-8. */
 
-       assert(strcmp(setlocale(LC_CTYPE, "en_US.UTF-8"), "en_US.UTF-8") == 0);
+       ATF_REQUIRE(strcmp(setlocale(LC_CTYPE, "en_US.UTF-8"), "en_US.UTF-8") 
== 0);
 
        /* Unicode character 'Pile of poo'. */
        memset(&s, 0, sizeof(s));
        memset(buf, 0xcc, sizeof(buf));
-       assert(c16rtomb(buf, 0xd83d, &s) == 0);
-       assert(c16rtomb(buf, 0xdca9, &s) == 4);
-       assert((unsigned char)buf[0] == 0xf0 && (unsigned char)buf[1] == 0x9f &&
+       ATF_REQUIRE(c16rtomb(buf, 0xd83d, &s) == 0);
+       ATF_REQUIRE(c16rtomb(buf, 0xdca9, &s) == 4);
+       ATF_REQUIRE((unsigned char)buf[0] == 0xf0 && (unsigned char)buf[1] == 
0x9f &&
            (unsigned char)buf[2] == 0x92 && (unsigned char)buf[3] == 0xa9 &&
            (unsigned char)buf[4] == 0xcc);
 
        /* Invalid code; 'Pile of poo' without the trail surrogate. */
        memset(&s, 0, sizeof(s));
        memset(buf, 0xcc, sizeof(buf));
-       assert(c16rtomb(buf, 0xd83d, &s) == 0);
-       assert(c16rtomb(buf, L'A', &s) == (size_t)-1);
-       assert(errno == EILSEQ);
-       assert((unsigned char)buf[0] == 0xcc);
+       ATF_REQUIRE(c16rtomb(buf, 0xd83d, &s) == 0);
+       ATF_REQUIRE(c16rtomb(buf, L'A', &s) == (size_t)-1);
+       ATF_REQUIRE(errno == EILSEQ);
+       ATF_REQUIRE((unsigned char)buf[0] == 0xcc);
 
        /* Invalid code; 'Pile of poo' without the lead surrogate. */
        memset(&s, 0, sizeof(s));
        memset(buf, 0xcc, sizeof(buf));
-       assert(c16rtomb(buf, 0xdca9, &s) == (size_t)-1);
-       assert(errno == EILSEQ);
-       assert((unsigned char)buf[0] == 0xcc);
+       ATF_REQUIRE(c16rtomb(buf, 0xdca9, &s) == (size_t)-1);
+       ATF_REQUIRE(errno == EILSEQ);
+       ATF_REQUIRE((unsigned char)buf[0] == 0xcc);
+}
+
+ATF_TP_ADD_TCS(tp)
+{
+
+       ATF_TP_ADD_TC(tp, c16rtomb_test);
 
-       printf("ok 1 - c16rtomb()\n");
+       return (atf_no_error());
 }

Copied and modified: head/lib/libc/tests/locale/iswctype_test.c (from r290531, 
head/tools/regression/lib/libc/locale/test-iswctype.c)
==============================================================================
--- head/tools/regression/lib/libc/locale/test-iswctype.c       Sun Nov  8 
01:41:44 2015        (r290531, copy source)
+++ head/lib/libc/tests/locale/iswctype_test.c  Sun Nov  8 02:06:17 2015        
(r290532)
@@ -34,15 +34,16 @@
 #include <sys/cdefs.h>
 __FBSDID("$FreeBSD$");
 
-#include <assert.h>
 #include <locale.h>
 #include <stdio.h>
 #include <string.h>
 #include <wchar.h>
 #include <wctype.h>
 
-int
-main(int argc, char *argv[])
+#include <atf-c.h>
+
+ATF_TC_WITHOUT_HEAD(iswctype_test);
+ATF_TC_BODY(iswctype_test, tc)
 {
        wctype_t t;
        int i, j;
@@ -64,39 +65,36 @@ main(int argc, char *argv[])
                { "xdigit", iswxdigit }
        };
 
-       printf("1..2\n");
-
-       /*
-        * C/POSIX locale.
-        */
+       /* C/POSIX locale. */
        for (i = 0; i < sizeof(cls) / sizeof(*cls); i++) {
                t = wctype(cls[i].name);
-               assert(t != 0);
+               ATF_REQUIRE(t != 0);
                for (j = 0; j < 256; j++)
-                       assert(cls[i].func(j) == iswctype(j, t));
+                       ATF_REQUIRE(cls[i].func(j) == iswctype(j, t));
        }
        t = wctype("elephant");
-       assert(t == 0);
+       ATF_REQUIRE(t == 0);
        for (i = 0; i < 256; i++)
-               assert(iswctype(i, t) == 0);
+               ATF_REQUIRE(iswctype(i, t) == 0);
 
-       /*
-        * Japanese (EUC) locale.
-        */
-       assert(strcmp(setlocale(LC_CTYPE, "ja_JP.eucJP"), "ja_JP.eucJP") == 0);
+       /* Japanese (EUC) locale. */
+       ATF_REQUIRE(strcmp(setlocale(LC_CTYPE, "ja_JP.eucJP"), "ja_JP.eucJP") 
== 0);
        for (i = 0; i < sizeof(cls) / sizeof(*cls); i++) {
                t = wctype(cls[i].name);
-               assert(t != 0);
+               ATF_REQUIRE(t != 0);
                for (j = 0; j < 65536; j++)
-                       assert(cls[i].func(j) == iswctype(j, t));
+                       ATF_REQUIRE(cls[i].func(j) == iswctype(j, t));
        }
        t = wctype("elephant");
-       assert(t == 0);
+       ATF_REQUIRE(t == 0);
        for (i = 0; i < 65536; i++)
-               assert(iswctype(i, t) == 0);
+               ATF_REQUIRE(iswctype(i, t) == 0);
+}
+
+ATF_TP_ADD_TCS(tp)
+{
 
-       printf("ok 1 - iswctype()\n");
-       printf("ok 2 - wctype()\n");
+       ATF_TP_ADD_TC(tp, iswctype_test);
 
-       return (0);
+       return (atf_no_error());
 }

Copied and modified: head/lib/libc/tests/locale/mblen_test.c (from r290531, 
head/tools/regression/lib/libc/locale/test-mblen.c)
==============================================================================
--- head/tools/regression/lib/libc/locale/test-mblen.c  Sun Nov  8 01:41:44 
2015        (r290531, copy source)
+++ head/lib/libc/tests/locale/mblen_test.c     Sun Nov  8 02:06:17 2015        
(r290532)
@@ -35,15 +35,16 @@
 #include <sys/cdefs.h>
 __FBSDID("$FreeBSD$");
 
-#include <assert.h>
 #include <limits.h>
 #include <locale.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
 
-int
-main(int argc, char *argv[])
+#include <atf-c.h>
+
+ATF_TC_WITHOUT_HEAD(mblen_test);
+ATF_TC_BODY(mblen_test, tc)
 {
        size_t len;
        char buf[MB_LEN_MAX + 1];
@@ -54,61 +55,65 @@ main(int argc, char *argv[])
 
        printf("1..1\n");
 
-       assert(MB_CUR_MAX == 1);
+       ATF_REQUIRE(MB_CUR_MAX == 1);
 
        /* No shift states in C locale. */
-       assert(mblen(NULL, 0) == 0);
+       ATF_REQUIRE(mblen(NULL, 0) == 0);
 
        /* Null wide character. */
        memset(buf, 0xcc, sizeof(buf));
        buf[0] = '\0';
-       assert(mblen(buf, 1) == 0);
+       ATF_REQUIRE(mblen(buf, 1) == 0);
 
        /* Latin letter A. */
        buf[0] = 'A';
-       assert(mblen(buf, 1) == 1);
+       ATF_REQUIRE(mblen(buf, 1) == 1);
 
        /* Incomplete character sequence. */
        buf[0] = '\0';
-       assert(mblen(buf, 0) == -1);
-       assert(mblen(NULL, 0) == 0);
+       ATF_REQUIRE(mblen(buf, 0) == -1);
+       ATF_REQUIRE(mblen(NULL, 0) == 0);
 
        /*
         * Japanese (EUC) locale.
         */
 
-       assert(strcmp(setlocale(LC_CTYPE, "ja_JP.eucJP"), "ja_JP.eucJP") == 0);
-       assert(MB_CUR_MAX > 1);
+       ATF_REQUIRE(strcmp(setlocale(LC_CTYPE, "ja_JP.eucJP"), "ja_JP.eucJP") 
== 0);
+       ATF_REQUIRE(MB_CUR_MAX > 1);
 
        /* No shift states in EUC. */
-       assert(mblen(NULL, 0) == 0);
+       ATF_REQUIRE(mblen(NULL, 0) == 0);
 
        /* Null wide character. */
        memset(buf, 0xcc, sizeof(buf));
        buf[0] = '\0';
-       assert(mblen(buf, 1) == 0);
+       ATF_REQUIRE(mblen(buf, 1) == 0);
 
        /* Latin letter A. */
        buf[0] = 'A';
-       assert(mblen(buf, 1) == 1);
+       ATF_REQUIRE(mblen(buf, 1) == 1);
 
        /* Incomplete character sequence. */
        buf[0] = '\0';
-       assert(mblen(buf, 0) == -1);
-       assert(mblen(NULL, 0) == 0);
+       ATF_REQUIRE(mblen(buf, 0) == -1);
+       ATF_REQUIRE(mblen(NULL, 0) == 0);
 
        /* Incomplete character sequence (truncated double-byte). */
        memset(buf, 0xcc, sizeof(buf));
        buf[0] = 0xa3;
        buf[1] = 0x00;
-       assert(mblen(buf, 1) == -1);
-       assert(mblen(NULL, 0) == 0);
+       ATF_REQUIRE(mblen(buf, 1) == -1);
+       ATF_REQUIRE(mblen(NULL, 0) == 0);
 
        /* Same as above, but complete. */
        buf[1] = 0xc1;
-       assert(mblen(buf, 2) == 2);
+       ATF_REQUIRE(mblen(buf, 2) == 2);
+}
+
+ATF_TP_ADD_TCS(tp)
+{
 
-       printf("ok 1 - mblen()\n");
+       ATF_TP_ADD_TC(tp, mblen_test);
 
-       return (0);
+       return (atf_no_error());
 }

Copied and modified: head/lib/libc/tests/locale/mbrlen_test.c (from r290531, 
head/tools/regression/lib/libc/locale/test-mbrlen.c)
==============================================================================
--- head/tools/regression/lib/libc/locale/test-mbrlen.c Sun Nov  8 01:41:44 
2015        (r290531, copy source)
+++ head/lib/libc/tests/locale/mbrlen_test.c    Sun Nov  8 02:06:17 2015        
(r290532)
@@ -35,7 +35,6 @@
 #include <sys/cdefs.h>
 __FBSDID("$FreeBSD$");
 
-#include <assert.h>
 #include <errno.h>
 #include <limits.h>
 #include <locale.h>
@@ -44,86 +43,85 @@ __FBSDID("$FreeBSD$");
 #include <string.h>
 #include <wchar.h>
 
-int
-main(int argc, char *argv[])
+#include <atf-c.h>
+
+ATF_TC_WITHOUT_HEAD(mbrlen_test);
+ATF_TC_BODY(mbrlen_test, tc)
 {
        mbstate_t s;
        size_t len;
        char buf[MB_LEN_MAX + 1];
 
-       /*
-        * C/POSIX locale.
-        */
-       
-       printf("1..1\n");
-
-       assert(MB_CUR_MAX == 1);
+       /* C/POSIX locale. */
+       ATF_REQUIRE(MB_CUR_MAX == 1);
 
        /* Null wide character, internal state. */
        memset(buf, 0xcc, sizeof(buf));
        buf[0] = 0;
-       assert(mbrlen(buf, 1, NULL) == 0);
+       ATF_REQUIRE(mbrlen(buf, 1, NULL) == 0);
 
        /* Null wide character. */
        memset(&s, 0, sizeof(s));
-       assert(mbrlen(buf, 1, &s) == 0);
+       ATF_REQUIRE(mbrlen(buf, 1, &s) == 0);
 
        /* Latin letter A, internal state. */
-       assert(mbrlen(NULL, 0, NULL) == 0);
+       ATF_REQUIRE(mbrlen(NULL, 0, NULL) == 0);
        buf[0] = 'A';
-       assert(mbrlen(buf, 1, NULL) == 1);
+       ATF_REQUIRE(mbrlen(buf, 1, NULL) == 1);
 
        /* Latin letter A. */
        memset(&s, 0, sizeof(s));
-       assert(mbrlen(buf, 1, &s) == 1);
+       ATF_REQUIRE(mbrlen(buf, 1, &s) == 1);
 
        /* Incomplete character sequence. */
        memset(&s, 0, sizeof(s));
-       assert(mbrlen(buf, 0, &s) == (size_t)-2);
+       ATF_REQUIRE(mbrlen(buf, 0, &s) == (size_t)-2);
 
-       /*
-        * Japanese (EUC) locale.
-        */
+       /* Japanese (EUC) locale. */
 
-       assert(strcmp(setlocale(LC_CTYPE, "ja_JP.eucJP"), "ja_JP.eucJP") == 0);
-       assert(MB_CUR_MAX > 1);
+       ATF_REQUIRE(strcmp(setlocale(LC_CTYPE, "ja_JP.eucJP"), "ja_JP.eucJP") 
== 0);
+       ATF_REQUIRE(MB_CUR_MAX > 1);
 
        /* Null wide character, internal state. */
-       assert(mbrlen(NULL, 0, NULL) == 0);
+       ATF_REQUIRE(mbrlen(NULL, 0, NULL) == 0);
        memset(buf, 0xcc, sizeof(buf));
        buf[0] = 0;
-       assert(mbrlen(buf, 1, NULL) == 0);
+       ATF_REQUIRE(mbrlen(buf, 1, NULL) == 0);
 
        /* Null wide character. */
        memset(&s, 0, sizeof(s));
-       assert(mbrlen(buf, 1, &s) == 0);
+       ATF_REQUIRE(mbrlen(buf, 1, &s) == 0);
 
        /* Latin letter A, internal state. */
-       assert(mbrlen(NULL, 0, NULL) == 0);
+       ATF_REQUIRE(mbrlen(NULL, 0, NULL) == 0);
        buf[0] = 'A';
-       assert(mbrlen(buf, 1, NULL) == 1);
+       ATF_REQUIRE(mbrlen(buf, 1, NULL) == 1);
 
        /* Latin letter A. */
        memset(&s, 0, sizeof(s));
-       assert(mbrlen(buf, 1, &s) == 1);
+       ATF_REQUIRE(mbrlen(buf, 1, &s) == 1);
 
        /* Incomplete character sequence (zero length). */
        memset(&s, 0, sizeof(s));
-       assert(mbrlen(buf, 0, &s) == (size_t)-2);
+       ATF_REQUIRE(mbrlen(buf, 0, &s) == (size_t)-2);
 
        /* Incomplete character sequence (truncated double-byte). */
        memset(buf, 0xcc, sizeof(buf));
        buf[0] = 0xa3;
        buf[1] = 0x00;
        memset(&s, 0, sizeof(s));
-       assert(mbrlen(buf, 1, &s) == (size_t)-2);
+       ATF_REQUIRE(mbrlen(buf, 1, &s) == (size_t)-2);
 
        /* Same as above, but complete. */
        buf[1] = 0xc1;
        memset(&s, 0, sizeof(s));
-       assert(mbrlen(buf, 2, &s) == 2);
+       ATF_REQUIRE(mbrlen(buf, 2, &s) == 2);
+}
+
+ATF_TP_ADD_TCS(tp)
+{
 
-       printf("ok 1 - mbrlen()\n");
+       ATF_TP_ADD_TC(tp, mbrlen_test);
 
-       return (0);
+       return (atf_no_error());
 }

Copied and modified: head/lib/libc/tests/locale/mbrtoc16_test.c (from r290531, 
head/tools/regression/lib/libc/locale/test-mbrtoc16.c)
==============================================================================
--- head/tools/regression/lib/libc/locale/test-mbrtoc16.c       Sun Nov  8 
01:41:44 2015        (r290531, copy source)
+++ head/lib/libc/tests/locale/mbrtoc16_test.c  Sun Nov  8 02:06:17 2015        
(r290532)
@@ -33,7 +33,6 @@
 #include <sys/cdefs.h>
 __FBSDID("$FreeBSD$");
 
-#include <assert.h>
 #include <errno.h>
 #include <limits.h>
 #include <locale.h>
@@ -41,8 +40,10 @@ __FBSDID("$FreeBSD$");
 #include <string.h>
 #include <uchar.h>
 
-int
-main(int argc, char *argv[])
+#include <atf-c.h>
+
+ATF_TC_WITHOUT_HEAD(mbrtoc16_test);
+ATF_TC_BODY(mbrtoc16_test, tc)
 {
        mbstate_t s;
        size_t len;
@@ -55,141 +56,145 @@ main(int argc, char *argv[])
        printf("1..1\n");
 
        /* Null wide character, internal state. */
-       assert(mbrtoc16(&c16, "", 1, NULL) == 0);
-       assert(c16 == 0);
+       ATF_REQUIRE(mbrtoc16(&c16, "", 1, NULL) == 0);
+       ATF_REQUIRE(c16 == 0);
 
        /* Null wide character. */
        memset(&s, 0, sizeof(s));
-       assert(mbrtoc16(&c16, "", 1, &s) == 0);
-       assert(c16 == 0);
+       ATF_REQUIRE(mbrtoc16(&c16, "", 1, &s) == 0);
+       ATF_REQUIRE(c16 == 0);
 
        /* Latin letter A, internal state. */
-       assert(mbrtoc16(NULL, 0, 0, NULL) == 0);
-       assert(mbrtoc16(&c16, "A", 1, NULL) == 1);
-       assert(c16 == L'A');
+       ATF_REQUIRE(mbrtoc16(NULL, 0, 0, NULL) == 0);
+       ATF_REQUIRE(mbrtoc16(&c16, "A", 1, NULL) == 1);
+       ATF_REQUIRE(c16 == L'A');
 
        /* Latin letter A. */
        memset(&s, 0, sizeof(s));
-       assert(mbrtoc16(&c16, "A", 1, &s) == 1);
-       assert(c16 == L'A');
+       ATF_REQUIRE(mbrtoc16(&c16, "A", 1, &s) == 1);
+       ATF_REQUIRE(c16 == L'A');
 
        /* Incomplete character sequence. */
        c16 = L'z';
        memset(&s, 0, sizeof(s));
-       assert(mbrtoc16(&c16, "", 0, &s) == (size_t)-2);
-       assert(c16 == L'z');
+       ATF_REQUIRE(mbrtoc16(&c16, "", 0, &s) == (size_t)-2);
+       ATF_REQUIRE(c16 == L'z');
 
        /* Check that mbrtoc16() doesn't access the buffer when n == 0. */
        c16 = L'z';
        memset(&s, 0, sizeof(s));
-       assert(mbrtoc16(&c16, "", 0, &s) == (size_t)-2);
-       assert(c16 == L'z');
+       ATF_REQUIRE(mbrtoc16(&c16, "", 0, &s) == (size_t)-2);
+       ATF_REQUIRE(c16 == L'z');
 
        /* Check that mbrtoc16() doesn't read ahead too aggressively. */
        memset(&s, 0, sizeof(s));
-       assert(mbrtoc16(&c16, "AB", 2, &s) == 1);
-       assert(c16 == L'A');
-       assert(mbrtoc16(&c16, "C", 1, &s) == 1);
-       assert(c16 == L'C');
+       ATF_REQUIRE(mbrtoc16(&c16, "AB", 2, &s) == 1);
+       ATF_REQUIRE(c16 == L'A');
+       ATF_REQUIRE(mbrtoc16(&c16, "C", 1, &s) == 1);
+       ATF_REQUIRE(c16 == L'C');
 
        /*
         * ISO-8859-1.
         */
 
-       assert(strcmp(setlocale(LC_CTYPE, "en_US.ISO8859-1"),
+       ATF_REQUIRE(strcmp(setlocale(LC_CTYPE, "en_US.ISO8859-1"),
            "en_US.ISO8859-1") == 0);
 
        /* Currency sign. */
        memset(&s, 0, sizeof(s));
-       assert(mbrtoc16(&c16, "\xa4", 1, &s) == 1);
-       assert(c16 == 0xa4);
+       ATF_REQUIRE(mbrtoc16(&c16, "\xa4", 1, &s) == 1);
+       ATF_REQUIRE(c16 == 0xa4);
 
        /*
         * ISO-8859-15.
         */
 
-       assert(strcmp(setlocale(LC_CTYPE, "en_US.ISO8859-15"),
+       ATF_REQUIRE(strcmp(setlocale(LC_CTYPE, "en_US.ISO8859-15"),
            "en_US.ISO8859-15") == 0);
 
        /* Euro sign. */
        memset(&s, 0, sizeof(s));
-       assert(mbrtoc16(&c16, "\xa4", 1, &s) == 1);
-       assert(c16 == 0x20ac);
+       ATF_REQUIRE(mbrtoc16(&c16, "\xa4", 1, &s) == 1);
+       ATF_REQUIRE(c16 == 0x20ac);
 
        /*
         * UTF-8.
         */
 
-       assert(strcmp(setlocale(LC_CTYPE, "en_US.UTF-8"), "en_US.UTF-8") == 0);
+       ATF_REQUIRE(strcmp(setlocale(LC_CTYPE, "en_US.UTF-8"), "en_US.UTF-8") 
== 0);
 
        /* Null wide character, internal state. */
-       assert(mbrtoc16(NULL, 0, 0, NULL) == 0);
-       assert(mbrtoc16(&c16, "", 1, NULL) == 0);
-       assert(c16 == 0);
+       ATF_REQUIRE(mbrtoc16(NULL, 0, 0, NULL) == 0);
+       ATF_REQUIRE(mbrtoc16(&c16, "", 1, NULL) == 0);
+       ATF_REQUIRE(c16 == 0);
 
        /* Null wide character. */
        memset(&s, 0, sizeof(s));
-       assert(mbrtoc16(&c16, "", 1, &s) == 0);
-       assert(c16 == 0);
+       ATF_REQUIRE(mbrtoc16(&c16, "", 1, &s) == 0);
+       ATF_REQUIRE(c16 == 0);
 
        /* Latin letter A, internal state. */
-       assert(mbrtoc16(NULL, 0, 0, NULL) == 0);
-       assert(mbrtoc16(&c16, "A", 1, NULL) == 1);
-       assert(c16 == L'A');
+       ATF_REQUIRE(mbrtoc16(NULL, 0, 0, NULL) == 0);
+       ATF_REQUIRE(mbrtoc16(&c16, "A", 1, NULL) == 1);
+       ATF_REQUIRE(c16 == L'A');
 
        /* Latin letter A. */
        memset(&s, 0, sizeof(s));
-       assert(mbrtoc16(&c16, "A", 1, &s) == 1);
-       assert(c16 == L'A');
+       ATF_REQUIRE(mbrtoc16(&c16, "A", 1, &s) == 1);
+       ATF_REQUIRE(c16 == L'A');
 
        /* Incomplete character sequence (zero length). */
        c16 = L'z';
        memset(&s, 0, sizeof(s));
-       assert(mbrtoc16(&c16, "", 0, &s) == (size_t)-2);
-       assert(c16 == L'z');
+       ATF_REQUIRE(mbrtoc16(&c16, "", 0, &s) == (size_t)-2);
+       ATF_REQUIRE(c16 == L'z');
 
        /* Incomplete character sequence (truncated double-byte). */
        memset(&s, 0, sizeof(s));
        c16 = 0;
-       assert(mbrtoc16(&c16, "\xc3", 1, &s) == (size_t)-2);
+       ATF_REQUIRE(mbrtoc16(&c16, "\xc3", 1, &s) == (size_t)-2);
 
        /* Same as above, but complete. */
        memset(&s, 0, sizeof(s));
        c16 = 0;
-       assert(mbrtoc16(&c16, "\xc3\x84", 2, &s) == 2);
-       assert(c16 == 0xc4);
+       ATF_REQUIRE(mbrtoc16(&c16, "\xc3\x84", 2, &s) == 2);
+       ATF_REQUIRE(c16 == 0xc4);
 
        /* Test restarting behaviour. */
        memset(&s, 0, sizeof(s));
        c16 = 0;
-       assert(mbrtoc16(&c16, "\xc3", 1, &s) == (size_t)-2);
-       assert(c16 == 0);
-       assert(mbrtoc16(&c16, "\xb7", 1, &s) == 1);
-       assert(c16 == 0xf7);
+       ATF_REQUIRE(mbrtoc16(&c16, "\xc3", 1, &s) == (size_t)-2);
+       ATF_REQUIRE(c16 == 0);
+       ATF_REQUIRE(mbrtoc16(&c16, "\xb7", 1, &s) == 1);
+       ATF_REQUIRE(c16 == 0xf7);
 
        /* Surrogate pair. */
        memset(&s, 0, sizeof(s));
        c16 = 0;
-       assert(mbrtoc16(&c16, "\xf0\x9f\x92\xa9", 4, &s) == 4);
-       assert(c16 == 0xd83d);
-       assert(mbrtoc16(&c16, "", 0, &s) == (size_t)-3);
-       assert(c16 == 0xdca9);
+       ATF_REQUIRE(mbrtoc16(&c16, "\xf0\x9f\x92\xa9", 4, &s) == 4);
+       ATF_REQUIRE(c16 == 0xd83d);
+       ATF_REQUIRE(mbrtoc16(&c16, "", 0, &s) == (size_t)-3);
+       ATF_REQUIRE(c16 == 0xdca9);
 
        /* Letter e with acute, precomposed. */
        memset(&s, 0, sizeof(s));
        c16 = 0;
-       assert(mbrtoc16(&c16, "\xc3\xa9", 2, &s) == 2);
-       assert(c16 == 0xe9);
+       ATF_REQUIRE(mbrtoc16(&c16, "\xc3\xa9", 2, &s) == 2);
+       ATF_REQUIRE(c16 == 0xe9);
 
        /* Letter e with acute, combined. */
        memset(&s, 0, sizeof(s));
        c16 = 0;
-       assert(mbrtoc16(&c16, "\x65\xcc\x81", 3, &s) == 1);
-       assert(c16 == 0x65);
-       assert(mbrtoc16(&c16, "\xcc\x81", 2, &s) == 2);
-       assert(c16 == 0x301);
+       ATF_REQUIRE(mbrtoc16(&c16, "\x65\xcc\x81", 3, &s) == 1);
+       ATF_REQUIRE(c16 == 0x65);
+       ATF_REQUIRE(mbrtoc16(&c16, "\xcc\x81", 2, &s) == 2);
+       ATF_REQUIRE(c16 == 0x301);
+}
+
+ATF_TP_ADD_TCS(tp)
+{
 
-       printf("ok 1 - mbrtoc16()\n");
+       ATF_TP_ADD_TC(tp, mbrtoc16_test);
 
-       return (0);
+       return (atf_no_error());
 }

Copied and modified: head/lib/libc/tests/locale/mbrtowc_test.c (from r290531, 
head/tools/regression/lib/libc/locale/test-mbrtowc.c)
==============================================================================
--- head/tools/regression/lib/libc/locale/test-mbrtowc.c        Sun Nov  8 
01:41:44 2015        (r290531, copy source)
+++ head/lib/libc/tests/locale/mbrtowc_test.c   Sun Nov  8 02:06:17 2015        
(r290532)
@@ -35,7 +35,6 @@
 #include <sys/cdefs.h>
 __FBSDID("$FreeBSD$");
 
-#include <assert.h>
 #include <errno.h>
 #include <limits.h>
 #include <locale.h>
@@ -44,8 +43,10 @@ __FBSDID("$FreeBSD$");
 #include <string.h>
 #include <wchar.h>
 
-int
-main(int argc, char *argv[])
+#include <atf-c.h>
+
+ATF_TC_WITHOUT_HEAD(mbrtowc_test);
+ATF_TC_BODY(mbrtowc_test, tc)
 {
        mbstate_t s;
        size_t len;
@@ -58,78 +59,78 @@ main(int argc, char *argv[])
 
        printf("1..1\n");
 
-       assert(MB_CUR_MAX == 1);
+       ATF_REQUIRE(MB_CUR_MAX == 1);
 
        /* Null wide character, internal state. */
        memset(buf, 0xcc, sizeof(buf));
        buf[0] = 0;
-       assert(mbrtowc(&wc, buf, 1, NULL) == 0);
-       assert(wc == 0);
+       ATF_REQUIRE(mbrtowc(&wc, buf, 1, NULL) == 0);
+       ATF_REQUIRE(wc == 0);
 
        /* Null wide character. */
        memset(&s, 0, sizeof(s));
-       assert(mbrtowc(&wc, buf, 1, &s) == 0);
-       assert(wc == 0);
+       ATF_REQUIRE(mbrtowc(&wc, buf, 1, &s) == 0);
+       ATF_REQUIRE(wc == 0);
 
        /* Latin letter A, internal state. */
-       assert(mbrtowc(NULL, 0, 0, NULL) == 0);
+       ATF_REQUIRE(mbrtowc(NULL, 0, 0, NULL) == 0);
        buf[0] = 'A';
-       assert(mbrtowc(&wc, buf, 1, NULL) == 1);
-       assert(wc == L'A');
+       ATF_REQUIRE(mbrtowc(&wc, buf, 1, NULL) == 1);
+       ATF_REQUIRE(wc == L'A');
 
        /* Latin letter A. */
        memset(&s, 0, sizeof(s));
-       assert(mbrtowc(&wc, buf, 1, &s) == 1);
-       assert(wc == L'A');
+       ATF_REQUIRE(mbrtowc(&wc, buf, 1, &s) == 1);
+       ATF_REQUIRE(wc == L'A');
 
        /* Incomplete character sequence. */
        wc = L'z';
        memset(&s, 0, sizeof(s));
-       assert(mbrtowc(&wc, buf, 0, &s) == (size_t)-2);
-       assert(wc == L'z');
+       ATF_REQUIRE(mbrtowc(&wc, buf, 0, &s) == (size_t)-2);
+       ATF_REQUIRE(wc == L'z');
 
        /* Check that mbrtowc() doesn't access the buffer when n == 0. */
        wc = L'z';
        memset(&s, 0, sizeof(s));
        buf[0] = '\0';
-       assert(mbrtowc(&wc, buf, 0, &s) == (size_t)-2);
-       assert(wc == L'z');
+       ATF_REQUIRE(mbrtowc(&wc, buf, 0, &s) == (size_t)-2);
+       ATF_REQUIRE(wc == L'z');
 
        /*
         * Japanese (EUC) locale.
         */
 
-       assert(strcmp(setlocale(LC_CTYPE, "ja_JP.eucJP"), "ja_JP.eucJP") == 0);
-       assert(MB_CUR_MAX > 1);
+       ATF_REQUIRE(strcmp(setlocale(LC_CTYPE, "ja_JP.eucJP"), "ja_JP.eucJP") 
== 0);
+       ATF_REQUIRE(MB_CUR_MAX > 1);
 
        /* Null wide character, internal state. */
-       assert(mbrtowc(NULL, 0, 0, NULL) == 0);
+       ATF_REQUIRE(mbrtowc(NULL, 0, 0, NULL) == 0);
        memset(buf, 0xcc, sizeof(buf));
        buf[0] = 0;
-       assert(mbrtowc(&wc, buf, 1, NULL) == 0);
-       assert(wc == 0);
+       ATF_REQUIRE(mbrtowc(&wc, buf, 1, NULL) == 0);
+       ATF_REQUIRE(wc == 0);
 
        /* Null wide character. */
        memset(&s, 0, sizeof(s));
-       assert(mbrtowc(&wc, buf, 1, &s) == 0);
-       assert(wc == 0);
+       ATF_REQUIRE(mbrtowc(&wc, buf, 1, &s) == 0);
+       ATF_REQUIRE(wc == 0);
 
        /* Latin letter A, internal state. */
-       assert(mbrtowc(NULL, 0, 0, NULL) == 0);
+       ATF_REQUIRE(mbrtowc(NULL, 0, 0, NULL) == 0);
        buf[0] = 'A';
-       assert(mbrtowc(&wc, buf, 1, NULL) == 1);
-       assert(wc == L'A');
+       ATF_REQUIRE(mbrtowc(&wc, buf, 1, NULL) == 1);
+       ATF_REQUIRE(wc == L'A');
 
        /* Latin letter A. */
        memset(&s, 0, sizeof(s));
-       assert(mbrtowc(&wc, buf, 1, &s) == 1);
-       assert(wc == L'A');
+       ATF_REQUIRE(mbrtowc(&wc, buf, 1, &s) == 1);
+       ATF_REQUIRE(wc == L'A');
 
        /* Incomplete character sequence (zero length). */
        wc = L'z';
        memset(&s, 0, sizeof(s));
-       assert(mbrtowc(&wc, buf, 0, &s) == (size_t)-2);
-       assert(wc == L'z');
+       ATF_REQUIRE(mbrtowc(&wc, buf, 0, &s) == (size_t)-2);
+       ATF_REQUIRE(wc == L'z');
 
        /* Incomplete character sequence (truncated double-byte). */
        memset(buf, 0xcc, sizeof(buf));
@@ -137,27 +138,31 @@ main(int argc, char *argv[])
        buf[1] = 0x00;
        memset(&s, 0, sizeof(s));
        wc = 0;
-       assert(mbrtowc(&wc, buf, 1, &s) == (size_t)-2);
+       ATF_REQUIRE(mbrtowc(&wc, buf, 1, &s) == (size_t)-2);
 
        /* Same as above, but complete. */
        buf[1] = 0xc1;
        memset(&s, 0, sizeof(s));
        wc = 0;
-       assert(mbrtowc(&wc, buf, 2, &s) == 2);
-       assert(wc == 0xa3c1);
+       ATF_REQUIRE(mbrtowc(&wc, buf, 2, &s) == 2);
+       ATF_REQUIRE(wc == 0xa3c1);
 
        /* Test restarting behaviour. */
        memset(buf, 0xcc, sizeof(buf));
        buf[0] = 0xa3;
        memset(&s, 0, sizeof(s));
        wc = 0;
-       assert(mbrtowc(&wc, buf, 1, &s) == (size_t)-2);
-       assert(wc == 0);
+       ATF_REQUIRE(mbrtowc(&wc, buf, 1, &s) == (size_t)-2);
+       ATF_REQUIRE(wc == 0);
        buf[0] = 0xc1;
-       assert(mbrtowc(&wc, buf, 1, &s) == 1);
-       assert(wc == 0xa3c1);
+       ATF_REQUIRE(mbrtowc(&wc, buf, 1, &s) == 1);
+       ATF_REQUIRE(wc == 0xa3c1);
+}
+
+ATF_TP_ADD_TCS(tp)
+{
 
-       printf("ok 1 - mbrtowc()\n");
+       ATF_TP_ADD_TC(tp, mbrtowc_test);
 
-       return (0);
+       return (atf_no_error());
 }

Copied and modified: head/lib/libc/tests/locale/mbsnrtowcs_test.c (from 
r290531, head/tools/regression/lib/libc/locale/test-mbsnrtowcs.c)
==============================================================================
--- head/tools/regression/lib/libc/locale/test-mbsnrtowcs.c     Sun Nov  8 
01:41:44 2015        (r290531, copy source)
+++ head/lib/libc/tests/locale/mbsnrtowcs_test.c        Sun Nov  8 02:06:17 
2015        (r290532)
@@ -34,7 +34,6 @@
 #include <sys/cdefs.h>
 __FBSDID("$FreeBSD$");
 
-#include <assert.h>
 #include <errno.h>
 #include <limits.h>
 #include <locale.h>
@@ -43,19 +42,17 @@ __FBSDID("$FreeBSD$");
 #include <string.h>
 #include <wchar.h>
 
-int
-main(int argc, char *argv[])
+#include <atf-c.h>
+
+ATF_TC_WITHOUT_HEAD(mbsnrtowcs_test);
+ATF_TC_BODY(mbsnrtowcs_test, tc)
 {
        char srcbuf[128];
        wchar_t dstbuf[128];
        char *src;
        mbstate_t s;
 
-       /*
-        * C/POSIX locale.

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to