]> www.ginac.de Git - cln.git/commitdiff
* */*: cl_istream -> std::istream, cl_ostream -> std::ostream. cln_1-1-0
authorRichard Kreckel <kreckel@ginac.de>
Thu, 14 Dec 2000 16:52:58 +0000 (16:52 +0000)
committerRichard Kreckel <kreckel@ginac.de>
Thu, 14 Dec 2000 16:52:58 +0000 (16:52 +0000)
99 files changed:
ChangeLog
INSTALL
NEWS
configure.in
doc/cln.tex
include/cln/GV_complex.h
include/cln/GV_integer.h
include/cln/GV_rational.h
include/cln/GV_real.h
include/cln/SV_complex.h
include/cln/SV_integer.h
include/cln/SV_rational.h
include/cln/SV_real.h
include/cln/SV_ringelt.h
include/cln/complex_io.h
include/cln/condition.h
include/cln/dfloat_io.h
include/cln/ffloat_io.h
include/cln/float_io.h
include/cln/integer_io.h
include/cln/io.h
include/cln/lfloat_io.h
include/cln/modinteger.h
include/cln/rational_io.h
include/cln/real_io.h
include/cln/ring.h
include/cln/sfloat_io.h
include/cln/string.h
include/cln/timing.h
include/cln/univpoly.h
include/cln/univpoly_complex.h
include/cln/univpoly_integer.h
include/cln/univpoly_modint.h
include/cln/univpoly_rational.h
include/cln/univpoly_real.h
include/cln/version.h.in [new file with mode: 0644]
src/base/cl_version.cc [new file with mode: 0644]
src/base/output/cl_output_dec.cc
src/base/output/cl_output_hex.cc
src/base/ring/cl_no_ring.cc
src/base/string/input/cl_st_get1.cc
src/base/string/input/cl_st_get2.cc
src/base/string/input/cl_st_getline1.cc
src/base/string/input/cl_st_getline2.cc
src/base/string/input/cl_st_gettoken.cc
src/base/string/output/cl_st_print.cc
src/complex/input/cl_N_read_stream.cc
src/complex/output/cl_N_aprint.cc
src/complex/output/cl_N_bprint.cc
src/complex/ring/cl_C_ring.cc
src/float/input/cl_F_read_stream.cc
src/float/output/cl_F_aprint.cc
src/float/output/cl_F_bprint.cc
src/float/output/cl_F_cprint.cc
src/float/output/cl_F_dprint.cc
src/float/output/cl_F_printb.cc
src/integer/input/cl_I_read_stream.cc
src/integer/output/cl_I_aprint.cc
src/integer/output/cl_I_bprint.cc
src/integer/output/cl_I_cprint.cc
src/integer/output/cl_I_dprint.cc
src/integer/output/cl_I_print.cc
src/integer/ring/cl_0_ring.cc
src/integer/ring/cl_I_ring.cc
src/modinteger/cl_MI_cond_composite.cc
src/modinteger/cl_MI_int.h
src/modinteger/cl_MI_std.h
src/polynomial/elem/cl_UP_MI.h
src/polynomial/elem/cl_UP_gen.h
src/polynomial/elem/cl_UP_no_ring.cc
src/polynomial/elem/cl_UP_number.h
src/rational/input/cl_RA_read_stream.cc
src/rational/output/cl_RA_aprint.cc
src/rational/output/cl_RA_bprint.cc
src/rational/output/cl_RA_cprint.cc
src/rational/output/cl_RA_dprint.cc
src/rational/output/cl_RA_print.cc
src/rational/ring/cl_RA_ring.cc
src/real/format-output/cl_fmt_cardinal.cc
src/real/format-output/cl_fmt_integer.cc
src/real/format-output/cl_fmt_newroman.cc
src/real/format-output/cl_fmt_oldroman.cc
src/real/format-output/cl_fmt_ordinal.cc
src/real/format-output/cl_fmt_paddedstring.cc
src/real/format-output/cl_format.h
src/real/input/cl_R_read_stream.cc
src/real/output/cl_R_aprint.cc
src/real/output/cl_R_bprint.cc
src/real/output/cl_R_cprint.cc
src/real/ring/cl_R_ring.cc
src/timing/cl_t_c2.cc
src/timing/cl_t_report.cc
src/vector/cl_GV_io.h
src/vector/cl_GV_number_debug.cc
src/vector/cl_SV_io.h
src/vector/cl_SV_number_debug.cc
src/vector/output/cl_GV_number_aprint.cc
src/vector/output/cl_SV_aprint.cc
src/vector/output/cl_SV_number_aprint.cc

index e8ed15da73e09c4b9bb1b5d254adbfecfe700015..35435f0358578f024987a4d738fd85e7eb2fc992 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2000-12-14  Richard Kreckel  <kreckel@ginac.de>
+
+        * Version 1.1 released.
+
+2000-12-13  Richard Kreckel  <kreckel@ginac.de>
+
+        * */*: cl_istream -> std::istream, cl_ostream -> std::ostream.
+
 2000-12-05  Richard Kreckel  <kreckel@ginac.de>
 
         * Makefile.in, src/Makefile.in, doc/Makefile.in: Use mkdir -p.
diff --git a/INSTALL b/INSTALL
index abd272cc30e34f9e01b4412f663ed25281875408..eaeb0d3c5385735cdf3523c40702e9176c82f21a 100644 (file)
--- a/INSTALL
+++ b/INSTALL
@@ -14,7 +14,7 @@ Known to work with:
   - Linux/x86, gcc-2.8.0, egcs-1.1, gcc-2.95.x
   - Solaris 2.4 (sparc), egcs-1.1, gcc-2.95
   - OSF/1 V4.0 (alpha), egcs-1.1, gcc-2.95
-  - Irix 5.3, CC 4
+  - Irix 6.5, gcc-2.95
 
 The "make" step takes about 1 hour, on a P-II / 400 MHz / 64 MB.
 
@@ -28,8 +28,5 @@ either "-O", "-O1" or "-O2 -fno-schedule-insns" to the CXXFLAGS. With full
 egcs-1.1.1 or older on Sparc, you must specify --disable-shared because g++
 would miscompile parts of the library.
 
-On MIPS (SGI Irix 6), pass option "--without-gmp" to configure. gmp does
-not work when compiled in "n32" binary format on Irix.
-
 More detailed installation instructions can be found in the documentation,
 in the doc/ directory.
diff --git a/NEWS b/NEWS
index 5dba580bd2b67365757e6b3cd01f8be066310128..2102127aae813fa7f665fabf378c302246564daf 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,4 +1,4 @@
-2000-11-xx, version 1.1.0
+2000-12-14, version 1.1.0
 =========================
 
 Functional changes
@@ -24,7 +24,7 @@ Implementation changes
   better match present-day CPUs.
 
 * Fix several errors for architectures with 64-bit wide words.
-  (Others than Alpha.)
+  (Others than Alpha, which worked already.)
 
 * Fix compilation errors with current GCC-3.0 snapshots.
 
index aad8faae55c04ed1323c56e34588d50fda6a9d42..836c30ca34776348db62a56c4bf7e63b73a2530c 100644 (file)
@@ -65,7 +65,6 @@ CL_CANONICAL_HOST_CPU
 dnl
 dnl           check for build configuration
 dnl
-LIBS=-lm
                       dnl libcln depends on libm
 PACKAGE=cln
                       dnl libtool wants PACKAGE
index c87f7455d0039bd53d00fc9322835a4b2bb1270e..bc6a7fe4c3e09fdc8ba1955b94ce0094497057fe 100644 (file)
@@ -12,6 +12,9 @@
 @end iftex
 @c %**end of header
 
+@direntry
+* CLN: (cln).                       Class Library for Numbers (C++).
+@end direntry
 
 @c My own index.
 @defindex my
@@ -2415,18 +2418,15 @@ In Common Lisp notation: @code{#C(@var{realpart} @var{imagpart})}.
 
 @section Input functions
 
-Including @code{<cln/io.h>} defines a type @code{cl_istream}, which is
-the type of the first argument to all input functions. @code{cl_istream}
-is the same as @code{std::istream&}.
-
-These are the simple input functions:
+Including @code{<cln/io.h>} defines a number of simple input functions
+that read from @code{std::istream&}:
 
 @table @code
-@item int freadchar (cl_istream stream)
+@item int freadchar (std::istream& stream)
 Reads a character from @code{stream}. Returns @code{cl_EOF} (not a @samp{char}!)
 if the end of stream was encountered or an error occurred.
 
-@item int funreadchar (cl_istream stream, int c)
+@item int funreadchar (std::istream& stream, int c)
 Puts back @code{c} onto @code{stream}. @code{c} must be the result of the
 last @code{freadchar} operation on @code{stream}.
 @end table
@@ -2436,7 +2436,7 @@ Each of the classes @code{cl_N}, @code{cl_R}, @code{cl_RA}, @code{cl_I},
 defines, in @code{<cln/@var{type}_io.h>}, the following input function:
 
 @table @code
-@item cl_istream operator>> (cl_istream stream, @var{type}& result)
+@item std::istream& operator>> (std::istream& stream, @var{type}& result)
 Reads a number from @code{stream} and stores it in the @code{result}.
 @end table
 
@@ -2444,11 +2444,11 @@ The most flexible input functions, defined in @code{<cln/@var{type}_io.h>},
 are the following:
 
 @table @code
-@item cl_N read_complex (cl_istream stream, const cl_read_flags& flags)
-@itemx cl_R read_real (cl_istream stream, const cl_read_flags& flags)
-@itemx cl_F read_float (cl_istream stream, const cl_read_flags& flags)
-@itemx cl_RA read_rational (cl_istream stream, const cl_read_flags& flags)
-@itemx cl_I read_integer (cl_istream stream, const cl_read_flags& flags)
+@item cl_N read_complex (std::istream& stream, const cl_read_flags& flags)
+@itemx cl_R read_real (std::istream& stream, const cl_read_flags& flags)
+@itemx cl_F read_float (std::istream& stream, const cl_read_flags& flags)
+@itemx cl_RA read_rational (std::istream& stream, const cl_read_flags& flags)
+@itemx cl_I read_integer (std::istream& stream, const cl_read_flags& flags)
 Reads a number from @code{stream}. The @code{flags} are parameters which
 affect the input syntax. Whitespace before the number is silently skipped.
 
@@ -2514,32 +2514,29 @@ precision corresponding to their number of significant digits.
 
 @section Output functions
 
-Including @code{<cln/io.h>} defines a type @code{cl_ostream}, which is
-the type of the first argument to all output functions. @code{cl_ostream}
-is the same as @code{std::ostream&}.
-
-These are the simple output functions:
+Including @code{<cln/io.h>} defines a number of simple output functions
+that write to @code{std::ostream&}:
 
 @table @code
-@item void fprintchar (cl_ostream stream, char c)
+@item void fprintchar (std::ostream& stream, char c)
 Prints the character @code{x} literally on the @code{stream}.
 
-@item void fprint (cl_ostream stream, const char * string)
+@item void fprint (std::ostream& stream, const char * string)
 Prints the @code{string} literally on the @code{stream}.
 
-@item void fprintdecimal (cl_ostream stream, int x)
-@itemx void fprintdecimal (cl_ostream stream, const cl_I& x)
+@item void fprintdecimal (std::ostream& stream, int x)
+@itemx void fprintdecimal (std::ostream& stream, const cl_I& x)
 Prints the integer @code{x} in decimal on the @code{stream}.
 
-@item void fprintbinary (cl_ostream stream, const cl_I& x)
+@item void fprintbinary (std::ostream& stream, const cl_I& x)
 Prints the integer @code{x} in binary (base 2, without prefix)
 on the @code{stream}.
 
-@item void fprintoctal (cl_ostream stream, const cl_I& x)
+@item void fprintoctal (std::ostream& stream, const cl_I& x)
 Prints the integer @code{x} in octal (base 8, without prefix)
 on the @code{stream}.
 
-@item void fprinthexadecimal (cl_ostream stream, const cl_I& x)
+@item void fprinthexadecimal (std::ostream& stream, const cl_I& x)
 Prints the integer @code{x} in hexadecimal (base 16, without prefix)
 on the @code{stream}.
 @end table
@@ -2549,8 +2546,8 @@ Each of the classes @code{cl_N}, @code{cl_R}, @code{cl_RA}, @code{cl_I},
 defines, in @code{<cln/@var{type}_io.h>}, the following output functions:
 
 @table @code
-@item void fprint (cl_ostream stream, const @var{type}& x)
-@itemx cl_ostream operator<< (cl_ostream stream, const @var{type}& x)
+@item void fprint (std::ostream& stream, const @var{type}& x)
+@itemx std::ostream& operator<< (std::ostream& stream, const @var{type}& x)
 Prints the number @code{x} on the @code{stream}. The output may depend
 on the global printer settings in the variable @code{default_print_flags}.
 The @code{ostream} flags and settings (flags, width and locale) are
@@ -2560,15 +2557,15 @@ ignored.
 The most flexible output function, defined in @code{<cln/@var{type}_io.h>},
 are the following:
 @example
-void print_complex  (cl_ostream stream, const cl_print_flags& flags,
+void print_complex  (std::ostream& stream, const cl_print_flags& flags,
                      const cl_N& z);
-void print_real     (cl_ostream stream, const cl_print_flags& flags,
+void print_real     (std::ostream& stream, const cl_print_flags& flags,
                      const cl_R& z);
-void print_float    (cl_ostream stream, const cl_print_flags& flags,
+void print_float    (std::ostream& stream, const cl_print_flags& flags,
                      const cl_F& z);
-void print_rational (cl_ostream stream, const cl_print_flags& flags,
+void print_rational (std::ostream& stream, const cl_print_flags& flags,
                      const cl_RA& z);
-void print_integer  (cl_ostream stream, const cl_print_flags& flags,
+void print_integer  (std::ostream& stream, const cl_print_flags& flags,
                      const cl_I& z);
 @end example
 Prints the number @code{x} on the @code{stream}. The @code{flags} are
@@ -2627,7 +2624,7 @@ These compare two rings for equality.
 Given a ring @code{R}, the following members can be used.
 
 @table @code
-@item void R->fprint (cl_ostream stream, const cl_ring_element& x)
+@item void R->fprint (std::ostream& stream, const cl_ring_element& x)
 @cindex @code{fprint ()}
 @itemx cl_boolean R->equal (const cl_ring_element& x, const cl_ring_element& y)
 @cindex @code{equal ()}
@@ -2849,9 +2846,9 @@ The following output functions are defined (see also the chapter on
 input/output).
 
 @table @code
-@item void fprint (cl_ostream stream, const cl_MI& x)
+@item void fprint (std::ostream& stream, const cl_MI& x)
 @cindex @code{fprint ()}
-@itemx cl_ostream operator<< (cl_ostream stream, const cl_MI& x)
+@itemx std::ostream& operator<< (std::ostream& stream, const cl_MI& x)
 @cindex @code{operator << ()}
 Prints the modular integer @code{x} on the @code{stream}. The output may depend
 on the global printer settings in the variable @code{default_print_flags}.
@@ -3171,9 +3168,9 @@ The following output functions are defined (see also the chapter on
 input/output).
 
 @table @code
-@item void fprint (cl_ostream stream, const cl_UP& x)
+@item void fprint (std::ostream& stream, const cl_UP& x)
 @cindex @code{fprint ()}
-@itemx cl_ostream operator<< (cl_ostream stream, const cl_UP& x)
+@itemx std::ostream& operator<< (std::ostream& stream, const cl_UP& x)
 @cindex @code{operator << ()}
 Prints the univariate polynomial @code{x} on the @code{stream}. The output may
 depend on the global printer settings in the variable
index 72a9797405066a9c403e833e309eb9d2cdc25697..60cd180341521580b4aaeb9dba05cfccd067b629 100644 (file)
@@ -40,14 +40,14 @@ inline const cl_GV_N copy (const cl_GV_N& vector)
 }
 
 // Output.
-inline void fprint (cl_ostream stream, const cl_GV_N& x)
+inline void fprint (std::ostream& stream, const cl_GV_N& x)
 {
        extern cl_print_flags default_print_flags;
-       extern void print_vector (cl_ostream stream, const cl_print_flags& flags, void (* fun) (cl_ostream, const cl_print_flags&, const cl_number&), const cl_GV_number& vector);
-       extern void print_complex (cl_ostream stream, const cl_print_flags& flags, const cl_N& z);
+       extern void print_vector (std::ostream& stream, const cl_print_flags& flags, void (* fun) (std::ostream&, const cl_print_flags&, const cl_number&), const cl_GV_number& vector);
+       extern void print_complex (std::ostream& stream, const cl_print_flags& flags, const cl_N& z);
        print_vector(stream, default_print_flags,
-                    (void (*) (cl_ostream, const cl_print_flags&, const cl_number&))
-                    (void (*) (cl_ostream, const cl_print_flags&, const cl_N&))
+                    (void (*) (std::ostream&, const cl_print_flags&, const cl_number&))
+                    (void (*) (std::ostream&, const cl_print_flags&, const cl_N&))
                     &print_complex,
                     x);
 }
index e2adf95f364554902b6a24e14d7db4d5b88ab1ba..502ec784d7f88ee1c04561c78fce9ef7a37ec0ae 100644 (file)
@@ -62,14 +62,14 @@ CL_REQUIRE(cl_GV_I)
 extern const cl_GV_I copy (const cl_GV_I&);
 
 // Output.
-inline void fprint (cl_ostream stream, const cl_GV_I& x)
+inline void fprint (std::ostream& stream, const cl_GV_I& x)
 {
        extern cl_print_flags default_print_flags;
-       extern void print_vector (cl_ostream stream, const cl_print_flags& flags, void (* fun) (cl_ostream, const cl_print_flags&, const cl_number&), const cl_GV_number& vector);
-       extern void print_integer (cl_ostream stream, const cl_print_flags& flags, const cl_I& z);
+       extern void print_vector (std::ostream& stream, const cl_print_flags& flags, void (* fun) (std::ostream&, const cl_print_flags&, const cl_number&), const cl_GV_number& vector);
+       extern void print_integer (std::ostream& stream, const cl_print_flags& flags, const cl_I& z);
        print_vector(stream, default_print_flags,
-                    (void (*) (cl_ostream, const cl_print_flags&, const cl_number&))
-                    (void (*) (cl_ostream, const cl_print_flags&, const cl_I&))
+                    (void (*) (std::ostream&, const cl_print_flags&, const cl_number&))
+                    (void (*) (std::ostream&, const cl_print_flags&, const cl_I&))
                     &print_integer,
                     x);
 }
index 2f7fd9c956b00d30aa26a35f19843376a65ab912..d585206dd0bd288328b5af8161664984a9a5b0a9 100644 (file)
@@ -40,14 +40,14 @@ inline const cl_GV_RA copy (const cl_GV_RA& vector)
 }
 
 // Output.
-inline void fprint (cl_ostream stream, const cl_GV_RA& x)
+inline void fprint (std::ostream& stream, const cl_GV_RA& x)
 {
        extern cl_print_flags default_print_flags;
-       extern void print_vector (cl_ostream stream, const cl_print_flags& flags, void (* fun) (cl_ostream, const cl_print_flags&, const cl_number&), const cl_GV_number& vector);
-       extern void print_rational (cl_ostream stream, const cl_print_flags& flags, const cl_RA& z);
+       extern void print_vector (std::ostream& stream, const cl_print_flags& flags, void (* fun) (std::ostream&, const cl_print_flags&, const cl_number&), const cl_GV_number& vector);
+       extern void print_rational (std::ostream& stream, const cl_print_flags& flags, const cl_RA& z);
        print_vector(stream, default_print_flags,
-                    (void (*) (cl_ostream, const cl_print_flags&, const cl_number&))
-                    (void (*) (cl_ostream, const cl_print_flags&, const cl_RA&))
+                    (void (*) (std::ostream&, const cl_print_flags&, const cl_number&))
+                    (void (*) (std::ostream&, const cl_print_flags&, const cl_RA&))
                     &print_rational,
                     x);
 }
index 711ff4d7daba4643b0f2da22b56798e08317a74f..510b73959c5ffedba33639aebd37e21bc2939dff 100644 (file)
@@ -40,14 +40,14 @@ inline const cl_GV_R copy (const cl_GV_R& vector)
 }
 
 // Output.
-inline void fprint (cl_ostream stream, const cl_GV_R& x)
+inline void fprint (std::ostream& stream, const cl_GV_R& x)
 {
        extern cl_print_flags default_print_flags;
-       extern void print_vector (cl_ostream stream, const cl_print_flags& flags, void (* fun) (cl_ostream, const cl_print_flags&, const cl_number&), const cl_GV_number& vector);
-       extern void print_real (cl_ostream stream, const cl_print_flags& flags, const cl_R& z);
+       extern void print_vector (std::ostream& stream, const cl_print_flags& flags, void (* fun) (std::ostream&, const cl_print_flags&, const cl_number&), const cl_GV_number& vector);
+       extern void print_real (std::ostream& stream, const cl_print_flags& flags, const cl_R& z);
        print_vector(stream, default_print_flags,
-                    (void (*) (cl_ostream, const cl_print_flags&, const cl_number&))
-                    (void (*) (cl_ostream, const cl_print_flags&, const cl_R&))
+                    (void (*) (std::ostream&, const cl_print_flags&, const cl_number&))
+                    (void (*) (std::ostream&, const cl_print_flags&, const cl_R&))
                     &print_real,
                     x);
 }
index ef0d03e09b0276d7893249bd9573dfe47e6f7df5..a7272eef741e0c96376ef07a42f930c1d5272ae9 100644 (file)
@@ -36,14 +36,14 @@ inline const cl_SV_N copy (const cl_SV_N& vector)
 }
 
 // Output.
-inline void fprint (cl_ostream stream, const cl_SV_N& x)
+inline void fprint (std::ostream& stream, const cl_SV_N& x)
 {
        extern cl_print_flags default_print_flags;
-       extern void print_vector (cl_ostream stream, const cl_print_flags& flags, void (* fun) (cl_ostream, const cl_print_flags&, const cl_number&), const cl_SV_number& vector);
-       extern void print_complex (cl_ostream stream, const cl_print_flags& flags, const cl_N& z);
+       extern void print_vector (std::ostream& stream, const cl_print_flags& flags, void (* fun) (std::ostream&, const cl_print_flags&, const cl_number&), const cl_SV_number& vector);
+       extern void print_complex (std::ostream& stream, const cl_print_flags& flags, const cl_N& z);
        print_vector(stream, default_print_flags,
-                    (void (*) (cl_ostream, const cl_print_flags&, const cl_number&))
-                    (void (*) (cl_ostream, const cl_print_flags&, const cl_N&))
+                    (void (*) (std::ostream&, const cl_print_flags&, const cl_number&))
+                    (void (*) (std::ostream&, const cl_print_flags&, const cl_N&))
                     &print_complex,
                     x);
 }
index 3a1892b443f951f735166ddbef28bd3a75509501..4bf03d8e8a5642a89e48790f13281ac1b3a37339 100644 (file)
@@ -33,14 +33,14 @@ inline const cl_SV_I copy (const cl_SV_I& vector)
 }
 
 // Output.
-inline void fprint (cl_ostream stream, const cl_SV_I& x)
+inline void fprint (std::ostream& stream, const cl_SV_I& x)
 {
        extern cl_print_flags default_print_flags;
-       extern void print_vector (cl_ostream stream, const cl_print_flags& flags, void (* fun) (cl_ostream, const cl_print_flags&, const cl_number&), const cl_SV_number& vector);
-       extern void print_integer (cl_ostream stream, const cl_print_flags& flags, const cl_I& z);
+       extern void print_vector (std::ostream& stream, const cl_print_flags& flags, void (* fun) (std::ostream&, const cl_print_flags&, const cl_number&), const cl_SV_number& vector);
+       extern void print_integer (std::ostream& stream, const cl_print_flags& flags, const cl_I& z);
        print_vector(stream, default_print_flags,
-                    (void (*) (cl_ostream, const cl_print_flags&, const cl_number&))
-                    (void (*) (cl_ostream, const cl_print_flags&, const cl_I&))
+                    (void (*) (std::ostream&, const cl_print_flags&, const cl_number&))
+                    (void (*) (std::ostream&, const cl_print_flags&, const cl_I&))
                     &print_integer,
                     x);
 }
index 860a414846a8f4ecca387320b570a81ec96e84aa..8774dee3369ff9d55c9f04bacc00ce6116fbbc6c 100644 (file)
@@ -36,14 +36,14 @@ inline const cl_SV_RA copy (const cl_SV_RA& vector)
 }
 
 // Output.
-inline void fprint (cl_ostream stream, const cl_SV_RA& x)
+inline void fprint (std::ostream& stream, const cl_SV_RA& x)
 {
        extern cl_print_flags default_print_flags;
-       extern void print_vector (cl_ostream stream, const cl_print_flags& flags, void (* fun) (cl_ostream, const cl_print_flags&, const cl_number&), const cl_SV_number& vector);
-       extern void print_rational (cl_ostream stream, const cl_print_flags& flags, const cl_RA& z);
+       extern void print_vector (std::ostream& stream, const cl_print_flags& flags, void (* fun) (std::ostream&, const cl_print_flags&, const cl_number&), const cl_SV_number& vector);
+       extern void print_rational (std::ostream& stream, const cl_print_flags& flags, const cl_RA& z);
        print_vector(stream, default_print_flags,
-                    (void (*) (cl_ostream, const cl_print_flags&, const cl_number&))
-                    (void (*) (cl_ostream, const cl_print_flags&, const cl_RA&))
+                    (void (*) (std::ostream&, const cl_print_flags&, const cl_number&))
+                    (void (*) (std::ostream&, const cl_print_flags&, const cl_RA&))
                     &print_rational,
                     x);
 }
index a7d92368e7ffa1a4e2e80cf7ec87f2babffbf0af..7a01f5f212378dba6189582d85053b2130ca52a0 100644 (file)
@@ -36,14 +36,14 @@ inline const cl_SV_R copy (const cl_SV_R& vector)
 }
 
 // Output.
-inline void fprint (cl_ostream stream, const cl_SV_R& x)
+inline void fprint (std::ostream& stream, const cl_SV_R& x)
 {
        extern cl_print_flags default_print_flags;
-       extern void print_vector (cl_ostream stream, const cl_print_flags& flags, void (* fun) (cl_ostream, const cl_print_flags&, const cl_number&), const cl_SV_number& vector);
-       extern void print_real (cl_ostream stream, const cl_print_flags& flags, const cl_R& z);
+       extern void print_vector (std::ostream& stream, const cl_print_flags& flags, void (* fun) (std::ostream&, const cl_print_flags&, const cl_number&), const cl_SV_number& vector);
+       extern void print_real (std::ostream& stream, const cl_print_flags& flags, const cl_R& z);
        print_vector(stream, default_print_flags,
-                    (void (*) (cl_ostream, const cl_print_flags&, const cl_number&))
-                    (void (*) (cl_ostream, const cl_print_flags&, const cl_R&))
+                    (void (*) (std::ostream&, const cl_print_flags&, const cl_number&))
+                    (void (*) (std::ostream&, const cl_print_flags&, const cl_R&))
                     &print_real,
                     x);
 }
index 36945c83f5cbe92a040f6a9fb2adbe71a2bbe5ae..9d3a5015153b98973cdb43f1bf7288e35ba301a1 100644 (file)
@@ -51,7 +51,7 @@ inline const cl_SV_ringelt copy (const cl_SV_ringelt& vector)
 { return The(cl_SV_ringelt) (copy((const cl_SV_any&) vector)); }
 
 // Output.
-extern void fprint (cl_ostream stream, const cl_ring& R, const cl_SV_ringelt& x);
+extern void fprint (std::ostream& stream, const cl_ring& R, const cl_SV_ringelt& x);
 
 // Debugging support.
 #ifdef CL_DEBUG
index 14e840f8d4fe02271f74b8c1a956d3a6151e17e2..1d6a9b97ff1e1d30a226e8b04a43485f07798abf 100644 (file)
@@ -11,11 +11,11 @@ namespace cln {
 // Undocumented input functions
 
 extern const cl_N read_complex (const cl_read_flags& flags, const char * string, const char * string_limit, const char * * end_of_parse);
-extern const cl_N read_complex (cl_istream stream, const cl_read_flags& flags);
+extern const cl_N read_complex (std::istream& stream, const cl_read_flags& flags);
 
 // Documented input functions
 
-inline cl_istream operator>> (cl_istream stream, cl_N& result)
+inline std::istream& operator>> (std::istream& stream, cl_N& result)
 {
        extern cl_read_flags cl_N_read_flags;
        result = read_complex(stream,cl_N_read_flags);
@@ -32,10 +32,10 @@ inline cl_istream operator>> (cl_istream stream, cl_N& result)
 // print_complex(stream,z);
 // > z: komplexe Zahl
 // > stream: Stream
-extern void print_complex (cl_ostream stream, const cl_print_flags& flags, const cl_N& z);
-extern void print_complex (cl_ostream stream, const cl_print_number_flags& flags, const cl_N& z);
+extern void print_complex (std::ostream& stream, const cl_print_flags& flags, const cl_N& z);
+extern void print_complex (std::ostream& stream, const cl_print_number_flags& flags, const cl_N& z);
 
-inline void fprint (cl_ostream stream, const cl_N& x)
+inline void fprint (std::ostream& stream, const cl_N& x)
 {
        extern cl_print_flags default_print_flags;
        print_complex(stream,default_print_flags,x);
index dc961f33d2e09ec4cd1e05ac19f683466f3ffe88..80a6975f4911c24cafad6eeb4ce2d53dd9b395c6 100644 (file)
@@ -16,7 +16,7 @@ struct cl_condition {
        // Name.
        virtual const char * name () const = 0;
        // Print.
-       virtual void print (cl_ostream) const = 0;
+       virtual void print (std::ostream&) const = 0;
        // Virtual destructor.
        virtual ~cl_condition () = 0;
 private:
index 78204a27afd43596c315f1f189051a969b8df238..476df4e0086b02adaa6c337924c4daf86ae771c0 100644 (file)
@@ -8,19 +8,19 @@
 
 namespace cln {
 
-inline cl_istream operator>> (cl_istream stream, cl_DF& result)
+inline std::istream& operator>> (std::istream& stream, cl_DF& result)
 {
        extern cl_read_flags cl_DF_read_flags;
-       extern const cl_F read_float (cl_istream, const cl_read_flags&);
+       extern const cl_F read_float (std::istream&, const cl_read_flags&);
        result = As(cl_DF)(read_float(stream,cl_DF_read_flags));
        return stream;
 }
 
 // The following does strictly the same as the general `fprint' for floats.
 // It is here only so that people don't need to include <cln/float_io.h>.
-inline void fprint (cl_ostream stream, const cl_DF& x)
+inline void fprint (std::ostream& stream, const cl_DF& x)
 {
-       extern void print_float (cl_ostream stream, const cl_print_flags& flags, const cl_F& z);
+       extern void print_float (std::ostream& stream, const cl_print_flags& flags, const cl_F& z);
        extern cl_print_flags default_print_flags;
        print_float(stream,default_print_flags,x);
 }
index 57313464931387e221f2296f8d3192472cd82512..aa70ad7bbfb7a0fb9dc0f488603f5d2a2eba2925 100644 (file)
@@ -8,19 +8,19 @@
 
 namespace cln {
 
-inline cl_istream operator>> (cl_istream stream, cl_FF& result)
+inline std::istream& operator>> (std::istream& stream, cl_FF& result)
 {
        extern cl_read_flags cl_FF_read_flags;
-       extern const cl_F read_float (cl_istream, const cl_read_flags&);
+       extern const cl_F read_float (std::istream&, const cl_read_flags&);
        result = As(cl_FF)(read_float(stream,cl_FF_read_flags));
        return stream;
 }
 
 // The following does strictly the same as the general `fprint' for floats.
 // It is here only so that people don't need to include <cln/float_io.h>.
-inline void fprint (cl_ostream stream, const cl_FF& x)
+inline void fprint (std::ostream& stream, const cl_FF& x)
 {
-       extern void print_float (cl_ostream stream, const cl_print_flags& flags, const cl_F& z);
+       extern void print_float (std::ostream& stream, const cl_print_flags& flags, const cl_F& z);
        extern cl_print_flags default_print_flags;
        print_float(stream,default_print_flags,x);
 }
index f08ea49f721fbf2309fa710cca82c447b10d1f5d..66423ac7301be7852ade11baf53be9650b80a24b 100644 (file)
@@ -32,11 +32,11 @@ extern const cl_F read_float (unsigned int base, float_format_t prec,
 // It is here only so that you don't need the complex and rational number
 // readers in order to read a float number. ("Treeshaking")
 extern const cl_F read_float (const cl_read_flags& flags, const char * string, const char * string_limit, const char * * end_of_parse);
-extern const cl_F read_float (cl_istream stream, const cl_read_flags& flags);
+extern const cl_F read_float (std::istream& stream, const cl_read_flags& flags);
 
 // Documented input functions
 
-inline cl_istream operator>> (cl_istream stream, cl_F& result)
+inline std::istream& operator>> (std::istream& stream, cl_F& result)
 {
        extern cl_read_flags cl_F_read_flags;
        result = read_float(stream,cl_F_read_flags);
@@ -53,22 +53,22 @@ inline cl_istream operator>> (cl_istream stream, cl_F& result)
 // print_float(stream,z);
 // > z: Float
 // > stream: Stream
-extern void print_float (cl_ostream stream, const cl_print_flags& flags, const cl_F& z);
-extern void print_float (cl_ostream stream, const cl_print_number_flags& flags, const cl_F& z);
-extern void print_float (cl_ostream stream, const cl_print_real_flags& flags, const cl_F& z);
-extern void print_float (cl_ostream stream, const cl_print_float_flags& flags, const cl_F& z);
+extern void print_float (std::ostream& stream, const cl_print_flags& flags, const cl_F& z);
+extern void print_float (std::ostream& stream, const cl_print_number_flags& flags, const cl_F& z);
+extern void print_float (std::ostream& stream, const cl_print_real_flags& flags, const cl_F& z);
+extern void print_float (std::ostream& stream, const cl_print_float_flags& flags, const cl_F& z);
 
 // Gibt ein Float binär (sehr primitiv) aus.
 // print_float_binary(stream,z);
 // > z: Float
 // > stream: Stream
-extern void print_float_binary (cl_ostream stream, const cl_F& z);
+extern void print_float_binary (std::ostream& stream, const cl_F& z);
 
 // The following does strictly the same as the general `fprint' for numbers.
 // It is here only so that you don't need the complex printer
 // in order to print a float. ("Treeshaking")
 
-inline void fprint (cl_ostream stream, const cl_F& x)
+inline void fprint (std::ostream& stream, const cl_F& x)
 {
        extern cl_print_flags default_print_flags;
        print_float(stream,default_print_flags,x);
index 783c7cf57df4766a6d44e0e62e8cd07654b0fbc5..dc1a59986c3360a0aa539a4de0847ee48600a33d 100644 (file)
@@ -27,11 +27,11 @@ extern const cl_I read_integer (unsigned int base,
 // It is here only so that you don't need the rational, complex and float number
 // readers in order to read an integer. ("Treeshaking")
 extern const cl_I read_integer (const cl_read_flags& flags, const char * string, const char * string_limit, const char * * end_of_parse);
-extern const cl_I read_integer (cl_istream stream, const cl_read_flags& flags);
+extern const cl_I read_integer (std::istream& stream, const cl_read_flags& flags);
 
 // Documented input functions
 
-inline cl_istream operator>> (cl_istream stream, cl_I& result)
+inline std::istream& operator>> (std::istream& stream, cl_I& result)
 {
        extern cl_read_flags cl_I_read_flags;
        result = read_integer(stream,cl_I_read_flags);
@@ -51,29 +51,29 @@ extern char * cl_decimal_string (const cl_I& x);
 // > z: Integer
 // > base: Basis (>=2, <=36)
 // > stream: Stream
-extern void print_integer (cl_ostream stream, unsigned int base, const cl_I& z);
+extern void print_integer (std::ostream& stream, unsigned int base, const cl_I& z);
 // Dasselbe als String. Mit malloc_hook() alloziert, mit free_hook() freizugeben.
 extern char * print_integer_to_string (unsigned int base, const cl_I& z);
 
 
 // Documented output functions
 
-inline void fprintdecimal (cl_ostream stream, const cl_I& x)
+inline void fprintdecimal (std::ostream& stream, const cl_I& x)
 {
        print_integer(stream,10,x);
 }
 
-inline void fprintbinary (cl_ostream stream, const cl_I& x)
+inline void fprintbinary (std::ostream& stream, const cl_I& x)
 {
        print_integer(stream,2,x);
 }
 
-inline void fprintoctal (cl_ostream stream, const cl_I& x)
+inline void fprintoctal (std::ostream& stream, const cl_I& x)
 {
        print_integer(stream,8,x);
 }
 
-inline void fprinthexadecimal (cl_ostream stream, const cl_I& x)
+inline void fprinthexadecimal (std::ostream& stream, const cl_I& x)
 {
        print_integer(stream,16,x);
 }
@@ -83,16 +83,16 @@ inline void fprinthexadecimal (cl_ostream stream, const cl_I& x)
 // > z: Zahl
 // > stream: Stream
 // > flags: Ausgabe-Parameter
-extern void print_integer (cl_ostream stream, const cl_print_flags& flags, const cl_I& z);
-extern void print_integer (cl_ostream stream, const cl_print_number_flags& flags, const cl_I& z);
-extern void print_integer (cl_ostream stream, const cl_print_real_flags& flags, const cl_I& z);
-extern void print_integer (cl_ostream stream, const cl_print_rational_flags& flags, const cl_I& z);
+extern void print_integer (std::ostream& stream, const cl_print_flags& flags, const cl_I& z);
+extern void print_integer (std::ostream& stream, const cl_print_number_flags& flags, const cl_I& z);
+extern void print_integer (std::ostream& stream, const cl_print_real_flags& flags, const cl_I& z);
+extern void print_integer (std::ostream& stream, const cl_print_rational_flags& flags, const cl_I& z);
 
 // The following does strictly the same as the general `fprint' for numbers.
 // It is here only so that you don't need the rational number printer
 // in order to print an integer. ("Treeshaking")
 
-inline void fprint (cl_ostream stream, const cl_I& x)
+inline void fprint (std::ostream& stream, const cl_I& x)
 {
        extern cl_print_flags default_print_flags;
        print_integer(stream,default_print_flags,x);
index 246e5fd6f9162b44b64f8c5230780e572e09c848..cc8ca1e51dab0a10f44bd9b3b5c59f3bdae55da7 100644 (file)
 
 namespace cln {
 
+// compatibility:
 typedef std::istream& cl_istream;
 typedef std::ostream& cl_ostream;
 extern std::ostream* cl_debugout_stream;
 #define cl_debugout  (*cl_debugout_stream)
 
-// Elementary operations on cl_istream
+// Elementary operations on std::istream&
 
 #define cl_EOF  (-1)
 
-inline int freadchar (cl_istream stream)
+inline int freadchar (std::istream& stream)
 {
        char c;
        if (stream.get(c))
@@ -37,46 +38,46 @@ inline int freadchar (cl_istream stream)
                return cl_EOF;
 }
 
-inline int funreadchar (cl_istream stream, int c)
+inline int funreadchar (std::istream& stream, int c)
 {
        if (c != cl_EOF)
                stream.putback((char)c);
        return c;
 }
 
-// Elementary operations on cl_ostream
+// Elementary operations on std::ostream&
 
-inline void fprintchar (cl_ostream stream, char c)
+inline void fprintchar (std::ostream& stream, char c)
 {
        stream.put(c);
 }
 
-inline void fprint (cl_ostream stream, const char * string)
+inline void fprint (std::ostream& stream, const char * string)
 {
        stream << string;
 }
 
 
-extern void fprintdecimal (cl_ostream stream, unsigned long x);
-extern void fprintdecimal (cl_ostream stream, long x);
+extern void fprintdecimal (std::ostream& stream, unsigned long x);
+extern void fprintdecimal (std::ostream& stream, long x);
 
-inline void fprintdecimal (cl_ostream stream, unsigned int x)
+inline void fprintdecimal (std::ostream& stream, unsigned int x)
 {
        fprintdecimal(stream,(unsigned long)x);
 }
-inline void fprintdecimal (cl_ostream stream, int x)
+inline void fprintdecimal (std::ostream& stream, int x)
 {
        fprintdecimal(stream,(long)x);
 }
 
-extern void fprinthexadecimal (cl_ostream stream, unsigned long x);
-extern void fprinthexadecimal (cl_ostream stream, long x);
+extern void fprinthexadecimal (std::ostream& stream, unsigned long x);
+extern void fprinthexadecimal (std::ostream& stream, long x);
 
-inline void fprinthexadecimal (cl_ostream stream, unsigned int x)
+inline void fprinthexadecimal (std::ostream& stream, unsigned int x)
 {
        fprinthexadecimal(stream,(unsigned long)x);
 }
-inline void fprinthexadecimal (cl_ostream stream, int x)
+inline void fprinthexadecimal (std::ostream& stream, int x)
 {
        fprinthexadecimal(stream,(long)x);
 }
@@ -93,7 +94,7 @@ CL_REQUIRE(cl_prin_globals)
 // Define the customary << and >> operators.
 
 #define CL_DEFINE_PRINT_OPERATOR(_class_)  \
-inline cl_ostream operator<< (cl_ostream stream, const _class_& x)     \
+inline std::ostream& operator<< (std::ostream& stream, const _class_& x)       \
 {                                                                      \
        fprint(stream,x);                                               \
        return stream;                                                  \
index 04e8b5538f6c8e79603a91323684f05dd7bb4fd4..eb003131f7c635f7b520c31210ace33defd6f286 100644 (file)
@@ -8,19 +8,19 @@
 
 namespace cln {
 
-inline cl_istream operator>> (cl_istream stream, cl_LF& result)
+inline std::istream& operator>> (std::istream& stream, cl_LF& result)
 {
        extern cl_read_flags cl_LF_read_flags;
-       extern const cl_F read_float (cl_istream, const cl_read_flags&);
+       extern const cl_F read_float (std::istream&, const cl_read_flags&);
        result = As(cl_LF)(read_float(stream,cl_LF_read_flags));
        return stream;
 }
 
 // The following does strictly the same as the general `fprint' for floats.
 // It is here only so that people don't need to include <cln/float_io.h>.
-inline void fprint (cl_ostream stream, const cl_LF& x)
+inline void fprint (std::ostream& stream, const cl_LF& x)
 {
-       extern void print_float (cl_ostream stream, const cl_print_flags& flags, const cl_F& z);
+       extern void print_float (std::ostream& stream, const cl_print_flags& flags, const cl_F& z);
        extern cl_print_flags default_print_flags;
        print_float(stream,default_print_flags,x);
 }
index 4624be7ac5b74045231309db67ebceb592591ab0..c1823ab40383f5f07ae372d946abe769641b1910 100644 (file)
@@ -81,7 +81,7 @@ struct cl_composite_condition : public cl_condition {
                { print(std::cerr); }
        // Implement general condition methods.
        const char * name () const;
-       void print (cl_ostream) const;
+       void print (std::ostream&) const;
        ~cl_composite_condition () {}
 };
 
@@ -151,7 +151,7 @@ public:
 
 struct _cl_modint_setops /* cf. _cl_ring_setops */ {
        // print
-       void (* fprint) (cl_heap_modint_ring* R, cl_ostream stream, const _cl_MI& x);
+       void (* fprint) (cl_heap_modint_ring* R, std::ostream& stream, const _cl_MI& x);
        // equality
        cl_boolean (* equal) (cl_heap_modint_ring* R, const _cl_MI& x, const _cl_MI& y);
        // random number
@@ -214,7 +214,7 @@ public:
        cl_I modulus;   // m, normalized to be >= 0
 public:
        // Low-level operations.
-       void _fprint (cl_ostream stream, const _cl_MI& x)
+       void _fprint (std::ostream& stream, const _cl_MI& x)
                { setops->fprint(this,stream,x); }
        cl_boolean _equal (const _cl_MI& x, const _cl_MI& y)
                { return setops->equal(this,x,y); }
@@ -251,7 +251,7 @@ public:
        const cl_I _retract (const _cl_MI& x)
                { return mulops->retract(this,x); }
        // High-level operations.
-       void fprint (cl_ostream stream, const cl_MI& x)
+       void fprint (std::ostream& stream, const cl_MI& x)
        {
                if (!(x.ring() == this)) cl_abort();
                _fprint(stream,x);
@@ -370,7 +370,7 @@ extern cl_class cl_class_modint_ring;
 // Operations on modular integers.
 
 // Output.
-inline void fprint (cl_ostream stream, const cl_MI& x)
+inline void fprint (std::ostream& stream, const cl_MI& x)
        { x.ring()->fprint(stream,x); }
 CL_DEFINE_PRINT_OPERATOR(cl_MI)
 
index f96ebc223e7cf7b167d363bf40481fc468fd060b..b34a038a968c1502deb2017fdc25006d424b33f8 100644 (file)
@@ -27,11 +27,11 @@ extern const cl_RA read_rational (unsigned int base,
 // It is here only so that you don't need the complex and float number
 // readers in order to read an rational number. ("Treeshaking")
 extern const cl_RA read_rational (const cl_read_flags& flags, const char * string, const char * string_limit, const char * * end_of_parse);
-extern const cl_RA read_rational (cl_istream stream, const cl_read_flags& flags);
+extern const cl_RA read_rational (std::istream& stream, const cl_read_flags& flags);
 
 // Documented input functions
 
-inline cl_istream operator>> (cl_istream stream, cl_RA& result)
+inline std::istream& operator>> (std::istream& stream, cl_RA& result)
 {
        extern cl_read_flags cl_RA_read_flags;
        result = read_rational(stream,cl_RA_read_flags);
@@ -46,7 +46,7 @@ inline cl_istream operator>> (cl_istream stream, cl_RA& result)
 // > z: rationale Zahl
 // > base: Basis (>=2, <=36)
 // > stream: Stream
-extern void print_rational (cl_ostream stream, unsigned int base, const cl_RA& z);
+extern void print_rational (std::ostream& stream, unsigned int base, const cl_RA& z);
 
 
 // Documented output functions
@@ -56,16 +56,16 @@ extern void print_rational (cl_ostream stream, unsigned int base, const cl_RA& z
 // > z: Zahl
 // > stream: Stream
 // > flags: Ausgabe-Parameter
-extern void print_rational (cl_ostream stream, const cl_print_flags& flags, const cl_RA& z);
-extern void print_rational (cl_ostream stream, const cl_print_number_flags& flags, const cl_RA& z);
-extern void print_rational (cl_ostream stream, const cl_print_real_flags& flags, const cl_RA& z);
-extern void print_rational (cl_ostream stream, const cl_print_rational_flags& flags, const cl_RA& z);
+extern void print_rational (std::ostream& stream, const cl_print_flags& flags, const cl_RA& z);
+extern void print_rational (std::ostream& stream, const cl_print_number_flags& flags, const cl_RA& z);
+extern void print_rational (std::ostream& stream, const cl_print_real_flags& flags, const cl_RA& z);
+extern void print_rational (std::ostream& stream, const cl_print_rational_flags& flags, const cl_RA& z);
 
 // The following does strictly the same as the general `fprint' for numbers.
 // It is here only so that you don't need the complex and long-float number
 // printers in order to print an integer. ("Treeshaking")
 
-inline void fprint (cl_ostream stream, const cl_RA& x)
+inline void fprint (std::ostream& stream, const cl_RA& x)
 {
        extern cl_print_flags default_print_flags;
        print_rational(stream,default_print_flags,x);
index 4af765c5cbace1f9174efec84ca72fa4c5e17e93..ce1e544bc371a215742b675e2f49f490f6988253 100644 (file)
@@ -14,11 +14,11 @@ namespace cln {
 // It is here only so that you don't need the complex number reader
 // in order to read an rational number. ("Treeshaking")
 extern const cl_R read_real (const cl_read_flags& flags, const char * string, const char * string_limit, const char * * end_of_parse);
-extern const cl_R read_real (cl_istream stream, const cl_read_flags& flags);
+extern const cl_R read_real (std::istream& stream, const cl_read_flags& flags);
 
 // Documented input functions
 
-inline cl_istream operator>> (cl_istream stream, cl_R& result)
+inline std::istream& operator>> (std::istream& stream, cl_R& result)
 {
        extern cl_read_flags cl_R_read_flags;
        result = read_real(stream,cl_R_read_flags);
@@ -36,15 +36,15 @@ inline cl_istream operator>> (cl_istream stream, cl_R& result)
 // > z: Zahl
 // > stream: Stream
 // > flags: Ausgabe-Parameter
-extern void print_real (cl_ostream stream, const cl_print_flags& flags, const cl_R& z);
-extern void print_real (cl_ostream stream, const cl_print_number_flags& flags, const cl_R& z);
-extern void print_real (cl_ostream stream, const cl_print_real_flags& flags, const cl_R& z);
+extern void print_real (std::ostream& stream, const cl_print_flags& flags, const cl_R& z);
+extern void print_real (std::ostream& stream, const cl_print_number_flags& flags, const cl_R& z);
+extern void print_real (std::ostream& stream, const cl_print_real_flags& flags, const cl_R& z);
 
 // The following does strictly the same as the general `fprint' for numbers.
 // It is here only so that you don't need the complex number printer
 // in order to print an integer. ("Treeshaking")
 
-inline void fprint (cl_ostream stream, const cl_R& x)
+inline void fprint (std::ostream& stream, const cl_R& x)
 {
        extern cl_print_flags default_print_flags;
        print_real(stream,default_print_flags,x);
index b815f699d2fd8ae00e9f9306bad0be96fa29e695..69c621cb602a1091545518e42c9aca221d75e960 100644 (file)
@@ -155,7 +155,7 @@ public:     // Debugging output.
 
 struct _cl_ring_setops {
        // print
-       void (* fprint) (cl_heap_ring* R, cl_ostream stream, const _cl_ring_element& x);
+       void (* fprint) (cl_heap_ring* R, std::ostream& stream, const _cl_ring_element& x);
        // equality
        cl_boolean (* equal) (cl_heap_ring* R, const _cl_ring_element& x, const _cl_ring_element& y);
        // ...
@@ -208,7 +208,7 @@ public:
        // ...
 public:
        // Low-level operations.
-       void _fprint (cl_ostream stream, const _cl_ring_element& x)
+       void _fprint (std::ostream& stream, const _cl_ring_element& x)
                { setops->fprint(this,stream,x); }
        cl_boolean _equal (const _cl_ring_element& x, const _cl_ring_element& y)
                { return setops->equal(this,x,y); }
@@ -233,7 +233,7 @@ public:
        const _cl_ring_element _expt_pos (const _cl_ring_element& x, const cl_I& y)
                { return mulops->expt_pos(this,x,y); }
        // High-level operations.
-       void fprint (cl_ostream stream, const cl_ring_element& x)
+       void fprint (std::ostream& stream, const cl_ring_element& x)
        {
                if (!(x.ring() == this)) cl_abort();
                _fprint(stream,x);
@@ -314,7 +314,7 @@ public:                                                                       \
 // Operations on ring elements.
 
 // Output.
-inline void fprint (cl_ostream stream, const cl_ring_element& x)
+inline void fprint (std::ostream& stream, const cl_ring_element& x)
        { x.ring()->fprint(stream,x); }
 CL_DEFINE_PRINT_OPERATOR(cl_ring_element)
 
index be9ae1473526d60e36879cd9a5f3fd5c23f6d724..ddb46a4e63f674bc7a34ba806662dd058cd81650 100644 (file)
@@ -8,19 +8,19 @@
 
 namespace cln {
 
-inline cl_istream operator>> (cl_istream stream, cl_SF& result)
+inline std::istream& operator>> (std::istream& stream, cl_SF& result)
 {
        extern cl_read_flags cl_SF_read_flags;
-       extern const cl_F read_float (cl_istream, const cl_read_flags&);
+       extern const cl_F read_float (std::istream&, const cl_read_flags&);
        result = As(cl_SF)(read_float(stream,cl_SF_read_flags));
        return stream;
 }
 
 // The following does strictly the same as the general `fprint' for floats.
 // It is here only so that people don't need to include <cln/float_io.h>.
-inline void fprint (cl_ostream stream, const cl_SF& x)
+inline void fprint (std::ostream& stream, const cl_SF& x)
 {
-       extern void print_float (cl_ostream stream, const cl_print_flags& flags, const cl_F& z);
+       extern void print_float (std::ostream& stream, const cl_print_flags& flags, const cl_F& z);
        extern cl_print_flags default_print_flags;
        print_float(stream,default_print_flags,x);
 }
index b9f2de2a6fa5bf6a7998944af03929c49ba065cf..f413f523febe8850deb520499a2ead3a5f5c74a3 100644 (file)
@@ -131,7 +131,7 @@ CL_REQUIRE(cl_st_null)
 extern unsigned long hashcode (const cl_string& str);
 
 // Output.
-extern void fprint (cl_ostream stream, const cl_string& str);
+extern void fprint (std::ostream& stream, const cl_string& str);
 CL_DEFINE_PRINT_OPERATOR(cl_string)
 
 // Input.
@@ -139,23 +139,23 @@ CL_DEFINE_PRINT_OPERATOR(cl_string)
 // Reads a line. Up to delim. The delimiter character is not placed in the
 // resulting string. The delimiter character is kept in the input stream.
 // If EOF is encountered, the stream's eofbit is set.
-extern const cl_string cl_fget (cl_istream stream, char delim = '\n');
+extern const cl_string cl_fget (std::istream& stream, char delim = '\n');
 
 // Reads a line. Up to delim. The delimiter character is not placed in the
 // resulting string. The delimiter character is extracted from the input stream.
 // If EOF is encountered, the stream's eofbit is set.
-extern const cl_string cl_fgetline (cl_istream stream, char delim = '\n');
+extern const cl_string cl_fgetline (std::istream& stream, char delim = '\n');
 
 // Like above, but only up to n-1 characters. If n-1 characters were read
 // before the delimiter character was seen, the stream's failbit is set.
-extern const cl_string cl_fget (cl_istream stream, int n, char delim = '\n');
-extern const cl_string cl_fgetline (cl_istream stream, int n, char delim = '\n');
+extern const cl_string cl_fget (std::istream& stream, int n, char delim = '\n');
+extern const cl_string cl_fgetline (std::istream& stream, int n, char delim = '\n');
 
 // Skips whitespace and then reads a non-whitespace string.
 // If stream.width() is greater than 0, at most stream.width()-1 non-whitespace
 // characters are read. When done, stream.width(0) is called.
 // If EOF is encountered, the stream's eofbit is set.
-extern cl_istream operator>> (cl_istream stream, cl_string& str);
+extern std::istream& operator>> (std::istream& stream, cl_string& str);
 
 // Runtime typing support.
 extern cl_class cl_class_string;
index 76883ba7fff44e8807e44c5036bf561612244c1a..a4be4f7302dbb73651eb88ee4e729933e327868a 100644 (file)
@@ -47,13 +47,13 @@ extern const cl_time_consumption cl_current_time_consumption ();
 
 // Report a time consumption.
 // (Should better be a virtual member function of `cl_time_consumption').
-extern void cl_timing_report (cl_ostream, const cl_time_consumption&);
+extern void cl_timing_report (std::ostream&, const cl_time_consumption&);
 
 struct cl_timing {
        // Constructor, starts the time interval.
        cl_timing (cl_time_consumption& accumulator);
-       cl_timing (cl_ostream destination = std::cerr);
-       cl_timing (const char *, cl_ostream destination = std::cerr);
+       cl_timing (std::ostream& destination = std::cerr);
+       cl_timing (const char *, std::ostream& destination = std::cerr);
        // Destructor, closes the time interval and does a report.
        ~cl_timing ();  
 //private:
index b940d219c783d91c0c2c3b5436643ad0aeef7be7..d1a173b96422f26b673c097a8265ba8ab71d3725 100644 (file)
@@ -111,7 +111,7 @@ public:     // Ability to place an object at a given address.
 
 struct _cl_univpoly_setops /* cf. _cl_ring_setops */ {
        // print
-       void (* fprint) (cl_heap_univpoly_ring* R, cl_ostream stream, const _cl_UP& x);
+       void (* fprint) (cl_heap_univpoly_ring* R, std::ostream& stream, const _cl_UP& x);
        // equality
        // (Be careful: This is not well-defined for polynomials with
        // floating-point coefficients.)
@@ -184,7 +184,7 @@ public:
        const cl_ring& basering () const { return _basering; }
 public:
        // Low-level operations.
-       void _fprint (cl_ostream stream, const _cl_UP& x)
+       void _fprint (std::ostream& stream, const _cl_UP& x)
                { setops->fprint(this,stream,x); }
        cl_boolean _equal (const _cl_UP& x, const _cl_UP& y)
                { return setops->equal(this,x,y); }
@@ -225,7 +225,7 @@ public:
        const cl_ring_element _eval (const _cl_UP& x, const cl_ring_element& y)
                { return polyops->eval(this,x,y); }
        // High-level operations.
-       void fprint (cl_ostream stream, const cl_UP& x)
+       void fprint (std::ostream& stream, const cl_UP& x)
        {
                if (!(x.ring() == this)) cl_abort();
                _fprint(stream,x);
@@ -357,7 +357,7 @@ extern cl_class cl_class_univpoly_ring;
 // Operations on polynomials.
 
 // Output.
-inline void fprint (cl_ostream stream, const cl_UP& x)
+inline void fprint (std::ostream& stream, const cl_UP& x)
        { x.ring()->fprint(stream,x); }
 CL_DEFINE_PRINT_OPERATOR(cl_UP)
 
@@ -531,7 +531,7 @@ template <class T>
 class cl_heap_univpoly_specialized_ring : public cl_heap_univpoly_ring {
        SUBCLASS_cl_heap_univpoly_ring()
        // High-level operations.
-       void fprint (cl_ostream stream, const cl_UP_specialized<T>& x)
+       void fprint (std::ostream& stream, const cl_UP_specialized<T>& x)
        {
                cl_heap_univpoly_ring::fprint(stream,x);
        }
index 6c16b342df772ba84790947d17bc796355d8974d..8deab199e389670808dace93eb44c6a504307455 100644 (file)
@@ -60,7 +60,7 @@ public:       // Ability to place an object at a given address.
 class cl_heap_univpoly_complex_ring : public cl_heap_univpoly_ring {
        SUBCLASS_cl_heap_univpoly_ring()
        // High-level operations.
-       void fprint (cl_ostream stream, const cl_UP_N& x)
+       void fprint (std::ostream& stream, const cl_UP_N& x)
        {
                cl_heap_univpoly_ring::fprint(stream,x);
        }
index 9d998f854142b9637934adfaf6f12a5dfc52115e..16b704e83c9293f7c2d69b172b6a9f4c1ee5199e 100644 (file)
@@ -59,7 +59,7 @@ public:       // Ability to place an object at a given address.
 class cl_heap_univpoly_integer_ring : public cl_heap_univpoly_ring {
        SUBCLASS_cl_heap_univpoly_ring()
        // High-level operations.
-       void fprint (cl_ostream stream, const cl_UP_I& x)
+       void fprint (std::ostream& stream, const cl_UP_I& x)
        {
                cl_heap_univpoly_ring::fprint(stream,x);
        }
index 28f800a31e58340bcfc4f4d1e7dbad81482eab9d..b603e8e6b82ac6982393f1f10bfd6267b95e30d0 100644 (file)
@@ -51,7 +51,7 @@ class cl_heap_univpoly_modint_ring : public cl_heap_univpoly_ring {
        SUBCLASS_cl_heap_univpoly_ring()
        const cl_modint_ring& basering () const { return The(cl_modint_ring)(_basering); }
        // High-level operations.
-       void fprint (cl_ostream stream, const cl_UP_MI& x)
+       void fprint (std::ostream& stream, const cl_UP_MI& x)
        {
                cl_heap_univpoly_ring::fprint(stream,x);
        }
index f9ff026beaff177c3d03ca1cf08147f1d8afbd11..fe76e23a69fe99a5eeb9895ac85dd07213cfd292 100644 (file)
@@ -60,7 +60,7 @@ public:       // Ability to place an object at a given address.
 class cl_heap_univpoly_rational_ring : public cl_heap_univpoly_ring {
        SUBCLASS_cl_heap_univpoly_ring()
        // High-level operations.
-       void fprint (cl_ostream stream, const cl_UP_RA& x)
+       void fprint (std::ostream& stream, const cl_UP_RA& x)
        {
                cl_heap_univpoly_ring::fprint(stream,x);
        }
index 064e73d085a9b7924743639cf8474328645d14ba..742b3737f8c1f530121c0a0c81073b3bc28fa01c 100644 (file)
@@ -60,7 +60,7 @@ public:       // Ability to place an object at a given address.
 class cl_heap_univpoly_real_ring : public cl_heap_univpoly_ring {
        SUBCLASS_cl_heap_univpoly_ring()
        // High-level operations.
-       void fprint (cl_ostream stream, const cl_UP_R& x)
+       void fprint (std::ostream& stream, const cl_UP_R& x)
        {
                cl_heap_univpoly_ring::fprint(stream,x);
        }
diff --git a/include/cln/version.h.in b/include/cln/version.h.in
new file mode 100644 (file)
index 0000000..62be940
--- /dev/null
@@ -0,0 +1,22 @@
+// Version information (cf. cln.m4)
+
+#ifndef _CL_VERSION_H
+#define _CL_VERSION_H
+
+/* These definitions are adjusted by `configure' automatically. */
+
+
+#define CL_VERSION_MAJOR 1
+#define CL_VERSION_MINOR 1
+#define CL_VERSION_PATCHLEVEL 0
+#define CL_VERSION 1.1.0
+
+namespace cln {
+
+extern const int version_major;
+extern const int version_minor;
+extern const int version_patchlevel;
+
+}  // namespace cln
+
+#endif  /* _CL_VERSION_H */
diff --git a/src/base/cl_version.cc b/src/base/cl_version.cc
new file mode 100644 (file)
index 0000000..97116fc
--- /dev/null
@@ -0,0 +1,18 @@
+// Version string buried into the library
+
+// General includes.
+#include "cl_sysdep.h"
+
+// Specification.
+#include "cln/version.h"
+
+
+// Implementation.
+
+namespace cln {
+
+const int version_major = CL_VERSION_MAJOR;
+const int version_minor = CL_VERSION_MINOR;
+const int version_patchlevel = CL_VERSION_PATCHLEVEL;
+
+}  // namespace cln
index 27faccaf39888a931d4cbafcd96cff8475d5bdf3..99ea4570e65608b0444016925a65c190427b379e 100644 (file)
@@ -14,7 +14,7 @@ namespace cln {
 // We don't use `stream << x' or `stream << dec << x', because an ostream
 // carries so many attributes, and we don't want to modifies these attributes.
 
-void fprintdecimal (cl_ostream stream, unsigned long x)
+void fprintdecimal (std::ostream& stream, unsigned long x)
 {
        #define bufsize 20
        var char buf[bufsize+1];
@@ -30,7 +30,7 @@ void fprintdecimal (cl_ostream stream, unsigned long x)
        #undef bufsize
 }
 
-void fprintdecimal (cl_ostream stream, long x)
+void fprintdecimal (std::ostream& stream, long x)
 {
        if (x >= 0)
                fprintdecimal(stream,(unsigned long)x);
index 552612e6e1528bcfbdfee0151ac05630d8c27992..57b1ed199c4b680fa2c3a1e217a4f354555b58df 100644 (file)
@@ -11,7 +11,7 @@
 
 namespace cln {
 
-void fprinthexadecimal (cl_ostream stream, unsigned long x)
+void fprinthexadecimal (std::ostream& stream, unsigned long x)
 {
        #define bufsize 16
        var char buf[bufsize+1];
@@ -27,7 +27,7 @@ void fprinthexadecimal (cl_ostream stream, unsigned long x)
        #undef bufsize
 }
 
-void fprinthexadecimal (cl_ostream stream, long x)
+void fprinthexadecimal (std::ostream& stream, long x)
 {
        if (x >= 0)
                fprintdecimal(stream,(unsigned long)x);
index b804a1100b6ada110f939a664d3165516627ed94..86869bdd30da809a62d38cc27182f3a565505cde 100644 (file)
@@ -59,7 +59,7 @@ static const _cl_ring_element dummy_op2 (cl_heap_ring* R, const _cl_ring_element
        uninitialized_error(x); uninitialized_error(y); RETDUMMY;
 }
 
-static void dummy_fprint (cl_heap_ring* R, cl_ostream stream, const _cl_ring_element& x)
+static void dummy_fprint (cl_heap_ring* R, std::ostream& stream, const _cl_ring_element& x)
 {
        unused R;
        unused stream;
index 4f2f56073d2a6478d74ee6e331140c76d86b0fbf..8524e7db6450de4e21e3697286166e527f442d9b 100644 (file)
@@ -14,7 +14,7 @@
 
 namespace cln {
 
-const cl_string cl_fget (cl_istream stream, char delim)
+const cl_string cl_fget (std::istream& stream, char delim)
 {
        var cl_spushstring buffer;
        // Handling of eofp is tricky: EOF is reached when (!stream.good()) || (stream.get()==EOF).
index f20daaa88b7f7f2a337d209da402743f2ef90f8d..8ef1e260e43f3837203ecddbb4b254a554b2dc5c 100644 (file)
@@ -14,7 +14,7 @@
 
 namespace cln {
 
-const cl_string cl_fget (cl_istream stream, int n, char delim)
+const cl_string cl_fget (std::istream& stream, int n, char delim)
 {
        var cl_spushstring buffer;
        // Handling of eofp is tricky: EOF is reached when (!stream.good()) || (stream.get()==EOF).
index 5421ae05016067a2152b162f84f346a7dc3c6377..8ceb2daf8fe96bf15a9f962c1d41b0d0ce8301e1 100644 (file)
@@ -14,7 +14,7 @@
 
 namespace cln {
 
-const cl_string cl_fgetline (cl_istream stream, char delim)
+const cl_string cl_fgetline (std::istream& stream, char delim)
 {
        var cl_spushstring buffer;
        // Handling of eofp is tricky: EOF is reached when (!stream.good()) || (stream.get()==EOF).
index fa015cb9f818f42cf6dd814c0f518cdf51240f3b..cfdc6952f4327ebdad790f32008c83ad896fbbdd 100644 (file)
@@ -14,7 +14,7 @@
 
 namespace cln {
 
-const cl_string cl_fgetline (cl_istream stream, int n, char delim)
+const cl_string cl_fgetline (std::istream& stream, int n, char delim)
 {
        var cl_spushstring buffer;
        // Handling of eofp is tricky: EOF is reached when (!stream.good()) || (stream.get()==EOF).
index 0f27fa7ddc65cc46c4b6697e518838884f1a577f..1201f919909e98b9c4ac18881b0c0f8d8a2aea6b 100644 (file)
@@ -15,7 +15,7 @@
 
 namespace cln {
 
-cl_istream operator>> (cl_istream stream, cl_string& str)
+std::istream& operator>> (std::istream& stream, cl_string& str)
 {
        var cl_spushstring buffer;
        var int n = stream.width();
index be39578e8380b56da34fa72e7c97cf7a75c17829..5d3fa9928c9cef6d31d1105926bfabfab6e02c93 100644 (file)
@@ -13,7 +13,7 @@
 
 namespace cln {
 
-void fprint (cl_ostream stream, const cl_string& str)
+void fprint (std::ostream& stream, const cl_string& str)
 {
        stream.write(str.asciz(),str.length());
 }
index f22f3ed63e471b3a571573455b3b262ff81b8f32..48df82ee2def615fa8750deb98b773ef0c766376 100644 (file)
@@ -38,7 +38,7 @@ static cl_boolean number_char_p (char c)
        }
 }
 
-const cl_N read_complex (cl_istream stream, const cl_read_flags& flags)
+const cl_N read_complex (std::istream& stream, const cl_read_flags& flags)
 {
        // One pre-allocated buffer. This reduces the allocation/free cost.
        static pushstring_hack buffer;
index 969ba137dd903585d9cd3f96482c802d1e6f49f2..bae3b350b849588e37e6aea2d461c8d9b0f2ad65 100644 (file)
@@ -13,7 +13,7 @@
 
 namespace cln {
 
-void print_complex (cl_ostream stream, const cl_print_flags& flags, const cl_N& z)
+void print_complex (std::ostream& stream, const cl_print_flags& flags, const cl_N& z)
 {
        print_complex(stream,(const cl_print_number_flags&)flags,z);
 }
index 3a42f85f3f26da58ca570742bf731ea44c0ae770..d9c1371f8c1cb55e3b63dd445d1b876be4f3d685 100644 (file)
@@ -16,7 +16,7 @@
 
 namespace cln {
 
-void print_complex (cl_ostream stream, const cl_print_number_flags& flags, const cl_N& z)
+void print_complex (std::ostream& stream, const cl_print_number_flags& flags, const cl_N& z)
 {
        if (realp(z)) {
                DeclareType(cl_R,z);
index 6e6cb7433c0dc09e71cf669d555157de96664065..aa01740198c8a5b8423b3fef08083e22abbea5e2 100644 (file)
@@ -17,7 +17,7 @@ CL_PROVIDE(cl_C_ring)
 
 namespace cln {
 
-static void N_fprint (cl_heap_ring* R, cl_ostream stream, const _cl_ring_element& x)
+static void N_fprint (cl_heap_ring* R, std::ostream& stream, const _cl_ring_element& x)
 {
        unused R;
        fprint(stream,The(cl_N)(x));
index dfa30aa2a427d97b3020a150903020a3c9942d90..a3e7461fe72d8b638f51c16691f8bcf6156e18b0 100644 (file)
@@ -40,7 +40,7 @@ static cl_boolean number_char_p (char c)
        }
 }
 
-const cl_F read_float (cl_istream stream, const cl_read_flags& flags)
+const cl_F read_float (std::istream& stream, const cl_read_flags& flags)
 {
        // One pre-allocated buffer. This reduces the allocation/free cost.
        static pushstring_hack buffer;
index 2a3ff1e3549d07669e0a04cbaf268317f229433a..2749c9232068dbac4898ae775dcbac6c799e166d 100644 (file)
@@ -13,7 +13,7 @@
 
 namespace cln {
 
-void print_float (cl_ostream stream, const cl_print_flags& flags, const cl_F& z)
+void print_float (std::ostream& stream, const cl_print_flags& flags, const cl_F& z)
 {
        print_float(stream,(const cl_print_number_flags&)flags,z);
 }
index aacc49cf69a1e5d407eabc86058f03c45431c936..bfd78995f0e6e5788b9b8b947d9ca61c09c71ad1 100644 (file)
@@ -13,7 +13,7 @@
 
 namespace cln {
 
-void print_float (cl_ostream stream, const cl_print_number_flags& flags, const cl_F& z)
+void print_float (std::ostream& stream, const cl_print_number_flags& flags, const cl_F& z)
 {
        print_float(stream,(const cl_print_real_flags&)flags,z);
 }
index 24985a214b3817409dfbd6ba3001e576d9460ef9..51451318a5a8fc00e9492c2b302eb5f2d4693257 100644 (file)
@@ -13,7 +13,7 @@
 
 namespace cln {
 
-void print_float (cl_ostream stream, const cl_print_real_flags& flags, const cl_F& z)
+void print_float (std::ostream& stream, const cl_print_real_flags& flags, const cl_F& z)
 {
        print_float(stream,(const cl_print_float_flags&)flags,z);
 }
index 4b156c07ee477fd206c1420e1f693909eb31c8a9..b50ef4b5e81edf2ec7abf6da72c449bd6e04daed 100644 (file)
@@ -361,7 +361,7 @@ static const cl_decimal_decoded_float decode_float_decimal (const cl_F& x)
 }
 
 // Ausgabefunktion:
-void print_float (cl_ostream stream, const cl_print_float_flags& flags, const cl_F& z)
+void print_float (std::ostream& stream, const cl_print_float_flags& flags, const cl_F& z)
 {
   var cl_decimal_decoded_float z_decoded = decode_float_decimal(z);
   var char * & mantstring = z_decoded.a;
index 7c20abb1c73dec34c40f4f9d0188260d935a0b6e..9eafb0b29bce883f304452d066c2c9af92adf6ff 100644 (file)
@@ -16,7 +16,7 @@
 
 namespace cln {
 
-void print_float_binary (cl_ostream stream, const cl_F& z)
+void print_float_binary (std::ostream& stream, const cl_F& z)
 {
 // Vorzeichen, Punkt, Mantisse (binär), (Zweiersystem-)Exponent (dezimal)
        cl_idecoded_float m_e_s = integer_decode_float(z);
index dcb9176bba09f2473d2ad5175ed97e703dc15a65..71fddb68945166866b84566011b6730033c586ec 100644 (file)
@@ -40,7 +40,7 @@ static cl_boolean number_char_p (char c)
        }
 }
 
-const cl_I read_integer (cl_istream stream, const cl_read_flags& flags)
+const cl_I read_integer (std::istream& stream, const cl_read_flags& flags)
 {
        // One pre-allocated buffer. This reduces the allocation/free cost.
        static pushstring_hack buffer;
index 49c45772f0a2597d2c75b5b08342d6ef56cc12a1..c65b445a6e43762641470b932b0b2daee4d29fe7 100644 (file)
@@ -13,7 +13,7 @@
 
 namespace cln {
 
-void print_integer (cl_ostream stream, const cl_print_flags& flags, const cl_I& z)
+void print_integer (std::ostream& stream, const cl_print_flags& flags, const cl_I& z)
 {
        print_integer(stream,(const cl_print_number_flags&)flags,z);
 }
index a792a2e1966cb97e21ad51775e634d3563528e87..d7183337abca970768ecc852c7ebf31a3b1d8961 100644 (file)
@@ -13,7 +13,7 @@
 
 namespace cln {
 
-void print_integer (cl_ostream stream, const cl_print_number_flags& flags, const cl_I& z)
+void print_integer (std::ostream& stream, const cl_print_number_flags& flags, const cl_I& z)
 {
        print_integer(stream,(const cl_print_real_flags&)flags,z);
 }
index e53b0662c07b7f18290e05544258d4ab279d54f8..44791254a5f483aee248d12663daeec94eb77b2a 100644 (file)
@@ -13,7 +13,7 @@
 
 namespace cln {
 
-void print_integer (cl_ostream stream, const cl_print_real_flags& flags, const cl_I& z)
+void print_integer (std::ostream& stream, const cl_print_real_flags& flags, const cl_I& z)
 {
        print_integer(stream,(const cl_print_rational_flags&)flags,z);
 }
index 99cf3974cca97f208ad4f32b926aad6bdb68c678..e79f62e7a1e85067e0a8987541a0379b63476916 100644 (file)
@@ -13,7 +13,7 @@
 
 namespace cln {
 
-void print_integer (cl_ostream stream, const cl_print_rational_flags& flags, const cl_I& z)
+void print_integer (std::ostream& stream, const cl_print_rational_flags& flags, const cl_I& z)
 {
        var unsigned int base = flags.rational_base;
        if (flags.rational_readably)
index 938e526f066bf820f34ad6403157ec73bc08d935..65688b45fa22c22ff1d849bef7e68a297df573fd 100644 (file)
@@ -15,7 +15,7 @@
 
 namespace cln {
 
-void print_integer (cl_ostream stream, unsigned int base, const cl_I& z)
+void print_integer (std::ostream& stream, unsigned int base, const cl_I& z)
 {
        var cl_I abs_z;
        if (minusp(z)) {
index 5e173aed81548c42fdf203915dd8a87da67c298a..d08287795ed776a3960845749519bb0967609536 100644 (file)
@@ -33,7 +33,7 @@ static const _cl_ring_element null_op2 (cl_heap_ring* R, const _cl_ring_element&
        return _cl_ring_element(R, (cl_I)0);
 }
 
-static void null_fprint (cl_heap_ring* R, cl_ostream stream, const _cl_ring_element& x)
+static void null_fprint (cl_heap_ring* R, std::ostream& stream, const _cl_ring_element& x)
 {
        unused R;
        unused x;
index f7ae40bad320f3c314764773a5b019154f245416..5629e1f6420c45ad8e784a3c386e3b5f24e89484 100644 (file)
@@ -17,7 +17,7 @@ CL_PROVIDE(cl_I_ring)
 
 namespace cln {
 
-static void I_fprint (cl_heap_ring* R, cl_ostream stream, const _cl_ring_element& x)
+static void I_fprint (cl_heap_ring* R, std::ostream& stream, const _cl_ring_element& x)
 {
        unused R;
        fprint(stream,The(cl_I)(x));
index 4cd014a70b24d0e082030c0f194f7db139857f9c..878036574318c28270e85cb2fe00a1fc1c0eba56 100644 (file)
@@ -17,7 +17,7 @@ namespace cln {
 const char * cl_composite_condition::name () const
 { return "cl_composite_condition"; }
 
-void cl_composite_condition::print (cl_ostream strm) const
+void cl_composite_condition::print (std::ostream& strm) const
 {
        fprint(strm, "Exception <cl_composite_condition> occurred: p = ");
        fprint(strm, p);
index 9690dc82d063c123cd3583868953d7fc04df4dd0..fe70d498efc5df4153fd29cdd93539acf9129e4e 100644 (file)
@@ -2,7 +2,7 @@
 
 namespace cln {
 
-static void int_fprint (cl_heap_modint_ring* R, cl_ostream stream, const _cl_MI &x)
+static void int_fprint (cl_heap_modint_ring* R, std::ostream& stream, const _cl_MI &x)
 {
        fprint(stream,R->_retract(x));
 }
index 7f021041b024f778efed1ac2d62382526417182f..e52494bb9b8204facb4bc4b9b3ec1035b26fc719 100644 (file)
@@ -2,7 +2,7 @@
 
 namespace cln {
 
-static void std_fprint (cl_heap_modint_ring* R, cl_ostream stream, const _cl_MI &x)
+static void std_fprint (cl_heap_modint_ring* R, std::ostream& stream, const _cl_MI &x)
 {
        fprint(stream,R->_retract(x));
        fprint(stream," mod ");
index 36f294c9b7f1ddb56b42fe34bba620fdeef4863b..19b6236e073b4c2a6926e8e4996a866d2e6f08ac 100644 (file)
@@ -32,7 +32,7 @@ static inline void modint_normalize (cl_heap_modint_ring* R, cl_GV_MI& result, u
        }
 }
 
-static void modint_fprint (cl_heap_univpoly_ring* UPR, cl_ostream stream, const _cl_UP& x)
+static void modint_fprint (cl_heap_univpoly_ring* UPR, std::ostream& stream, const _cl_UP& x)
 {{
        DeclarePoly(cl_GV_MI,x);
        var cl_heap_modint_ring* R = TheModintRing(UPR->basering());
index fc8dc869bc50721b27b2d932abd6d6e6fb109d50..6d80faa2bd0a6ff83a83c06b2d26fe891e799955 100644 (file)
@@ -28,7 +28,7 @@ static inline void gen_normalize (cl_heap_ring* R, cl_SV_ringelt& result, uintL
        }
 }
 
-static void gen_fprint (cl_heap_univpoly_ring* UPR, cl_ostream stream, const _cl_UP& x)
+static void gen_fprint (cl_heap_univpoly_ring* UPR, std::ostream& stream, const _cl_UP& x)
 {{
        DeclarePoly(cl_SV_ringelt,x);
        var cl_heap_ring* R = TheRing(UPR->basering());
index cc936344960e0da722edcd905b15384de16fda6d..2e1f543bf1eaff296c25631a85953c2b51a84f62 100644 (file)
@@ -59,7 +59,7 @@ static const _cl_UP dummy_op2 (cl_heap_univpoly_ring* R, const _cl_UP& x, const
        uninitialized_error(x); uninitialized_error(y); RETDUMMY;
 }
 
-static void dummy_fprint (cl_heap_univpoly_ring* R, cl_ostream stream, const _cl_UP& x)
+static void dummy_fprint (cl_heap_univpoly_ring* R, std::ostream& stream, const _cl_UP& x)
 {
        unused R;
        unused stream;
index 274849e238ca6d71c499c9e2ed26484ab42642ab..ea78cb8bc1bcdf3b1d8813ea1cdea05bd88a0cd5 100644 (file)
@@ -29,7 +29,7 @@ static inline void num_normalize (cl_number_ring_ops<cl_number>& ops, cl_SV_numb
        }
 }
 
-static void num_fprint (cl_heap_univpoly_ring* UPR, cl_ostream stream, const _cl_UP& x)
+static void num_fprint (cl_heap_univpoly_ring* UPR, std::ostream& stream, const _cl_UP& x)
 {{
        DeclarePoly(cl_SV_number,x);
        var cl_number_ring_ops<cl_number>& ops = *TheNumberRing(UPR->basering())->ops;
index 58bbd9e5d00aad8ea817e382aa726fabbe205e71..85dcfd8ee48f9989be36c260245b29e0071a9165 100644 (file)
@@ -41,7 +41,7 @@ static cl_boolean number_char_p (char c)
        }
 }
 
-const cl_RA read_rational (cl_istream stream, const cl_read_flags& flags)
+const cl_RA read_rational (std::istream& stream, const cl_read_flags& flags)
 {
        // One pre-allocated buffer. This reduces the allocation/free cost.
        static pushstring_hack buffer;
index 522f0712a968f98f64facca516f79bf629da1495..56dd89674039753f1583094f7cc957688ce90712 100644 (file)
@@ -13,7 +13,7 @@
 
 namespace cln {
 
-void print_rational (cl_ostream stream, const cl_print_flags& flags, const cl_RA& z)
+void print_rational (std::ostream& stream, const cl_print_flags& flags, const cl_RA& z)
 {
        print_rational(stream,(const cl_print_number_flags&)flags,z);
 }
index ae6e07c86f196c142e8babe8a6a4c24c612ffb3e..4c7c66ca40a0843558be9a21959820dc60063866 100644 (file)
@@ -13,7 +13,7 @@
 
 namespace cln {
 
-void print_rational (cl_ostream stream, const cl_print_number_flags& flags, const cl_RA& z)
+void print_rational (std::ostream& stream, const cl_print_number_flags& flags, const cl_RA& z)
 {
        print_rational(stream,(const cl_print_real_flags&)flags,z);
 }
index 69e71e419d20dab293b9fb1985c07e78b7039a2e..bc861882a75b1d7648d8cc75a21f13393c5cf37d 100644 (file)
@@ -13,7 +13,7 @@
 
 namespace cln {
 
-void print_rational (cl_ostream stream, const cl_print_real_flags& flags, const cl_RA& z)
+void print_rational (std::ostream& stream, const cl_print_real_flags& flags, const cl_RA& z)
 {
        print_rational(stream,(const cl_print_rational_flags&)flags,z);
 }
index 035f50ab6c286d9824b4186ba89650396bc05a0f..5e8bcce8aaf75f325e715118ae5c55cfaaf479e1 100644 (file)
@@ -16,7 +16,7 @@
 
 namespace cln {
 
-void print_rational (cl_ostream stream, const cl_print_rational_flags& flags, const cl_RA& z)
+void print_rational (std::ostream& stream, const cl_print_rational_flags& flags, const cl_RA& z)
 {
        var unsigned int base = flags.rational_base;
        if (flags.rational_readably)
index 2cf4c3ceea975c671765375091056febf7bd494e..a4f359e02d389841f40ae3d3a9f81215c347fdd9 100644 (file)
@@ -15,7 +15,7 @@
 
 namespace cln {
 
-void print_rational (cl_ostream stream, unsigned int base, const cl_RA& z)
+void print_rational (std::ostream& stream, unsigned int base, const cl_RA& z)
 {
        if (integerp(z)) {
                DeclareType(cl_I,z);
index e8e8da0adb44fe14a4e47e3f45c7b1921124c75d..f1a41252ffb4f1b4b17f4aa70931703a19b907bc 100644 (file)
@@ -17,7 +17,7 @@ CL_PROVIDE(cl_RA_ring)
 
 namespace cln {
 
-static void RA_fprint (cl_heap_ring* R, cl_ostream stream, const _cl_ring_element& x)
+static void RA_fprint (cl_heap_ring* R, std::ostream& stream, const _cl_ring_element& x)
 {
        unused R;
        fprint(stream,The(cl_RA)(x));
index f2c3dff595cba57e44503c90d1c5fcbe264f3112..220be8b55f2bebe74b700490c743ee2015ec13b2 100644 (file)
@@ -40,7 +40,7 @@ static const char * const cl_format_ones [20] = {
 
 // gibt eine ganze Zahl >0, <1000 im Klartext auf englisch auf den stream aus.
 // (arg=0 -> gibt nichts aus.)
-static void format_small_cardinal (cl_ostream stream, uintL arg)
+static void format_small_cardinal (std::ostream& stream, uintL arg)
 {
        var uintL hundreds = floor(arg,100);
        var uintL tens_and_ones = arg % 100;
@@ -65,7 +65,7 @@ static void format_small_cardinal (cl_ostream stream, uintL arg)
        }
 }
 
-void format_cardinal (cl_ostream stream, const cl_I& argument)
+void format_cardinal (std::ostream& stream, const cl_I& argument)
 {
        if (zerop(argument))
                fprint(stream,"zero");
index 164550573de6d09fa49a75d60b1a962251fe8710..5dc24cb5cacf129c6319f33d0d3f860f9d763935 100644 (file)
@@ -15,7 +15,7 @@
 
 namespace cln {
 
-void format_integer (cl_ostream stream, const cl_I& arg,
+void format_integer (std::ostream& stream, const cl_I& arg,
        unsigned int base, sintL mincol, char padchar,
        char commachar, uintL commainterval, cl_boolean commaflag,
        cl_boolean positive_sign_flag)
index e0c953dc36bb5a738908e67cffb10ed52204ed17..0732820bde284b78e7b20a38b8efa3b650a8baf0 100644 (file)
@@ -15,7 +15,7 @@
 
 namespace cln {
 
-void format_new_roman (cl_ostream stream, const cl_I& arg)
+void format_new_roman (std::ostream& stream, const cl_I& arg)
 {
        if (!(0 < arg && arg < 4000)) {
                fprint(std::cerr, "format_new_roman: argument should be in the range 1 - 3999, not ");
index cc9f9cacaba4d706a428dfa0e1b92f22d105124d..b69029bc29da1029f4709250c9babf572f34b1f8 100644 (file)
@@ -15,7 +15,7 @@
 
 namespace cln {
 
-void format_old_roman (cl_ostream stream, const cl_I& arg)
+void format_old_roman (std::ostream& stream, const cl_I& arg)
 {
        if (!(0 < arg && arg < 5000)) {
                fprint(std::cerr, "format_old_roman: argument should be in the range 1 - 4999, not ");
index 006cec23455e8e48766977c4497ad7898e32aa85..9e4c29971fe84a991744abcd8117c7e16f0975b5 100644 (file)
@@ -49,7 +49,7 @@ static const char * const cl_format_ordinal_tens [10] = {
        "ninetieth",
 };
 
-void format_ordinal (cl_ostream stream, const cl_I& argument)
+void format_ordinal (std::ostream& stream, const cl_I& argument)
 {
        if (zerop(argument))
                fprint(stream,"zeroth");
index b13b15db3c6772888a88f10b384527ac0bda93f6..43e41d85a470cec308b7f02fa5e600ee1c1759c6 100644 (file)
@@ -13,7 +13,7 @@
 
 namespace cln {
 
-void format_padded_string (cl_ostream stream, sintL mincol, sintL colinc, sintL minpad, char padchar, cl_boolean padleftflag, const char * str)
+void format_padded_string (std::ostream& stream, sintL mincol, sintL colinc, sintL minpad, char padchar, cl_boolean padleftflag, const char * str)
 {
        var sintL need = ::strlen(str) + minpad; // so viele Zeichen mindestens
        var uintL auxpad = (need < mincol
index b6f9219977ed48d724d5c2dd9a70afee07650b3e..4c29f0b83b4ad42e2cb912f07a4369f3c36769e3 100644 (file)
 namespace cln {
 
 // gibt arg als römische Zahl auf stream aus, z.B. 4 als IIII.
-extern void format_old_roman (cl_ostream stream, const cl_I& arg);
+extern void format_old_roman (std::ostream& stream, const cl_I& arg);
 
 // gibt arg als römische Zahl auf stream aus, z.B. 4 als IV.
-extern void format_new_roman (cl_ostream stream, const cl_I& arg);
+extern void format_new_roman (std::ostream& stream, const cl_I& arg);
 
 extern const char * const cl_format_tens [10];
 
 // gibt die ganze Zahl arg im Klartext auf englisch auf den Stream aus.
-extern void format_cardinal (cl_ostream stream, const cl_I& arg);
+extern void format_cardinal (std::ostream& stream, const cl_I& arg);
 
 // gibt eine ganze Zahl arg als Abzählnummer im Klartext auf englisch
 // auf den stream aus.
-extern void format_ordinal (cl_ostream stream, const cl_I& arg);
+extern void format_ordinal (std::ostream& stream, const cl_I& arg);
 
 // gibt count (>=0) Zeichen ch auf stream aus.
-inline void format_padding (cl_ostream stream, sintL count, char ch)
+inline void format_padding (std::ostream& stream, sintL count, char ch)
 {
        for (; count >= 0; count--)
                fprintchar(stream,ch);
@@ -37,14 +37,14 @@ inline void format_padding (cl_ostream stream, sintL count, char ch)
 // werden mindestens minpad Zeichen eingefügt, eventuelle weitere dann in
 // Blöcken à colinc Zeichen. Falls padleftflag, werden sie links eingefügt,
 // sonst rechts vom String.
-extern void format_padded_string (cl_ostream stream, sintL mincol, sintL colinc, sintL minpad, char padchar, cl_boolean padleftflag, const char * str);
+extern void format_padded_string (std::ostream& stream, sintL mincol, sintL colinc, sintL minpad, char padchar, cl_boolean padleftflag, const char * str);
 
 // gibt den Integer arg auf den Stream aus:
 // in Zahlenbasis base, mit Vorzeichen (+ nur falls >0 und positive-sign-flag),
 // bei commaflag alle drei Stellen unterbrochen durch ein Zeichen commachar.
 // Das Ganze links aufgefüllt mit padchar's, so daß die Gesamtbreite mindestens
 // mincol ist.
-extern void format_integer (cl_ostream stream, const cl_I& arg, unsigned int base, sintL mincol, char padchar, char commachar, uintL commainterval, cl_boolean commaflag, cl_boolean positive_sign_flag);
+extern void format_integer (std::ostream& stream, const cl_I& arg, unsigned int base, sintL mincol, char padchar, char commachar, uintL commainterval, cl_boolean commaflag, cl_boolean positive_sign_flag);
 
 // format_scale_exponent(arg) liefert zur Floating-Point-Zahl arg
 // drei Werte: mantissa und n, mit
index 7be4ecbae3af3cd9e16b43b994fbd2b5194d03dc..b6947451b5619f079744e047b83329539fd0f1b6 100644 (file)
@@ -40,7 +40,7 @@ static cl_boolean number_char_p (char c)
        }
 }
 
-const cl_R read_real (cl_istream stream, const cl_read_flags& flags)
+const cl_R read_real (std::istream& stream, const cl_read_flags& flags)
 {
        // One pre-allocated buffer. This reduces the allocation/free cost.
        static pushstring_hack buffer;
index 2f09a3272df4c0aea040f2bbae32faa144ad26f3..23f2ef96840d923babfd43677a5d658980a6f0be 100644 (file)
@@ -13,7 +13,7 @@
 
 namespace cln {
 
-void print_real (cl_ostream stream, const cl_print_flags& flags, const cl_R& z)
+void print_real (std::ostream& stream, const cl_print_flags& flags, const cl_R& z)
 {
        print_real(stream,(const cl_print_number_flags&)flags,z);
 }
index 6ac11762994e8e274eac0f45510b846d371f50cf..a676d4190424155936005aaa631002e77e78f1c5 100644 (file)
@@ -13,7 +13,7 @@
 
 namespace cln {
 
-void print_real (cl_ostream stream, const cl_print_number_flags& flags, const cl_R& z)
+void print_real (std::ostream& stream, const cl_print_number_flags& flags, const cl_R& z)
 {
        print_real(stream,(const cl_print_real_flags&)flags,z);
 }
index 37e719607f0fd9b996616bd2fead02e2dc69672f..34ee0c186746c99a8c7c98a629c2998f122f6990 100644 (file)
@@ -16,7 +16,7 @@
 
 namespace cln {
 
-void print_real (cl_ostream stream, const cl_print_real_flags& flags, const cl_R& z)
+void print_real (std::ostream& stream, const cl_print_real_flags& flags, const cl_R& z)
 {
        if (rationalp(z)) {
                DeclareType(cl_RA,z);
index 28cf3e35983da055c44b569bae573710b918ebe7..12bad45c7df7a6dc73239dda5a7d5c3878454fef 100644 (file)
@@ -18,7 +18,7 @@ CL_PROVIDE(cl_R_ring)
 
 namespace cln {
 
-static void R_fprint (cl_heap_ring* R, cl_ostream stream, const _cl_ring_element& x)
+static void R_fprint (cl_heap_ring* R, std::ostream& stream, const _cl_ring_element& x)
 {
        unused R;
        fprint(stream,The(cl_R)(x));
index 3b4686189de122a96e7a68f4446916e43fc97750..e487d729d461589197fa78a7c6db2a63b321cca3 100644 (file)
@@ -1,4 +1,4 @@
-// constructor cl_timing(cl_ostream).
+// constructor cl_timing(std::ostream&).
 
 // General includes.
 #include "cl_sysdep.h"
@@ -19,14 +19,14 @@ static void report_stream (const cl_timing& t)
        usage.realtime = usage_end.realtime - usage_start.realtime;
        usage.usertime = usage_end.usertime - usage_start.usertime;
 
-       var cl_ostream destination = *(std::ostream*) t.report_destination;
+       var std::ostream& destination = *(std::ostream*) t.report_destination;
        if (t.comment)
                fprint(destination,t.comment);
        cl_timing_report(destination,usage);
        fprint(destination,"\n");
 }
 
-cl_timing::cl_timing (cl_ostream destination)
+cl_timing::cl_timing (std::ostream& destination)
 {
        report_fn = report_stream;
        report_destination = &destination;
@@ -34,7 +34,7 @@ cl_timing::cl_timing (cl_ostream destination)
        tmp = cl_current_time_consumption();
 }
 
-cl_timing::cl_timing (const char * msg, cl_ostream destination)
+cl_timing::cl_timing (const char * msg, std::ostream& destination)
 {
        report_fn = report_stream;
        report_destination = &destination;
index 95b4fb9a6e5813e2ca3c3dc9bfd33dfc67db879d..1ffed47d5ae19352ec05797afaa948fb99cb5bd5 100644 (file)
@@ -15,7 +15,7 @@ namespace cln {
 #define CL_HZ 1000
 #define CL_HZ_NSECS (1000000000/CL_HZ)
 
-void cl_timing_report (cl_ostream stream, const cl_time_consumption& t)
+void cl_timing_report (std::ostream& stream, const cl_time_consumption& t)
 {
        var uintL real_sec = t.realtime.tv_sec;
        var uintL real_msec = (t.realtime.tv_nsec + (CL_HZ_NSECS-1)/2) / CL_HZ_NSECS;
index ed935a1fd619655b9c41b6a462c9010af013ae14..824523def134a05466d4603c436c51985c55df1e 100644 (file)
@@ -15,7 +15,7 @@ namespace cln {
 // > flags: Flags
 // > fun: Ausgabefunktion für die einzelnen Elemente
 // > vector: Vektor
-extern void print_vector (cl_ostream stream, const cl_print_flags& flags, void (* fun) (cl_ostream, const cl_print_flags&, const cl_number&), const cl_GV_number& vector);
+extern void print_vector (std::ostream& stream, const cl_print_flags& flags, void (* fun) (std::ostream&, const cl_print_flags&, const cl_number&), const cl_GV_number& vector);
 
 }  // namespace cln
 
index 37745b2c0b8c26c0f5c0d1866991b6bc5c6a5336..ad20f3963e77dc5cfa75398c2deea6379d36aef6 100644 (file)
@@ -15,7 +15,7 @@
 
 namespace cln {
 
-static void print_for_debug (cl_ostream stream, const cl_print_flags& flags, const cl_number& z)
+static void print_for_debug (std::ostream& stream, const cl_print_flags& flags, const cl_number& z)
 {
        unused stream; // must be cl_debugout
        unused flags; // must be default_print_flags
index eb0da90c55234987e8f8dff27f216e75f285b129..51de4df6046fb37677f407058ceeabb52bb37c71 100644 (file)
@@ -15,7 +15,7 @@ namespace cln {
 // > flags: Flags
 // > fun: Ausgabefunktion für die einzelnen Elemente
 // > vector: Vektor
-extern void print_vector (cl_ostream stream, const cl_print_flags& flags, void (* fun) (cl_ostream, const cl_print_flags&, const cl_number&), const cl_SV_number& vector);
+extern void print_vector (std::ostream& stream, const cl_print_flags& flags, void (* fun) (std::ostream&, const cl_print_flags&, const cl_number&), const cl_SV_number& vector);
 
 }  // namespace cln
 
index 399090322198665187cfaf2f1afb7c31d0d040d8..16528911de5f6d06408590fb4451a25736a60b72 100644 (file)
@@ -15,7 +15,7 @@
 
 namespace cln {
 
-static void print_for_debug (cl_ostream stream, const cl_print_flags& flags, const cl_number& z)
+static void print_for_debug (std::ostream& stream, const cl_print_flags& flags, const cl_number& z)
 {
        unused stream; // must be cl_debugout
        unused flags; // must be default_print_flags
index aaebb8a256d4b49be8264947c722c70ff7447e34..aa77ffc1268940783d0317c2ea5dfe739caafd24 100644 (file)
@@ -17,7 +17,7 @@
 
 namespace cln {
 
-void print_vector (cl_ostream stream, const cl_print_flags& flags, void (* printfun) (cl_ostream, const cl_print_flags&, const cl_number&), const cl_GV_number& vector)
+void print_vector (std::ostream& stream, const cl_print_flags& flags, void (* printfun) (std::ostream&, const cl_print_flags&, const cl_number&), const cl_GV_number& vector)
 {
        var uintL len = vector.length();
        if (flags.vector_syntax == vsyntax_commonlisp) {
index 42cc1fde265eefea3a33252d3a587d18939de4b0..f414e5a1833c499610e8731b3f8d3541d1f7d94c 100644 (file)
@@ -13,7 +13,7 @@
 
 namespace cln {
 
-void fprint (cl_ostream stream, const cl_ring& R, const cl_SV_ringelt& vector)
+void fprint (std::ostream& stream, const cl_ring& R, const cl_SV_ringelt& vector)
 {
        var const cl_print_flags& flags = default_print_flags;
        var uintL len = vector.length();
index fefd17410fdbaf92386c97f9c7be175b9fe09fec..8da73d2d81cba5f0fbba85424ee8579f52754c65 100644 (file)
@@ -17,7 +17,7 @@
 
 namespace cln {
 
-void print_vector (cl_ostream stream, const cl_print_flags& flags, void (* printfun) (cl_ostream, const cl_print_flags&, const cl_number&), const cl_SV_number& vector)
+void print_vector (std::ostream& stream, const cl_print_flags& flags, void (* printfun) (std::ostream&, const cl_print_flags&, const cl_number&), const cl_SV_number& vector)
 {
        var uintL len = vector.length();
        if (flags.vector_syntax == vsyntax_commonlisp) {