| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 | /*  TOWCTRANS: wint_t towctrans (wint_t wc, wctrans_t desc);*/#define TST_FUNCTION towctrans#include "tsp_common.c"#include "dat_towctrans.c"inttst_towctrans (FILE *fp, int debug_flg){  TST_DECL_VARS (wint_t);  wint_t wc;  const char *ts;#if SHOJI_IS_RIGHT  int dummy=0;#endif  wctrans_t wto;  TST_DO_TEST (towctrans)    {      TST_HEAD_LOCALE (towctrans, S_TOWCTRANS);      TST_DO_REC (towctrans)	{	  TST_GET_ERRET (towctrans);	  wc = TST_INPUT (towctrans).wc;	  ts = TST_INPUT (towctrans).ts;#if SHOJI_IS_RIGHT	  if ((wto = wctrans (ts)) == (wctrans_t) 0)	    {#if 0	      result (fp, C_IGNORED, S_TOWCTRANS, locale, rec+1, seq_num+1, 3,		      "Skip this data because the wctrans object is not invalid.");	      warn_count++;	      continue;#else	      wto = &dummy;	/* not good ... */#endif	      if (debug_flg)		{		  fprintf (stdout, "towctrans() ------ wctrans() returnd 0.\n");		}	    }#else	  wto = wctrans (ts);#endif	  TST_CLEAR_ERRNO;	  ret = towctrans (wc, wto);	  TST_SAVE_ERRNO;	  if (debug_flg)	    {	      fprintf (stdout, "towctrans() [ %s : %d ] ret = 0x%x\n",		       locale, rec+1, ret);	      fprintf (stdout, "		      errno = %d\n",		       errno_save);	    }	  TST_IF_RETURN (S_TOWCTRANS)	    {	      if (ret != 0)		{		  result (fp, C_SUCCESS, S_TOWCTRANS, locale, rec+1,			  seq_num+1, 3, MS_PASSED);		}	      else		{		  err_count++;		  result (fp, C_FAILURE, S_TOWCTRANS, locale, rec+1,			  seq_num+1, 3,			  "the function returned 0, but should be non-zero");		}	    }	}    }  return err_count;}
 |