+2000-04-07 Ulrich Drepper <drepper@redhat.com>
+
+ * wcsmbs/wchar.h (__mbstate_t): Rename elements. Make __value
+ element a union to allow byte access.
+ * iconvdata/iso-2022-cn.c: Adjust for change of element name in
+ mbstate_t.
+ * iconvdata/iso-2022-jp.c: Likewise.
+ * iconvdata/iso-2022-kr.c: Likewise.
+
2000-04-06 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/getdents.c (__getdents): The Linux
#define MAX_NEEDED_TO 4
#define PREPARE_LOOP \
int save_set; \
- int *setp = &data->__statep->count;
+ int *setp = &data->__statep->__count;
#define EXTRA_LOOP_ARGS , setp
the output state to the initial state. This has to be done during the
flushing. */
#define EMIT_SHIFT_TO_INIT \
- if (data->__statep->count != ASCII_set) \
+ if (data->__statep->__count != ASCII_set) \
{ \
if (FROM_DIRECTION) \
/* It's easy, we don't have to emit anything, we just reset the \
state for the input. */ \
- data->__statep->count = ASCII_set; \
+ data->__statep->__count = ASCII_set; \
else \
{ \
unsigned char *outbuf = data->__outbuf; \
if (data->__is_last) \
*written += 1; \
data->__outbuf = outbuf; \
- data->__statep->count = ASCII_set; \
+ data->__statep->__count = ASCII_set; \
} \
} \
}
enum direction dir = ((struct iso2022jp_data *) step->__data)->dir; \
enum variant var = ((struct iso2022jp_data *) step->__data)->var; \
int save_set; \
- int *setp = &data->__statep->count;
+ int *setp = &data->__statep->__count;
#define EXTRA_LOOP_ARGS , var, setp
the output state to the initial state. This has to be done during the
flushing. */
#define EMIT_SHIFT_TO_INIT \
- if (data->__statep->count != ASCII_set) \
+ if (data->__statep->__count != ASCII_set) \
{ \
enum direction dir = ((struct iso2022jp_data *) step->__data)->dir; \
\
/* It's easy, we don't have to emit anything, we just reset the \
state for the input. Note that this also clears the G2 \
designation. */ \
- data->__statep->count = ASCII_set; \
+ data->__statep->__count = ASCII_set; \
else \
{ \
unsigned char *outbuf = data->__outbuf; \
*written += 3; \
data->__outbuf = outbuf; \
/* Note that this also clears the G2 designation. */ \
- data->__statep->count = ASCII_set; \
+ data->__statep->__count = ASCII_set; \
} \
} \
}
#define MAX_NEEDED_TO 4
#define PREPARE_LOOP \
int save_set; \
- int *setp = &data->__statep->count; \
+ int *setp = &data->__statep->__count; \
if (!FROM_DIRECTION && !data->__internal_use \
&& data->__invocation_counter == 0) \
{ \
the output state to the initial state. This has to be done during the
flushing. */
#define EMIT_SHIFT_TO_INIT \
- if (data->__statep->count != ASCII_set) \
+ if (data->__statep->__count != ASCII_set) \
{ \
if (FROM_DIRECTION) \
/* It's easy, we don't have to emit anything, we just reset the \
state for the input. */ \
- data->__statep->count = ASCII_set; \
+ data->__statep->__count = ASCII_set; \
else \
{ \
unsigned char *outbuf = data->__outbuf; \
if (data->__is_last) \
*written += 1; \
data->__outbuf = outbuf; \
- data->__statep->count = ASCII_set; \
+ data->__statep->__count = ASCII_set; \
} \
} \
}
-/* Copyright (C) 1995, 1996, 1997, 1998, 1999 Free Software Foundation, Inc.
+/* Copyright (C) 1995-1999, 2000 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
/* Conversion state information. */
typedef struct
{
- int count; /* Number of bytes needed for the current character. */
- wint_t value; /* Value so far. */
+ int __count;
+ union
+ {
+ wint_t __wch;
+ char __wchb[4];
+ } __value; /* Value so far. */
} __mbstate_t;
#endif
#undef __need_mbstate_t