From 7792c43d12eb15e9afa2eb73b961d6ca00be59d4 Mon Sep 17 00:00:00 2001
From: Richard Kreckel <kreckel@ginac.de>
Date: Mon, 25 Oct 2004 23:19:19 +0000
Subject: [PATCH] 	* src/integer/input/cl_I_read_stream.cc
 (read_integer): Fix a bug 	that caused radix specifiers to not work when
 reading from a stream. 	* src/rational/input/cl_RA_read_stream.cc
 (read_rational): Likewise. 	* src/real/input/cl_R_read_stream.cc
 (read_real): Likewise. 	* src/float/input/cl_F_read_stream.cc
 (read_float): Likewise. 	* src/complex/input/cl_N_read_stream.cc
 (read_complex): Likewise.

---
 ChangeLog                               | 9 +++++++++
 src/complex/input/cl_N_read_stream.cc   | 1 -
 src/float/input/cl_F_read_stream.cc     | 1 -
 src/integer/input/cl_I_read_stream.cc   | 1 -
 src/rational/input/cl_RA_read_stream.cc | 1 -
 src/real/input/cl_R_read_stream.cc      | 1 -
 6 files changed, 9 insertions(+), 5 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 3ea6920..a472ea7 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2004-10-26  Richard B. Kreckel  <kreckel@ginac.de>
+
+	* src/integer/input/cl_I_read_stream.cc (read_integer): Fix a bug
+	that caused radix specifiers to not work when reading from a stream.
+	* src/rational/input/cl_RA_read_stream.cc (read_rational): Likewise.
+	* src/real/input/cl_R_read_stream.cc (read_real): Likewise.
+	* src/float/input/cl_F_read_stream.cc (read_float): Likewise.
+	* src/complex/input/cl_N_read_stream.cc (read_complex): Likewise.
+
 2004-10-25  Richard B. Kreckel  <kreckel@ginac.de>
 
 	* src/base/cl_low.h: Add mulu64 assembler macro for ia64.
diff --git a/src/complex/input/cl_N_read_stream.cc b/src/complex/input/cl_N_read_stream.cc
index 48df82e..7199476 100644
--- a/src/complex/input/cl_N_read_stream.cc
+++ b/src/complex/input/cl_N_read_stream.cc
@@ -72,7 +72,6 @@ const cl_N read_complex (std::istream& stream, const cl_read_flags& flags)
 		}
 		if (!(((c >= 'A') && (c <= 'Z')) || ((c >= 'a') && (c <= 'z'))))
 			goto syntax1;
-		buffer.push(c);
 		c = freadchar(stream);
 		if (c == cl_EOF) goto eof;
 		if (c == '(') {
diff --git a/src/float/input/cl_F_read_stream.cc b/src/float/input/cl_F_read_stream.cc
index a3e7461..b2daee6 100644
--- a/src/float/input/cl_F_read_stream.cc
+++ b/src/float/input/cl_F_read_stream.cc
@@ -74,7 +74,6 @@ const cl_F read_float (std::istream& stream, const cl_read_flags& flags)
 		}
 		if (!(((c >= 'A') && (c <= 'Z')) || ((c >= 'a') && (c <= 'z'))))
 			goto syntax1;
-		buffer.push(c);
 		c = freadchar(stream);
 		if (c == cl_EOF) goto eof;
 	}
diff --git a/src/integer/input/cl_I_read_stream.cc b/src/integer/input/cl_I_read_stream.cc
index 71fddb6..6f6a5c0 100644
--- a/src/integer/input/cl_I_read_stream.cc
+++ b/src/integer/input/cl_I_read_stream.cc
@@ -74,7 +74,6 @@ const cl_I read_integer (std::istream& stream, const cl_read_flags& flags)
 		}
 		if (!(((c >= 'A') && (c <= 'Z')) || ((c >= 'a') && (c <= 'z'))))
 			goto syntax1;
-		buffer.push(c);
 		c = freadchar(stream);
 		if (c == cl_EOF) goto eof;
 	}
diff --git a/src/rational/input/cl_RA_read_stream.cc b/src/rational/input/cl_RA_read_stream.cc
index 85dcfd8..a54f861 100644
--- a/src/rational/input/cl_RA_read_stream.cc
+++ b/src/rational/input/cl_RA_read_stream.cc
@@ -75,7 +75,6 @@ const cl_RA read_rational (std::istream& stream, const cl_read_flags& flags)
 		}
 		if (!(((c >= 'A') && (c <= 'Z')) || ((c >= 'a') && (c <= 'z'))))
 			goto syntax1;
-		buffer.push(c);
 		c = freadchar(stream);
 		if (c == cl_EOF) goto eof;
 	}
diff --git a/src/real/input/cl_R_read_stream.cc b/src/real/input/cl_R_read_stream.cc
index b694745..e75221d 100644
--- a/src/real/input/cl_R_read_stream.cc
+++ b/src/real/input/cl_R_read_stream.cc
@@ -74,7 +74,6 @@ const cl_R read_real (std::istream& stream, const cl_read_flags& flags)
 		}
 		if (!(((c >= 'A') && (c <= 'Z')) || ((c >= 'a') && (c <= 'z'))))
 			goto syntax1;
-		buffer.push(c);
 		c = freadchar(stream);
 		if (c == cl_EOF) goto eof;
 	}