freebsd-dev/lib/libc/locale/mbrtoc16_iconv.c
Ed Schouten 49111f0092 Add libiconv based versions of *c16*() and *c32*().
I initially thought wchar_t was locale independent, but this seems to be
only the case on Linux. This means that we cannot depend on the *wc*()
routines to implement *c16*() and *c32*(). Instead, use the Citrus
libiconv that is part of libc.

I'll see if there is anything I can do to make the existing functions
somewhat useful in case the system is built without libiconv in the
nearby future. If not, I'll simply remove the broken implementations.

Reviewed by:	jilles, gabor
2013-06-03 17:17:56 +00:00

9 lines
190 B
C

/* $FreeBSD$ */
#define charXX_t char16_t
#define mbrtocXX mbrtoc16
#define mbrtocXX_l mbrtoc16_l
#define DSTBUF_LEN 2
#define UTF_XX_INTERNAL "UTF-16-INTERNAL"
#include "mbrtocXX_iconv.h"