blob: bc4bf6019d9d4df72a3b87f1ab21d676e2fcd522 [file]
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#define _CTYPE_DISABLE_MACROS
#include <wctype.h>
/**
* Both `wctrans` and `towctrans` functions were added in msvcr120.dll.
*
* CRT's `towctrans` does not properly handle case when second argument is
* `(wctrans_t)0`.
*/
/**
* This is CRT's `towctrans` renamed to `__msvcrt_towctrans`.
*/
extern wint_t (__cdecl *__MINGW_IMP_SYMBOL (__msvcrt_towctrans)) (wint_t, wctrans_t);
wint_t __cdecl towctrans (wint_t _C, wctrans_t _Type) {
/**
* POSIX requires that if `_Type` is zero, `_C` is returned unchanged.
*/
if (_Type == (wctrans_t) 0) {
return _C;
}
return __MINGW_IMP_SYMBOL (__msvcrt_towctrans) (_C, _Type);
}
wint_t (__cdecl *__MINGW_IMP_SYMBOL (towctrans)) (wint_t, wctrans_t) = towctrans;