From 28f1c862ddaa3515d0f74102379301048c76cf0f Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Tue, 21 Apr 1998 20:37:08 +0000 Subject: Update. 1998-04-21 20:32 Ulrich Drepper * iconv/loop.c: Allow EXTRA_LOOP_DECLS be defined and use it in function declaration. * iconv/skeleton.c: Allow PREPARE_LOOP and EXTRA_LOOP_ARGS be defined and use them in conversion function. * iconvdata/Makefile (modules): Re-add ISO6446. * iconvdata/TEST: Add tests for ASCII variants. * iconvdata/iso646.c: Rewrite to use loop.c and skeleton.c. * iconvdata/testdata/ANSI_X3.4-1968: New file. * iconvdata/testdata/BS_4730: New file. * iconvdata/testdata/BS_4730..UTF8: New file. --- iconv/loop.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'iconv/loop.c') diff --git a/iconv/loop.c b/iconv/loop.c index e1c1ab6e49..f8188873dc 100644 --- a/iconv/loop.c +++ b/iconv/loop.c @@ -43,6 +43,8 @@ BODY this is supposed to expand to the body of the loop. The user must provide this. + + EXTRA_LOOP_DECLS Extra arguments passed from converion loop call. */ #include @@ -106,11 +108,18 @@ #endif +/* If no arguments have to passed to the loop function define the macro + as empty. */ +#ifndef EXTRA_LOOP_DECLS +# define EXTRA_LOOP_DECLS +#endif + + /* The function returns the status, as defined in gconv.h. */ static inline int LOOPFCT (const unsigned char **inptrp, const unsigned char *inend, unsigned char **outptrp, unsigned char *outend, mbstate_t *state, - void *data, size_t *converted) + void *data, size_t *converted EXTRA_LOOP_DECLS) { int result = GCONV_OK; const unsigned char *inptr = *inptrp; @@ -222,3 +231,4 @@ LOOPFCT (const unsigned char **inptrp, const unsigned char *inend, #undef COUNT_CONVERTED #undef BODY #undef LOOPFCT +#undef EXTRA_LOOP_DECLS -- cgit 1.4.1