1/*
2 * TEST SUITE FOR MB/WC FUNCTIONS IN C LIBRARY
3 * Main driver
4 */
5
6
7#define TST_FUNCTION_CALL(func) _TST_FUNCTION_CALL(func)
8#define _TST_FUNCTION_CALL(func) tst ##_## func
9
10#include <stdio.h>
11#include <stdlib.h>
12#include <string.h>
13#include <locale.h>
14#include <errno.h>
15#include <signal.h>
16
17#include "tst_types.h"
18#include "tgn_locdef.h"
19
20
21int
22main (int argc, char *argv[])
23{
24 int ret;
25 int debug;
26
27 debug = argc > 1 ? atoi (argv[1]) : 0;
28
29 if (debug)
30 {
31 fprintf (stdout, "\nTST_MBWC ===> %s ...\n", argv[0]);
32 }
33 ret = TST_FUNCTION_CALL (TST_FUNCTION) (stdout, debug);
34
35 return (ret != 0);
36}
37
38#define MAX_RESULT_REC 132
39char result_rec[MAX_RESULT_REC];
40
41
42int
43result (FILE * fp, char res, const char *func, const char *loc, int rec_no,
44 int seq_no, int case_no, const char *msg)
45{
46 if (fp == NULL
47 || strlen (func) + strlen (loc) + strlen (msg) + 32 > MAX_RESULT_REC)
48 {
49 fprintf (stderr,
50 "Warning: result(): can't write the result: %s:%s:%d:%d:%s\n",
51 func, loc, rec_no, case_no, msg);
52 return 0;
53 }
54
55 sprintf (result_rec, "%s:%s:%d:%d:%d:%c:%s\n", func, loc, rec_no, seq_no,
56 case_no, res, msg);
57
58 if (fputs (result_rec, fp) == EOF)
59 {
60 return 0;
61 }
62
63 return 1;
64}
65

source code of glibc/localedata/tests-mbwc/tsp_common.c