summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog49
-rw-r--r--iconvdata/ansi_x3.110.c1
-rw-r--r--iconvdata/armscii-8.c1
-rw-r--r--iconvdata/big5.c1
-rw-r--r--iconvdata/big5hkscs.c1
-rw-r--r--iconvdata/cp1255.c1
-rw-r--r--iconvdata/cp1258.c1
-rw-r--r--iconvdata/cp932.c1
-rw-r--r--iconvdata/euc-cn.c1
-rw-r--r--iconvdata/euc-jisx0213.c1
-rw-r--r--iconvdata/euc-jp-ms.c1
-rw-r--r--iconvdata/euc-jp.c1
-rw-r--r--iconvdata/euc-kr.c1
-rw-r--r--iconvdata/euc-tw.c1
-rw-r--r--iconvdata/gb18030.c1
-rw-r--r--iconvdata/gbbig5.c1
-rw-r--r--iconvdata/gbgbk.c1
-rw-r--r--iconvdata/gbk.c1
-rw-r--r--iconvdata/ibm1364.c1
-rw-r--r--iconvdata/ibm930.c1
-rw-r--r--iconvdata/ibm932.c1
-rw-r--r--iconvdata/ibm933.c1
-rw-r--r--iconvdata/ibm935.c1
-rw-r--r--iconvdata/ibm937.c1
-rw-r--r--iconvdata/ibm939.c1
-rw-r--r--iconvdata/ibm943.c1
-rw-r--r--iconvdata/iso-2022-cn-ext.c1
-rw-r--r--iconvdata/iso-2022-cn.c1
-rw-r--r--iconvdata/iso-2022-jp-3.c1
-rw-r--r--iconvdata/iso-2022-jp.c1
-rw-r--r--iconvdata/iso-2022-kr.c1
-rw-r--r--iconvdata/iso646.c2
-rw-r--r--iconvdata/iso8859-1.c1
-rw-r--r--iconvdata/iso_11548-1.c1
-rw-r--r--iconvdata/iso_6937-2.c1
-rw-r--r--iconvdata/iso_6937.c1
-rw-r--r--iconvdata/johab.c1
-rw-r--r--iconvdata/shift_jisx0213.c1
-rw-r--r--iconvdata/sjis.c1
-rw-r--r--iconvdata/t.61.c1
-rw-r--r--iconvdata/tcvn5712-1.c1
-rw-r--r--iconvdata/tscii.c1
-rw-r--r--iconvdata/uhc.c1
-rw-r--r--iconvdata/unicode.c1
-rw-r--r--iconvdata/utf-16.c1
-rw-r--r--iconvdata/utf-32.c1
-rw-r--r--iconvdata/utf-7.c1
47 files changed, 96 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index dd8244c4a3..b66031d514 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,52 @@
+2014-05-01  Steve Ellcey  <sellcey@mips.com>
+
+	* iconvdata/ansi_x3.110.c (ONE_DIRECTION): Define.
+	* iconvdata/armscii-8.c (ONE_DIRECTION): Define.
+	* iconvdata/big5.c (ONE_DIRECTION): Define.
+	* iconvdata/big5hkscs.c (ONE_DIRECTION): Define.
+	* iconvdata/cp1255.c (ONE_DIRECTION): Define.
+	* iconvdata/cp1258.c (ONE_DIRECTION): Define.
+	* iconvdata/cp932.c (ONE_DIRECTION): Define.
+	* iconvdata/euc-cn.c (ONE_DIRECTION): Define.
+	* iconvdata/euc-jisx0213.c (ONE_DIRECTION): Define.
+	* iconvdata/euc-jp-ms.c (ONE_DIRECTION): Define.
+	* iconvdata/euc-jp.c (ONE_DIRECTION): Define.
+	* iconvdata/euc-kr.c (ONE_DIRECTION): Define.
+	* iconvdata/euc-tw.c (ONE_DIRECTION): Define.
+	* iconvdata/gb18030.c (ONE_DIRECTION): Define.
+	* iconvdata/gbbig5.c (ONE_DIRECTION): Define.
+	* iconvdata/gbgbk.c (ONE_DIRECTION): Define.
+	* iconvdata/gbk.c (ONE_DIRECTION): Define.
+	* iconvdata/ibm1364.c (ONE_DIRECTION): Define.
+	* iconvdata/ibm930.c (ONE_DIRECTION): Define.
+	* iconvdata/ibm932.c (ONE_DIRECTION): Define.
+	* iconvdata/ibm933.c (ONE_DIRECTION): Define.
+	* iconvdata/ibm935.c (ONE_DIRECTION): Define.
+	* iconvdata/ibm937.c (ONE_DIRECTION): Define.
+	* iconvdata/ibm939.c (ONE_DIRECTION): Define.
+	* iconvdata/ibm943.c (ONE_DIRECTION): Define.
+	* iconvdata/iso-2022-cn-ext.c (ONE_DIRECTION): Define.
+	* iconvdata/iso-2022-cn.c (ONE_DIRECTION): Define.
+	* iconvdata/iso-2022-jp-3.c (ONE_DIRECTION): Define.
+	* iconvdata/iso-2022-jp.c (ONE_DIRECTION): Define.
+	* iconvdata/iso-2022-kr.c (ONE_DIRECTION): Define.
+	* iconvdata/iso646.c (ONE_DIRECTION): Define.
+	* iconvdata/iso8859-1.c (ONE_DIRECTION): Define.
+	* iconvdata/iso_11548-1.c (ONE_DIRECTION): Define.
+	* iconvdata/iso_6937-2.c (ONE_DIRECTION): Define.
+	* iconvdata/iso_6937.c (ONE_DIRECTION): Define.
+	* iconvdata/johab.c (ONE_DIRECTION): Define.
+	* iconvdata/shift_jisx0213.c (ONE_DIRECTION): Define.
+	* iconvdata/sjis.c (ONE_DIRECTION): Define.
+	* iconvdata/t.61.c (ONE_DIRECTION): Define.
+	* iconvdata/tcvn5712-1.c (ONE_DIRECTION): Define.
+	* iconvdata/tscii.c (ONE_DIRECTION): Define.
+	* iconvdata/uhc.c (ONE_DIRECTION): Define.
+	* iconvdata/unicode.c (ONE_DIRECTION): Define.
+	* iconvdata/utf-16.c (ONE_DIRECTION): Define.
+	* iconvdata/utf-32.c (ONE_DIRECTION): Define.
+	* iconvdata/utf-7.c (ONE_DIRECTION): Define.
+
 2014-05-01  Roland McGrath  <roland@hack.frob.com>
 
 	* libio/libioP.h [!_IO_USE_OLD_IO_FILE && !_G_IO_NO_BACKWARD_COMPAT]
diff --git a/iconvdata/ansi_x3.110.c b/iconvdata/ansi_x3.110.c
index 9b67e62dc3..d602dfaa7f 100644
--- a/iconvdata/ansi_x3.110.c
+++ b/iconvdata/ansi_x3.110.c
@@ -390,6 +390,7 @@ static const char from_ucs4[][2] =
 #define MIN_NEEDED_FROM		1
 #define MAX_NEEDED_FROM		2
 #define MIN_NEEDED_TO		4
+#define ONE_DIRECTION		0
 
 /* First define the conversion function from ANSI_X3.110 to UCS4.  */
 #define MIN_NEEDED_INPUT	MIN_NEEDED_FROM
diff --git a/iconvdata/armscii-8.c b/iconvdata/armscii-8.c
index 8ad4dc4a7c..845e1e6175 100644
--- a/iconvdata/armscii-8.c
+++ b/iconvdata/armscii-8.c
@@ -28,6 +28,7 @@
 #define DEFINE_FINI		1
 #define MIN_NEEDED_FROM		1
 #define MIN_NEEDED_TO		4
+#define ONE_DIRECTION		0
 
 
 static const uint16_t map_from_armscii_8[0xfe - 0xa2 + 1] =
diff --git a/iconvdata/big5.c b/iconvdata/big5.c
index 4c8df8e7e0..ee3dede645 100644
--- a/iconvdata/big5.c
+++ b/iconvdata/big5.c
@@ -8383,6 +8383,7 @@ static const char from_ucs4_tab15[][2] =
 #define MIN_NEEDED_FROM		1
 #define MAX_NEEDED_FROM		2
 #define MIN_NEEDED_TO		4
+#define ONE_DIRECTION		0
 
 
 /* First define the conversion function from Big5 to UCS4.  */
diff --git a/iconvdata/big5hkscs.c b/iconvdata/big5hkscs.c
index 6084bd81c8..5dce195425 100644
--- a/iconvdata/big5hkscs.c
+++ b/iconvdata/big5hkscs.c
@@ -17738,6 +17738,7 @@ static struct
 #define TO_LOOP			to_big5hkscs
 #define DEFINE_INIT		1
 #define DEFINE_FINI		1
+#define ONE_DIRECTION		0
 #define FROM_LOOP_MIN_NEEDED_FROM	1
 #define FROM_LOOP_MAX_NEEDED_FROM	2
 #define FROM_LOOP_MIN_NEEDED_TO		4
diff --git a/iconvdata/cp1255.c b/iconvdata/cp1255.c
index 3106d2062f..1fab525aa7 100644
--- a/iconvdata/cp1255.c
+++ b/iconvdata/cp1255.c
@@ -30,6 +30,7 @@
 #define TO_LOOP			to_cp1255
 #define DEFINE_INIT		1
 #define DEFINE_FINI		1
+#define ONE_DIRECTION		0
 #define FROM_LOOP_MIN_NEEDED_FROM	1
 #define FROM_LOOP_MAX_NEEDED_FROM	1
 #define FROM_LOOP_MIN_NEEDED_TO		4
diff --git a/iconvdata/cp1258.c b/iconvdata/cp1258.c
index 6dc13b2bdf..5153eea074 100644
--- a/iconvdata/cp1258.c
+++ b/iconvdata/cp1258.c
@@ -31,6 +31,7 @@
 #define TO_LOOP			to_cp1258
 #define DEFINE_INIT		1
 #define DEFINE_FINI		1
+#define ONE_DIRECTION		0
 #define FROM_LOOP_MIN_NEEDED_FROM	1
 #define FROM_LOOP_MAX_NEEDED_FROM	1
 #define FROM_LOOP_MIN_NEEDED_TO		4
diff --git a/iconvdata/cp932.c b/iconvdata/cp932.c
index c467aaa2bb..a358edab3c 100644
--- a/iconvdata/cp932.c
+++ b/iconvdata/cp932.c
@@ -4534,6 +4534,7 @@ static const char from_ucs4_extra[229][2] =
 #define MIN_NEEDED_FROM		1
 #define MAX_NEEDED_FROM		2
 #define MIN_NEEDED_TO		4
+#define ONE_DIRECTION		0
 
 /* First define the conversion function from CP932 to UCS4.  */
 #define MIN_NEEDED_INPUT	MIN_NEEDED_FROM
diff --git a/iconvdata/euc-cn.c b/iconvdata/euc-cn.c
index 246ef5d70c..0d625b4e15 100644
--- a/iconvdata/euc-cn.c
+++ b/iconvdata/euc-cn.c
@@ -30,6 +30,7 @@
 #define MIN_NEEDED_FROM		1
 #define MAX_NEEDED_FROM		2
 #define MIN_NEEDED_TO		4
+#define ONE_DIRECTION		0
 
 
 /* First define the conversion function from EUC-CN to UCS4.  */
diff --git a/iconvdata/euc-jisx0213.c b/iconvdata/euc-jisx0213.c
index ff4e46fdda..a3697f8ffd 100644
--- a/iconvdata/euc-jisx0213.c
+++ b/iconvdata/euc-jisx0213.c
@@ -43,6 +43,7 @@
 #define TO_LOOP			to_euc_jisx0213
 #define DEFINE_INIT		1
 #define DEFINE_FINI		1
+#define ONE_DIRECTION		0
 #define FROM_LOOP_MIN_NEEDED_FROM	1
 #define FROM_LOOP_MAX_NEEDED_FROM	3
 #define FROM_LOOP_MIN_NEEDED_TO		4
diff --git a/iconvdata/euc-jp-ms.c b/iconvdata/euc-jp-ms.c
index 854e3017fe..8aed520396 100644
--- a/iconvdata/euc-jp-ms.c
+++ b/iconvdata/euc-jp-ms.c
@@ -4641,6 +4641,7 @@ static const unsigned char from_ucs4_extra[229][2] =
 #define MIN_NEEDED_FROM		1
 #define MAX_NEEDED_FROM		3
 #define MIN_NEEDED_TO		4
+#define ONE_DIRECTION		0
 
 
 /* First define the conversion function from EUC-JP-MS to UCS4.  */
diff --git a/iconvdata/euc-jp.c b/iconvdata/euc-jp.c
index a7f2ae351c..7689250ffc 100644
--- a/iconvdata/euc-jp.c
+++ b/iconvdata/euc-jp.c
@@ -33,6 +33,7 @@
 #define MIN_NEEDED_FROM		1
 #define MAX_NEEDED_FROM		3
 #define MIN_NEEDED_TO		4
+#define ONE_DIRECTION		0
 
 
 /* First define the conversion function from EUC-JP to UCS4.  */
diff --git a/iconvdata/euc-kr.c b/iconvdata/euc-kr.c
index f14d989385..3b13c2e337 100644
--- a/iconvdata/euc-kr.c
+++ b/iconvdata/euc-kr.c
@@ -66,6 +66,7 @@ euckr_from_ucs4 (uint32_t ch, unsigned char *cp)
 #define MIN_NEEDED_FROM		1
 #define MAX_NEEDED_FROM		2
 #define MIN_NEEDED_TO		4
+#define ONE_DIRECTION		0
 
 
 /* First define the conversion function from EUC-KR to UCS4.  */
diff --git a/iconvdata/euc-tw.c b/iconvdata/euc-tw.c
index 58ad6f1f8b..153e3a03ad 100644
--- a/iconvdata/euc-tw.c
+++ b/iconvdata/euc-tw.c
@@ -31,6 +31,7 @@
 #define MIN_NEEDED_FROM		1
 #define MAX_NEEDED_FROM		4
 #define MIN_NEEDED_TO		4
+#define ONE_DIRECTION		0
 
 
 /* First define the conversion function from EUC-TW to UCS4.  */
diff --git a/iconvdata/gb18030.c b/iconvdata/gb18030.c
index 4eaa8b5e65..f12c4514b0 100644
--- a/iconvdata/gb18030.c
+++ b/iconvdata/gb18030.c
@@ -24107,6 +24107,7 @@ static const unsigned char __ucs_to_gb18030_tab2[][2] =
 #define MIN_NEEDED_FROM		1
 #define MAX_NEEDED_FROM		4
 #define MIN_NEEDED_TO		4
+#define ONE_DIRECTION		0
 
 
 /* First define the conversion function from GB18030 to UCS4.  */
diff --git a/iconvdata/gbbig5.c b/iconvdata/gbbig5.c
index 1eb1067bb1..ddaa468686 100644
--- a/iconvdata/gbbig5.c
+++ b/iconvdata/gbbig5.c
@@ -4784,6 +4784,7 @@ const char __from_big5_to_gb2312 [13973][2] =
 #define MAX_NEEDED_FROM		2
 #define MIN_NEEDED_TO		1
 #define MAX_NEEDED_TO		2
+#define ONE_DIRECTION		0
 
 
 /* First define the conversion function from GB2312 to BIG5.  */
diff --git a/iconvdata/gbgbk.c b/iconvdata/gbgbk.c
index 88f9cd994e..620c39d7a7 100644
--- a/iconvdata/gbgbk.c
+++ b/iconvdata/gbgbk.c
@@ -32,6 +32,7 @@
 #define MAX_NEEDED_FROM		2
 #define MIN_NEEDED_TO		1
 #define MAX_NEEDED_TO		2
+#define ONE_DIRECTION		0
 
 
 /* First define the conversion function from GBK to GB2312.  */
diff --git a/iconvdata/gbk.c b/iconvdata/gbk.c
index 05d7eb8114..b1a77196dc 100644
--- a/iconvdata/gbk.c
+++ b/iconvdata/gbk.c
@@ -13130,6 +13130,7 @@ static const char __gbk_from_ucs4_tab12[][2] =
 #define MIN_NEEDED_FROM		1
 #define MAX_NEEDED_FROM		2
 #define MIN_NEEDED_TO		4
+#define ONE_DIRECTION		0
 
 
 /* First define the conversion function from GBK to UCS4.  */
diff --git a/iconvdata/ibm1364.c b/iconvdata/ibm1364.c
index 9de32c576a..0b5484fc20 100644
--- a/iconvdata/ibm1364.c
+++ b/iconvdata/ibm1364.c
@@ -55,6 +55,7 @@
 #else
 # define MAX_NEEDED_TO	4
 #endif
+#define ONE_DIRECTION	0
 #define PREPARE_LOOP \
   int save_curcs;							      \
   int *curcsp = &data->__statep->__count;
diff --git a/iconvdata/ibm930.c b/iconvdata/ibm930.c
index 1c50f1f3ac..768a444b9a 100644
--- a/iconvdata/ibm930.c
+++ b/iconvdata/ibm930.c
@@ -31,6 +31,7 @@
 #define CHARSET_NAME	"IBM930//"
 #define FROM_LOOP	from_ibm930
 #define TO_LOOP		to_ibm930
+#define ONE_DIRECTION			0
 #define FROM_LOOP_MIN_NEEDED_FROM	1
 #define FROM_LOOP_MAX_NEEDED_FROM	2
 #define FROM_LOOP_MIN_NEEDED_TO		4
diff --git a/iconvdata/ibm932.c b/iconvdata/ibm932.c
index cd43619963..f5dca59ac7 100644
--- a/iconvdata/ibm932.c
+++ b/iconvdata/ibm932.c
@@ -29,6 +29,7 @@
 #define CHARSET_NAME	"IBM932//"
 #define FROM_LOOP	from_ibm932
 #define TO_LOOP		to_ibm932
+#define ONE_DIRECTION	0
 
 /* Definitions of initialization and destructor function.  */
 #define DEFINE_INIT	1
diff --git a/iconvdata/ibm933.c b/iconvdata/ibm933.c
index 149902b42c..f46dfb51fe 100644
--- a/iconvdata/ibm933.c
+++ b/iconvdata/ibm933.c
@@ -31,6 +31,7 @@
 #define CHARSET_NAME	"IBM933//"
 #define FROM_LOOP	from_ibm933
 #define TO_LOOP		to_ibm933
+#define ONE_DIRECTION			0
 #define FROM_LOOP_MIN_NEEDED_FROM	1
 #define FROM_LOOP_MAX_NEEDED_FROM	2
 #define FROM_LOOP_MIN_NEEDED_TO		4
diff --git a/iconvdata/ibm935.c b/iconvdata/ibm935.c
index 9a7a862ef2..a8e4e6cfb9 100644
--- a/iconvdata/ibm935.c
+++ b/iconvdata/ibm935.c
@@ -31,6 +31,7 @@
 #define CHARSET_NAME	"IBM935//"
 #define FROM_LOOP	from_ibm935
 #define TO_LOOP		to_ibm935
+#define ONE_DIRECTION			0
 #define FROM_LOOP_MIN_NEEDED_FROM	1
 #define FROM_LOOP_MAX_NEEDED_FROM	2
 #define FROM_LOOP_MIN_NEEDED_TO		4
diff --git a/iconvdata/ibm937.c b/iconvdata/ibm937.c
index 5a4ab92131..239be613e9 100644
--- a/iconvdata/ibm937.c
+++ b/iconvdata/ibm937.c
@@ -31,6 +31,7 @@
 #define CHARSET_NAME	"IBM937//"
 #define FROM_LOOP	from_ibm937
 #define TO_LOOP		to_ibm937
+#define	ONE_DIRECTION			0
 #define FROM_LOOP_MIN_NEEDED_FROM	1
 #define FROM_LOOP_MAX_NEEDED_FROM	2
 #define FROM_LOOP_MIN_NEEDED_TO		4
diff --git a/iconvdata/ibm939.c b/iconvdata/ibm939.c
index b50792879c..5d0db3686b 100644
--- a/iconvdata/ibm939.c
+++ b/iconvdata/ibm939.c
@@ -31,6 +31,7 @@
 #define CHARSET_NAME	"IBM939//"
 #define FROM_LOOP	from_ibm939
 #define TO_LOOP		to_ibm939
+#define ONE_DIRECTION			0
 #define FROM_LOOP_MIN_NEEDED_FROM	1
 #define FROM_LOOP_MAX_NEEDED_FROM	2
 #define FROM_LOOP_MIN_NEEDED_TO		4
diff --git a/iconvdata/ibm943.c b/iconvdata/ibm943.c
index 0ca3327f29..be0c14f681 100644
--- a/iconvdata/ibm943.c
+++ b/iconvdata/ibm943.c
@@ -29,6 +29,7 @@
 #define CHARSET_NAME	"IBM943//"
 #define FROM_LOOP	from_ibm943
 #define TO_LOOP		to_ibm943
+#define ONE_DIRECTION	0
 
 /* Definitions of initialization and destructor function.  */
 #define DEFINE_INIT	1
diff --git a/iconvdata/iso-2022-cn-ext.c b/iconvdata/iso-2022-cn-ext.c
index 147f869158..e922246c62 100644
--- a/iconvdata/iso-2022-cn-ext.c
+++ b/iconvdata/iso-2022-cn-ext.c
@@ -47,6 +47,7 @@
 #define CHARSET_NAME		"ISO-2022-CN-EXT//"
 #define DEFINE_INIT		1
 #define DEFINE_FINI		1
+#define ONE_DIRECTION		0
 #define FROM_LOOP		from_iso2022cn_ext_loop
 #define TO_LOOP			to_iso2022cn_ext_loop
 #define FROM_LOOP_MIN_NEEDED_FROM	1
diff --git a/iconvdata/iso-2022-cn.c b/iconvdata/iso-2022-cn.c
index a282806809..5434ef48c9 100644
--- a/iconvdata/iso-2022-cn.c
+++ b/iconvdata/iso-2022-cn.c
@@ -44,6 +44,7 @@
 #define DEFINE_FINI		1
 #define FROM_LOOP		from_iso2022cn_loop
 #define TO_LOOP			to_iso2022cn_loop
+#define ONE_DIRECTION			0
 #define FROM_LOOP_MIN_NEEDED_FROM	1
 #define FROM_LOOP_MAX_NEEDED_FROM	4
 #define FROM_LOOP_MIN_NEEDED_TO		4
diff --git a/iconvdata/iso-2022-jp-3.c b/iconvdata/iso-2022-jp-3.c
index b676aa19a4..4b4ea0165f 100644
--- a/iconvdata/iso-2022-jp-3.c
+++ b/iconvdata/iso-2022-jp-3.c
@@ -37,6 +37,7 @@
 #define TO_LOOP			to_iso2022jp3_loop
 #define DEFINE_INIT		1
 #define DEFINE_FINI		1
+#define ONE_DIRECTION		0
 #define FROM_LOOP_MIN_NEEDED_FROM	1
 #define FROM_LOOP_MAX_NEEDED_FROM	4
 #define FROM_LOOP_MIN_NEEDED_TO		4
diff --git a/iconvdata/iso-2022-jp.c b/iconvdata/iso-2022-jp.c
index 3428c3211e..8381c30a3c 100644
--- a/iconvdata/iso-2022-jp.c
+++ b/iconvdata/iso-2022-jp.c
@@ -48,6 +48,7 @@ struct gap
 /* Definitions used in the body of the `gconv' function.  */
 #define FROM_LOOP		from_iso2022jp_loop
 #define TO_LOOP			to_iso2022jp_loop
+#define ONE_DIRECTION			0
 #define FROM_LOOP_MIN_NEEDED_FROM	1
 #define FROM_LOOP_MAX_NEEDED_FROM	4
 #define FROM_LOOP_MIN_NEEDED_TO		4
diff --git a/iconvdata/iso-2022-kr.c b/iconvdata/iso-2022-kr.c
index 14080c10c4..c1babc8e60 100644
--- a/iconvdata/iso-2022-kr.c
+++ b/iconvdata/iso-2022-kr.c
@@ -42,6 +42,7 @@
 #define MAX_NEEDED_FROM		4
 #define MIN_NEEDED_TO		4
 #define MAX_NEEDED_TO		4
+#define ONE_DIRECTION		0
 #define PREPARE_LOOP \
   int save_set;								      \
   int *setp = &data->__statep->__count;					      \
diff --git a/iconvdata/iso646.c b/iconvdata/iso646.c
index b450fcc962..5a0402e1fe 100644
--- a/iconvdata/iso646.c
+++ b/iconvdata/iso646.c
@@ -43,6 +43,8 @@
 #define DEFINE_FINI		0
 #define MIN_NEEDED_FROM		1
 #define MIN_NEEDED_TO		4
+#define ONE_DIRECTION		0
+
 #define FROM_DIRECTION		(dir == from_iso646)
 #define PREPARE_LOOP \
   enum direction dir = ((struct iso646_data *) step->__data)->dir;	      \
diff --git a/iconvdata/iso8859-1.c b/iconvdata/iso8859-1.c
index 6610cae415..a01a1d6925 100644
--- a/iconvdata/iso8859-1.c
+++ b/iconvdata/iso8859-1.c
@@ -28,6 +28,7 @@
 #define DEFINE_FINI		1
 #define MIN_NEEDED_FROM		1
 #define MIN_NEEDED_TO		4
+#define ONE_DIRECTION		0
 
 /* First define the conversion function from ISO 8859-1 to UCS4.  */
 #define MIN_NEEDED_INPUT	MIN_NEEDED_FROM
diff --git a/iconvdata/iso_11548-1.c b/iconvdata/iso_11548-1.c
index 37f55c0d42..69138279dc 100644
--- a/iconvdata/iso_11548-1.c
+++ b/iconvdata/iso_11548-1.c
@@ -29,6 +29,7 @@
 #define DEFINE_FINI		1
 #define MIN_NEEDED_FROM		1
 #define MIN_NEEDED_TO		4
+#define ONE_DIRECTION		0
 
 #define BRAILLE_UCS_BASE	0x2800
 
diff --git a/iconvdata/iso_6937-2.c b/iconvdata/iso_6937-2.c
index 03f08734e9..8aba77df10 100644
--- a/iconvdata/iso_6937-2.c
+++ b/iconvdata/iso_6937-2.c
@@ -380,6 +380,7 @@ static const char from_ucs4[][2] =
 #define MIN_NEEDED_FROM		1
 #define MAX_NEEDED_FROM		2
 #define MIN_NEEDED_TO		4
+#define ONE_DIRECTION		0
 
 
 /* First define the conversion function from ISO 6937-2 to UCS4.  */
diff --git a/iconvdata/iso_6937.c b/iconvdata/iso_6937.c
index 71a829a71b..f7bbcf076a 100644
--- a/iconvdata/iso_6937.c
+++ b/iconvdata/iso_6937.c
@@ -380,6 +380,7 @@ static const char from_ucs4[][2] =
 #define MIN_NEEDED_FROM		1
 #define MAX_NEEDED_FROM		2
 #define MIN_NEEDED_TO		4
+#define ONE_DIRECTION		0
 
 
 /* First define the conversion function from ISO 6937 to UCS4.  */
diff --git a/iconvdata/johab.c b/iconvdata/johab.c
index 07d6b6d9f8..5b5f0420bf 100644
--- a/iconvdata/johab.c
+++ b/iconvdata/johab.c
@@ -150,6 +150,7 @@ johab_sym_hanja_to_ucs (uint_fast32_t idx, uint_fast32_t c1, uint_fast32_t c2)
 #define MIN_NEEDED_FROM		1
 #define MAX_NEEDED_FROM		2
 #define MIN_NEEDED_TO		4
+#define ONE_DIRECTION		0
 
 
 /* First define the conversion function from JOHAB to UCS4.  */
diff --git a/iconvdata/shift_jisx0213.c b/iconvdata/shift_jisx0213.c
index a6c19acf3c..26d7eaef4e 100644
--- a/iconvdata/shift_jisx0213.c
+++ b/iconvdata/shift_jisx0213.c
@@ -43,6 +43,7 @@
 #define TO_LOOP			to_shift_jisx0213
 #define DEFINE_INIT		1
 #define DEFINE_FINI		1
+#define ONE_DIRECTION		0
 #define FROM_LOOP_MIN_NEEDED_FROM	1
 #define FROM_LOOP_MAX_NEEDED_FROM	2
 #define FROM_LOOP_MIN_NEEDED_TO		4
diff --git a/iconvdata/sjis.c b/iconvdata/sjis.c
index b0eacd112a..2590b33587 100644
--- a/iconvdata/sjis.c
+++ b/iconvdata/sjis.c
@@ -4320,6 +4320,7 @@ static const char from_ucs4_extra[0x100][2] =
 #define MIN_NEEDED_FROM		1
 #define MAX_NEEDED_FROM		2
 #define MIN_NEEDED_TO		4
+#define ONE_DIRECTION		0
 
 /* First define the conversion function from SJIS to UCS4.  */
 #define MIN_NEEDED_INPUT	MIN_NEEDED_FROM
diff --git a/iconvdata/t.61.c b/iconvdata/t.61.c
index e20ff863ff..e082b50c92 100644
--- a/iconvdata/t.61.c
+++ b/iconvdata/t.61.c
@@ -373,6 +373,7 @@ static const char from_ucs4[][2] =
 #define MIN_NEEDED_FROM		1
 #define MAX_NEEDED_FROM		2
 #define MIN_NEEDED_TO		4
+#define ONE_DIRECTION		0
 
 /* First define the conversion function from T.61 to UCS4.  */
 #define MIN_NEEDED_INPUT	MIN_NEEDED_FROM
diff --git a/iconvdata/tcvn5712-1.c b/iconvdata/tcvn5712-1.c
index 21e1d4540a..5edc653a99 100644
--- a/iconvdata/tcvn5712-1.c
+++ b/iconvdata/tcvn5712-1.c
@@ -29,6 +29,7 @@
 #define TO_LOOP			to_tcvn5712_1
 #define DEFINE_INIT		1
 #define DEFINE_FINI		1
+#define ONE_DIRECTION		0
 #define FROM_LOOP_MIN_NEEDED_FROM	1
 #define FROM_LOOP_MAX_NEEDED_FROM	1
 #define FROM_LOOP_MIN_NEEDED_TO		4
diff --git a/iconvdata/tscii.c b/iconvdata/tscii.c
index 8b98a0eaa2..644cb96972 100644
--- a/iconvdata/tscii.c
+++ b/iconvdata/tscii.c
@@ -38,6 +38,7 @@
 #define TO_LOOP			to_tscii
 #define DEFINE_INIT		1
 #define DEFINE_FINI		1
+#define ONE_DIRECTION		0
 #define FROM_LOOP_MIN_NEEDED_FROM	1
 #define FROM_LOOP_MAX_NEEDED_FROM	2
 #define FROM_LOOP_MIN_NEEDED_TO		4
diff --git a/iconvdata/uhc.c b/iconvdata/uhc.c
index 318c3492b3..629f2d627c 100644
--- a/iconvdata/uhc.c
+++ b/iconvdata/uhc.c
@@ -3044,6 +3044,7 @@ static const char uhc_hangul_from_ucs[11172][2] =
 #define MIN_NEEDED_FROM		1
 #define MAX_NEEDED_FROM		2
 #define MIN_NEEDED_TO		4
+#define ONE_DIRECTION		0
 
 /* First define the conversion function from UHC to UCS4.  */
 #define MIN_NEEDED_INPUT	MIN_NEEDED_FROM
diff --git a/iconvdata/unicode.c b/iconvdata/unicode.c
index ed74582bad..8f9db61c90 100644
--- a/iconvdata/unicode.c
+++ b/iconvdata/unicode.c
@@ -38,6 +38,7 @@
 #define DEFINE_FINI		0
 #define MIN_NEEDED_FROM		2
 #define MIN_NEEDED_TO		4
+#define ONE_DIRECTION		0
 #define FROM_DIRECTION		(dir == from_unicode)
 #define PREPARE_LOOP \
   enum direction dir = ((struct unicode_data *) step->__data)->dir;	      \
diff --git a/iconvdata/utf-16.c b/iconvdata/utf-16.c
index 48edfa35f3..31c2d6e8d9 100644
--- a/iconvdata/utf-16.c
+++ b/iconvdata/utf-16.c
@@ -39,6 +39,7 @@
 #define MIN_NEEDED_FROM		2
 #define MAX_NEEDED_FROM		4
 #define MIN_NEEDED_TO		4
+#define ONE_DIRECTION		0
 #define FROM_DIRECTION		(dir == from_utf16)
 #define PREPARE_LOOP \
   enum direction dir = ((struct utf16_data *) step->__data)->dir;	      \
diff --git a/iconvdata/utf-32.c b/iconvdata/utf-32.c
index 7705d47265..e3e4243e1f 100644
--- a/iconvdata/utf-32.c
+++ b/iconvdata/utf-32.c
@@ -37,6 +37,7 @@
 #define DEFINE_FINI		0
 #define MIN_NEEDED_FROM		4
 #define MIN_NEEDED_TO		4
+#define ONE_DIRECTION		0
 #define FROM_DIRECTION		(dir == from_utf32)
 #define PREPARE_LOOP \
   enum direction dir = ((struct utf32_data *) step->__data)->dir;	      \
diff --git a/iconvdata/utf-7.c b/iconvdata/utf-7.c
index 99c255e4cb..637d85c635 100644
--- a/iconvdata/utf-7.c
+++ b/iconvdata/utf-7.c
@@ -120,6 +120,7 @@ base64 (unsigned int i)
 #define MAX_NEEDED_FROM		6
 #define MIN_NEEDED_TO		4
 #define MAX_NEEDED_TO		4
+#define ONE_DIRECTION		0
 #define PREPARE_LOOP \
   mbstate_t saved_state;						      \
   mbstate_t *statep = data->__statep;