1 /* { dg-do compile } */
2 
3 typedef short unsigned int wchar_t;
4 typedef unsigned int size_t;
5 int* _errno(void);
6 int WideCharToMultiByte (wchar_t *);
7 int __attribute__ ((__nonnull__ (1)))
__wcrtomb_cp(char * dst,wchar_t wc,const unsigned int cp,const unsigned int mb_max)8 __wcrtomb_cp (char *dst, wchar_t wc, const unsigned int cp,
9 	      const unsigned int mb_max)
10 {
11   if (cp == 0)     {
12       if (wc > 255)
13 	(*_errno()) = 42;
14       return 1;
15   }
16   else
17     return WideCharToMultiByte (&wc);
18 }
wcsrtombs(char * dst,const wchar_t * pwc,unsigned int cp,unsigned int mb_max)19 void wcsrtombs (char *dst, const wchar_t *pwc, unsigned int cp,
20 		unsigned int mb_max)
21 {
22   if ((__wcrtomb_cp (dst, *pwc, cp, mb_max)) <= 0)
23     return;
24   if ((__wcrtomb_cp (dst, *pwc, cp, mb_max)) <= 0)
25     return;
26 }
27