/* { dg-do compile } */ typedef short unsigned int wchar_t; typedef unsigned int size_t; int* _errno(void); int WideCharToMultiByte (wchar_t *); int __attribute__ ((__nonnull__ (1))) __wcrtomb_cp (char *dst, wchar_t wc, const unsigned int cp, const unsigned int mb_max) { if (cp == 0) { if (wc > 255) (*_errno()) = 42; return 1; } else return WideCharToMultiByte (&wc); } void wcsrtombs (char *dst, const wchar_t *pwc, unsigned int cp, unsigned int mb_max) { if ((__wcrtomb_cp (dst, *pwc, cp, mb_max)) <= 0) return; if ((__wcrtomb_cp (dst, *pwc, cp, mb_max)) <= 0) return; }