Alexei Sheplyakov
							
						 
						
							
							
							
								
							
								5ec5ca2758 
								
							
								 
							
						 
						
							
							
								
								Get rid of CL_REQUIRE/CL_PROVIDE(cl_F_ln2_var).  
							
							 
							
							 
							
							
								
 
							
							
							Turn cl_[SDFL]F_ln2 global variables into functions (which return a constant
reference to the static value) in order to avoid static initialization order
problems. 
							
						 
						17 years ago  
					 
				
					
						
							
							
								 
								Alexei Sheplyakov
							
						 
						
							
							
							
								
							
								7069712895 
								
							
								 
							
						 
						
							
							
								
								Get rid of CL_REQUIRE/CL_PROVIDE(cl_F_pi_var).  
							
							 
							
							 
							
							
								
 
							
							
							Turn cl_[SDFL]F_pi global variables into functions (which return a constant
reference to the static value) in order to avoid static initialization order
problems. 
							
						 
						17 years ago  
					 
				
					
						
							
							
								 
								Alexei Sheplyakov
							
						 
						
							
							
							
								
							
								7f619754e2 
								
							
								 
							
						 
						
							
							
								
								Replace CL_REQUIRE/CL_PROVIDE(cl_LF_globals) with portable code.  
							
							 
							
							 
							
							
								
 
							
							
							The order of initialization of non-local objects in different compilation units
is not specified in C++. Hence special care should be taken to avoid static
initialization order fiasco. CLN solved the problem with some evil (GCC
specific, and even GCC-version-specific) hack. Replace it with a technique
similar to one used in STL to initialize std::cout and friends. 
							
						 
						17 years ago  
					 
				
					
						
							
							
								 
								Alexei Sheplyakov
							
						 
						
							
							
							
								
							
								74ff6e9338 
								
							
								 
							
						 
						
							
							
								
								Replace CL_REQUIRE/CL_PROVIDE(cl_FF_globals) with portable code.  
							
							 
							
							 
							
							
								
 
							
							
							The order of initialization of non-local objects in different compilation units
is not specified in C++. Hence special care should be taken to avoid static
initialization order fiasco. CLN solved the problem with some evil (GCC
specific, and even GCC-version-specific) hack. Replace it with a technique
similar to one used in STL to initialize std::cout and friends. 
							
						 
						17 years ago  
					 
				
					
						
							
							
								 
								Alexei Sheplyakov
							
						 
						
							
							
							
								
							
								88f748dfb4 
								
							
								 
							
						 
						
							
							
								
								Get rid of CL_REQUIRE/CL_PROVIDE(cl_ieee).  
							
							 
							
							 
							
							
								
 
							
							
							While at it, remove work around for ancient (fixed in 8+ years) glibc/Linux
bug (the kernel and/or libc was initializing FPU into non-IEEE mode, so division
by 0 resulted in SIGFPE instead of NaN). 
							
						 
						17 years ago  
					 
				
					
						
							
							
								 
								Alexei Sheplyakov
							
						 
						
							
							
							
								
							
								018b445aa3 
								
							
								 
							
						 
						
							
							
								
								Replace CL_REQUIRE/CL_PROVIDE(cl_DF_globals) with portable code.  
							
							 
							
							 
							
							
								
 
							
							
							The order of initialization of non-local objects in different compilation units
is not specified in C++. Hence special care should be taken to avoid static
initialization order fiasco. CLN solved the problem with some evil (GCC
specific, and even GCC-version-specific) hack. Replace it with a technique
similar to one used in STL to initialize std::cout and friends. 
							
						 
						17 years ago  
					 
				
					
						
							
							
								 
								Richard Kreckel
							
						 
						
							
							
							
								
							
								c706f4b04e 
								
							
								 
							
						 
						
							
							
								
								Re-esatblish 1.2.0 ABI, broken 2008-02-22 [Alexei Sheplyakov].  
							
							 
							
							 
							
							
								
 
							
							
							* src/float/input/cl_F_readparsed.cc: Add obsolete signature with index
args uintL.
* src/integer/input/cl_I_readparsed.cc: Likewise.
* src/rational/input/cl_RA_readparsed.cc: Likewise. 
							
						 
						18 years ago  
					 
				
					
						
							
							
								 
								Richard Kreckel
							
						 
						
							
							
							
								
							
								1d962ba9ca 
								
							
								 
							
						 
						
							
							
								
								Re-establish ABI, broken 2008-01-20.  
							
							 
							
							 
							
							
								
 
							
							
							* src/float/ffloat/conv/cl_FF_from_float.cc: Add obsolete signature of
cl_float_to_FF_pointer.
* src/float/dfloat/conv/cl_DF_from_double.cc: Add obsolete signature of
cl_double_to_DF_pointer. 
							
						 
						18 years ago  
					 
				
					
						
							
							
								 
								Bruno Haible
							
						 
						
							
							
							
								
							
								f3f282f3c6 
								
							
								 
							
						 
						
							
							
								
								Fix hack from 2008-01-20 that broke on ARM.  
							
							 
							
							
								
 
							
							
						 
						18 years ago  
					 
				
					
						
							
							
								 
								Richard Kreckel
							
						 
						
							
							
							
								
							
								3a8c34e9a6 
								
							
								 
							
						 
						
							
							
								
								Make index variables uintC.  
							
							 
							
							
								
 
							
							
						 
						18 years ago  
					 
				
					
						
							
							
								 
								Bruno Haible
							
						 
						
							
							
							
								
							
								758fdfc575 
								
							
								 
							
						 
						
							
							
								
								Avoid gcc warning about "unused variable".  
							
							 
							
							
								
 
							
							
						 
						18 years ago  
					 
				
					
						
							
							
								 
								Bruno Haible
							
						 
						
							
							
							
								
							
								11c6b0b290 
								
							
								 
							
						 
						
							
							
								
								Avoid gcc warnings about "statement without effect".  
							
							 
							
							
								
 
							
							
						 
						18 years ago  
					 
				
					
						
							
							
								 
								Bruno Haible
							
						 
						
							
							
							
								
							
								137d5f385f 
								
							
								 
							
						 
						
							
							
								
								Avoid gcc warnings about type-punning and "... break strict-aliasing rules".  
							
							 
							
							
								
 
							
							
						 
						18 years ago  
					 
				
					
						
							
							
								 
								Richard Kreckel
							
						 
						
							
							
							
								
							
								ce250e91fb 
								
							
								 
							
						 
						
							
							
								
								Fix linking problems on some platforms caused by inline/non-inline versions  
							
							 
							
							 
							
							
								
 
							
							
							of same functions (obsoletes MAYBE_INLINE) [by Alexei Sheplyakov]. 
							
						 
						18 years ago  
					 
				
					
						
							
							
								 
								Richard Kreckel
							
						 
						
							
							
							
								
							
								8f3cb84552 
								
							
								 
							
						 
						
							
							
								
								* Fix missing templatization of truncated series.  
							
							 
							
							
								
 
							
							
						 
						18 years ago  
					 
				
					
						
							
							
								 
								Richard Kreckel
							
						 
						
							
							
							
								
							
								76ff0ad8c1 
								
							
								 
							
						 
						
							
							
								
								Make some functions more memory efficient:  
							
							 
							
							 
							
							
								
 
							
							
							* src/float/transcendental/cl_LF_tran.h (eval_rational_series): The
        evaluation of streamed rational series may profit from shift-counting Q,
        too. Introduce a template parameter to determine whether shift-counting
        is to be used or not.
        * src/float/transcendental/cl_LF_ratseries_pqb.cc: Introduce template
        parameter.
        * src/float/transcendental/cl_LF_ratseries_pqa.cc: Likewise.
        * src/float/transcendental/cl_LF_ratseries_pqab.cc: Likewise.
        * src/float/transcendental/cl_LF_ratseries_qa.cc: Likewise.
        * src/float/transcendental/cl_LF_ratseries_qab.cc: Likewise.
        * src/float/transcendental/cl_LF_ratseries_q.cc: Likewise, added
        overload for streamed expansion.
        * src/float/transcendental/cl_LF_ratseries_qb.cc: Likewise.
        * src/float/transcendental/cl_LF_ratseries_pq.cc: Introduce template
        parameter, added overload for streamed expansion using shift-counts.
        * src/float/transcendental/cl_LF_zeta3.cc: Adapt to above changes.
        * src/float/transcendental/cl_LF_pi.cc: Likewise.
        * src/float/transcendental/cl_LF_eulerconst.cc: Likewise.
        * src/float/transcendental/cl_LF_catalanconst.cc: Likewise.
        * src/float/transcendental/cl_LF_cossin_aux.cc: Likewise.
        * src/float/transcendental/cl_LF_coshsinh_aux.cc: Likewise.
        * src/float/transcendental/cl_LF_atanh_recip.cc: Use streamed series.
        * src/float/transcendental/cl_LF_atan_recip.cc: Likewise.
        * src/float/transcendental/cl_LF_exp1.cc: Likewise.
        * src/float/transcendental/cl_LF_exp_aux.cc: Likewise.
        * src/float/transcendental/cl_LF_ratseries.cc: Removed. 
							
						 
						18 years ago  
					 
				
					
						
							
							
								 
								Richard Kreckel
							
						 
						
							
							
							
								
							
								f56b40a316 
								
							
								 
							
						 
						
							
							
								
								* Fix typos in dead code introduced in CLN 1.1.0.  
							
							 
							
							
								
 
							
							
						 
						18 years ago  
					 
				
					
						
							
							
								 
								Richard Kreckel
							
						 
						
							
							
							
								
							
								3c77def744 
								
							
								 
							
						 
						
							
							
								
								* src/float/transcendental/cl_F_lnx.cc: Make actuallen of type uintC.  
							
							 
							
							 
							
							
								
 
							
							
							* src/float/transcendental/cl_F_expx.cc: Likewise.
        * src/float/transcendental/cl_F_sinhx.cc: Likewise.
        * src/float/transcendental/cl_F_sinx.cc: Likewise. 
							
						 
						18 years ago  
					 
				
					
						
							
							
								 
								Richard Kreckel
							
						 
						
							
							
							
								
							
								e9d3c7fabf 
								
							
								 
							
						 
						
							
							
								
								* src/float/lfloat/cl_LF.h (cl_heap_lfloat): Change len type to uintC.  
							
							 
							
							
								
 
							
							
						 
						18 years ago  
					 
				
					
						
							
							
								 
								Richard Kreckel
							
						 
						
							
							
							
								
							
								a5a43ddb1b 
								
							
								 
							
						 
						
							
							
								
								Fix compilation on CYGWIN:  
							
							 
							
							 
							
							
								
 
							
							
							* src/float/transcendental/cl_LF_zeta_int.cc: Avoid leading underscores
        in variable names.
        * src/float/transcendental/cl_LF_eulerconst.cc: Likewise.
        Reported by Chris Bouchard <cbouchrd@uiuc.edu>. 
							
						 
						18 years ago  
					 
				
					
						
							
							
								 
								Richard Kreckel
							
						 
						
							
							
							
								
							
								665c18cd37 
								
							
								 
							
						 
						
							
							
								
								* */*: Convert encoding from ISO 8859-1 to UTF-8.  
							
							 
							
							
								
 
							
							
						 
						18 years ago  
					 
				
					
						
							
							
								 
								Richard Kreckel
							
						 
						
							
							
							
								
							
								962f4b052d 
								
							
								 
							
						 
						
							
							
								
								Truncated binary splitting for even more memory efficiency:  
							
							 
							
							 
							
							
								
 
							
							
							* src/float/transcendental/cl_LF_tran.h: Added new overloads. See below.
	* src/float/transcendental/cl_LF_ratseries_stream_pq.cc: Removed and
	moved everything to...
	* src/float/transcendental/cl_LF_ratseries_pq.cc: ...here. Added an
	overload for truncated expansion.
	* src/float/transcendental/cl_LF_ratseries_stream_pqa.cc: Removed and
	moved everything to...
	* src/float/transcendental/cl_LF_ratseries_pqa.cc: ...here. Added an
	overload for truncated expansion.
	* src/float/transcendental/cl_LF_ratseries_stream_pqb.cc: Removed and
	moved everything to...
	* src/float/transcendental/cl_LF_ratseries_pqb.cc: ...here. Added an
	overload for truncated expansion.
	* src/float/transcendental/cl_LF_ratseries_stream_pqab.cc: Removed and
	moved everything to...
	* src/float/transcendental/cl_LF_ratseries_pqab.cc: ...here. Added an
	overload for truncated expansion.
	* src/float/transcendental/cl_LF_ratsumseries_pqcd_aux.cc: Added
	overloads for streamed and truncated expansion.
	* src/float/transcendental/cl_LF_ratsumseries_pqcd.cc: Likewise.
	* src/float/transcendental/cl_LF_ratsumseries_stream_pqd_aux.cc: Removed
	and moved everything to...
	* src/float/transcendental/cl_LF_ratsumseries_pqd_aux.cc: ...here. Added
	an overload for truncated expansion.
	* src/float/transcendental/cl_LF_ratsumseries_stream_pqd.cc: Removed
	and moved everything to...
	* src/float/transcendental/cl_LF_ratsumseries_pqd.cc: ...here. Added an
	overload for truncated expansion.
	* src/float/transcendental/cl_LF_pi.cc: Use truncated series.
	* src/float/transcendental/cl_LF_catalanconst.cc: Likewise.
	* src/float/transcendental/cl_LF_eulerconst.cc: Likewise.
	* src/float/transcendental/cl_LF_zeta_int.cc: Likewise.
	* src/float/transcendental/cl_LF_zeta3.cc: Likewise. 
							
						 
						18 years ago  
					 
				
					
						
							
							
								 
								Richard Kreckel
							
						 
						
							
							
							
								
							
								4109ef07d7 
								
							
								 
							
						 
						
							
							
								
								More memory efficient Euler-Mascheroni constant:  
							
							 
							
							 
							
							
								
 
							
							
							* src/float/transcendental/cl_LF_tran.h (cl_pqd_series_stream): New.
* src/float/transcendental/cl_LF_ratsumseries_stream_pqd.cc: New file.
* src/float/transcendental/cl_LF_ratsumseries_stream_pqd_aux.cc: New file.
* src/float/transcendental/cl_LF_eulerconst.cc: Compute series coefficients
on demand, using a series stream object. 
							
						 
						18 years ago  
					 
				
					
						
							
							
								 
								Richard Kreckel
							
						 
						
							
							
							
								
							
								5370ad8054 
								
							
								 
							
						 
						
							
							
								
								* */*: Remove cl_boolean, cl_true, and cl_false in favor of built-in  
							
							 
							
							 
							
							
								
 
							
							
							C++ bool, true, and false. 
							
						 
						19 years ago  
					 
				
					
						
							
							
								 
								Richard Kreckel
							
						 
						
							
							
							
								
							
								c486b78a1a 
								
							
								 
							
						 
						
							
							
								
								Remove exception hooks in favor of real C++ exceptions:  
							
							 
							
							 
							
							
								
 
							
							
							* include/cln/exception.h: New file...
        * include/cln/cln.h: ...included here...
        * include/cln/rational.h: ...and here.
        * include/cln/abort.h: Removed.
        * include/cln/integer.h (ash_exception, exquo_exception): Add exception
        types.
        * include/cln/float.h (floating_point_exception,
        floating_point_nan_exception, floating_point_overflow_exception,
        floating_point_underflow_exception): Likewise.
        * include/cln/number_io.h (read_number_exception,
        read_number_bad_syntax_exception, read_number_junk_exception,
        read_number_eof_exception): Likewise.
        * include/cln/object.h (CL_DEFINE_CONVERTER): Replace dynamic assertion
        with a compile-time assertion.
        * include/cln/GV.h: Replace nonreturning functions with exceptions.
        * include/cln/modinteger.h: Likewise.
        * include/cln/SV.h: Likewise.
        * include/cln/ring.h: Likewise.
        * include/cln/string.h: Likewise.
        * include/cln/univpoly.h: Likewise.
        * src/base/cl_abort.cc: Removed.
        * src/base/cl_N_err_d0.cc: Removed.
        * src/base/cl_d0_exception.cc: New file.
        * src/base/cl_as_err.cc: Removed.
        * src/base/cl_as_exception.cc: New file.
        * src/base/cl_notreached.cc: Removed.
        * src/base/cl_notreached_exception.cc: New file.
        * src/base/input/cl_read_err_bad.cc: Removed.
        * src/base/input/cl_read_bad_syntax_exception.cc: New file.
        * src/base/input/cl_read_err_junk.cc: Removed.
        * src/base/input/cl_read_junk_exception.cc: New file.
        * src/base/input/cl_read_err_eof.cc: Removed.
        * src/base/input/cl_read_eof_exception.cc: New file.
        * src/base/cl_N.h (cl_as_error): Removed (see cln/exception.h).
        * src/base/macros.h (NOTREACHED): Throw.
        * src/base/cl_malloc.cc (xmalloc): Throw.
        * src/base/digitseq/cl_2DS_div.cc: Throw.
        * src/base/digitseq/cl_DS_div.cc: Throw.
        * src/base/digitseq/cl_DS_mul.cc: Throw.
        * src/base/digitseq/cl_DS_mul_fftc.h: Throw.
        * src/base/digitseq/cl_DS_mul_fftcs.h: Throw.
        * src/base/digitseq/cl_DS_mul_fftm.h: Throw.
        * src/base/digitseq/cl_DS_mul_fftp.h: Throw.
        * src/base/digitseq/cl_DS_mul_fftp3.h: Throw.
        * src/base/digitseq/cl_DS_mul_fftp3m.h: Throw.
        * src/base/digitseq/cl_DS_mul_fftr.h: Throw.
        * src/base/digitseq/cl_DS_mul_nuss.h: Throw.
        * src/base/digitseq/cl_DS_recipsqrt.cc: Throw.
        * src/base/digitseq/cl_DS_sqrt.cc: Throw.
        * src/base/hash/cl_hash.h: Throw.
        * src/base/hash/cl_hash1.h: Throw.
        * src/base/hash/cl_hash1weak.h: Throw.
        * src/base/hash/cl_hash2.h: Throw.
        * src/base/hash/cl_hash2weak.h: Throw.
        * src/base/hash/cl_hashset.h: Throw.
        * src/base/hash/cl_hashuniq.h: Throw.
        * src/base/hash/cl_hashuniqweak.h: Throw.
        * src/base/proplist/cl_pl_add.cc: Throw.
        * src/base/ring/cl_no_ring.cc: Throw.
        * src/base/string/cl_spushstring.h: Throw.
        * src/base/symbol/cl_symbol.cc: Throw.
        * src/integer/bitwise/cl_I_ash.h: Removed (see cln/integer.h.)
        * src/integer/bitwise/cl_I_asherr.cc: Removed.
        * src/integer/bitwise/cl_I_ash_exception.cc: New file.
        * src/integer/division/cl_I_exquoerr.cc: Removed.
        * src/integer/division/cl_I_exquo_exception.cc: New file.
        * src/integer/cl_I.h: Throw.
        * src/integer/division/cl_I_exquopos.cc: Throw.
        * src/integer/bitwise/cl_I_logbitp_I.cc: Throw.
        * src/integer/bitwise/cl_I_ash.cc: Throw.
        * src/integer/bitwise/cl_I_ash_I.cc: Throw.
        * src/integer/division/cl_I_exquo.cc: Throw.
        * src/integer/gcd/cl_I_gcd_aux2.cc: Throw.
        * src/integer/conv/cl_I_to_L.cc: Throw.
        * src/integer/conv/cl_I_to_Q.cc: Throw.
        * src/integer/conv/cl_I_to_UL.cc: Throw.
        * src/integer/conv/cl_I_to_UQ.cc: Throw.
        * src/integer/conv/cl_I_to_digits.cc: Throw.
        * src/integer/elem/cl_I_div.cc: Throw.
        * src/integer/algebraic/cl_I_sqrt.cc: Throw.
        * src/integer/input/cl_I_read.cc: Throw.
        * src/integer/input/cl_I_read_stream.cc: Throw.
        * src/integer/misc/cl_I_as.cc: Throw.
        * src/rational/elem/cl_RA_from_I_I_div.cc: Throw.
        * src/rational/elem/cl_RA_recip.cc: Throw.
        * src/rational/input/cl_RA_read.cc: Throw.
        * src/rational/input/cl_RA_read_stream.cc: Throw.
        * src/rational/input/cl_RA_readparsed.cc: Throw.
        * src/rational/misc/cl_RA_as.cc: Throw.
        * src/float/base/cl_F_err_nan.cc: Removed.
        * src/float/base/cl_F_nan_exception.cc: New file.
        * src/float/base/cl_F_err_un.cc: Removed.
        * src/float/base/cl_F_underflow_exception.cc: New file.
        * src/float/base/cl_F_err_ov.cc: Removed.
        * src/float/base/cl_F_overflow_exception.cc: New file.
        * src/float/cl_F.h (cl_error_floating_point_nan,
        cl_error_floating_point_overflow, cl_error_floating_point_underflow):
        Removed (see cln/float.h.)
        * src/float/sfloat/cl_SF.h: Throw.
        * src/float/sfloat/elem/cl_SF_div.cc: Throw.
        * src/float/sfloat/elem/cl_SF_from_RA.cc: Throw.
        * src/float/sfloat/elem/cl_SF_scale.cc: Throw.
        * src/float/sfloat/elem/cl_SF_scale_I.cc: Throw.
        * src/float/sfloat/misc/cl_SF_as.cc: Throw.
        * src/float/ffloat/cl_FF.h: Throw.
        * src/float/ffloat/conv/cl_FF_from_float.cc: Throw.
        * src/float/ffloat/elem/cl_FF_div.cc: Throw.
        * src/float/ffloat/elem/cl_FF_from_RA.cc: Throw.
        * src/float/ffloat/elem/cl_FF_scale.cc: Throw.
        * src/float/ffloat/elem/cl_FF_scale_I.cc: Throw.
        * src/float/ffloat/misc/cl_FF_as.cc: Throw.
        * src/float/dfloat/cl_DF.h: Throw.
        * src/float/dfloat/conv/cl_DF_from_double.cc: Throw.
        * src/float/dfloat/elem/cl_DF_div.cc: Throw.
        * src/float/dfloat/elem/cl_DF_from_RA.cc: Throw.
        * src/float/dfloat/elem/cl_DF_scale.cc: Throw.
        * src/float/dfloat/elem/cl_DF_scale_I.cc: Throw.
        * src/float/dfloat/misc/cl_DF_as.cc: Throw.
        * src/float/lfloat/algebraic/cl_LF_sqrt.cc: Throw.
        * src/float/lfloat/elem/cl_LF_1plus.cc: Throw.
        * src/float/lfloat/elem/cl_LF_I_div.cc: Throw.
        * src/float/lfloat/elem/cl_LF_I_mul.cc: Throw.
        * src/float/lfloat/elem/cl_LF_div.cc: Throw.
        * src/float/lfloat/elem/cl_LF_from_I.cc: Throw.
        * src/float/lfloat/elem/cl_LF_mul.cc: Throw.
        * src/float/lfloat/elem/cl_LF_scale.cc: Throw.
        * src/float/lfloat/elem/cl_LF_scale_I.cc: Throw.
        * src/float/lfloat/elem/cl_LF_square.cc: Throw.
        * src/float/lfloat/misc/cl_LF_as.cc: Throw.
        * src/float/lfloat/misc/cl_LF_shorten.cc: Throw.
        * src/float/lfloat/misc/cl_LF_shortenrel.cc: Throw.
        * src/float/lfloat/misc/cl_LF_shortenwith.cc: Throw.
        * src/float/input/cl_F_read.cc: Throw.
        * src/float/input/cl_F_read_stream.cc: Throw.
        * src/float/misc/cl_F_as.cc: Throw.
        * src/float/misc/cl_F_shortenrel.cc: Throw.
        * src/float/transcendental/cl_LF_coshsinh_aux.cc: Throw.
        * src/float/transcendental/cl_LF_cossin_aux.cc: Throw.
        * src/float/transcendental/cl_LF_exp_aux.cc: Throw.
        * src/float/transcendental/cl_LF_ratseries_a.cc: Throw.
        * src/float/transcendental/cl_LF_ratseries_ab.cc: Throw.
        * src/float/transcendental/cl_LF_ratseries_b.cc: Throw.
        * src/float/transcendental/cl_LF_ratseries_p.cc: Throw.
        * src/float/transcendental/cl_LF_ratseries_pa.cc: Throw.
        * src/float/transcendental/cl_LF_ratseries_pab.cc: Throw.
        * src/float/transcendental/cl_LF_ratseries_pb.cc: Throw.
        * src/float/transcendental/cl_LF_ratseries_pq.cc: Throw.
        * src/float/transcendental/cl_LF_ratseries_pqa.cc: Throw.
        * src/float/transcendental/cl_LF_ratseries_pqab.cc: Throw.
        * src/float/transcendental/cl_LF_ratseries_pqb.cc: Throw.
        * src/float/transcendental/cl_LF_ratseries_q.cc: Throw.
        * src/float/transcendental/cl_LF_ratseries_qa.cc: Throw.
        * src/float/transcendental/cl_LF_ratseries_qab.cc: Throw.
        * src/float/transcendental/cl_LF_ratseries_qb.cc: Throw.
        * src/float/transcendental/cl_LF_ratseries_stream_pq.cc: Throw.
        * src/float/transcendental/cl_LF_ratseries_stream_pqa.cc: Throw.
        * src/float/transcendental/cl_LF_ratseries_stream_pqab.cc: Throw.
        * src/float/transcendental/cl_LF_ratseries_stream_pqb.cc: Throw.
        * src/float/transcendental/cl_LF_ratsumseries_pqcd_aux.cc: Throw.
        * src/float/transcendental/cl_LF_ratsumseries_pqd.cc: Throw.
        * src/float/transcendental/cl_LF_ratsumseries_pqd_aux.cc: Throw.
        * src/float/transcendental/cl_LF_zeta_int.cc: Throw.
        * src/real/elem/cl_R_div.cc: Throw.
        * src/real/format-output/cl_fmt_cardinal.cc: Throw.
        * src/real/format-output/cl_fmt_newroman.cc: Throw.
        * src/real/format-output/cl_fmt_oldroman.cc: Throw.
        * src/real/input/cl_R_read.cc: Throw.
        * src/real/input/cl_R_read_stream.cc: Throw.
        * src/real/misc/cl_R_as.cc: Throw.
        * src/real/random/cl_R_random.cc: Throw.
        * src/real/transcendental/cl_R_atan2.cc: Throw.
        * src/real/transcendental/cl_R_log.cc: Throw.
        * src/complex/input/cl_N_read.cc: Throw.
        * src/complex/input/cl_N_read_stream.cc: Throw.
        * src/complex/misc/cl_N_as.cc: Throw.
        * src/complex/transcendental/cl_C_atanh_aux.cc: Throw.
        * src/complex/transcendental/cl_C_expt_C.cc: Throw.
        * src/complex/transcendental/cl_C_log.cc: Throw.
        * src/complex/transcendental/cl_C_log2.cc: Throw.
        * src/numtheory/cl_nt_cornacchia1.cc: Throw.
        * src/numtheory/cl_nt_cornacchia4.cc: Throw.
        * src/numtheory/cl_nt_isprobprime.cc: Throw.
        * src/numtheory/cl_nt_jacobi.cc: Throw.
        * src/numtheory/cl_nt_jacobi_low.cc: Throw.
        * src/numtheory/cl_nt_sqrtmodp.cc: Throw.
        * src/modinteger/cl_MI.cc: Throw.
        * src/modinteger/cl_MI_int.h: Throw.
        * src/modinteger/cl_MI_montgom.h: Throw.
        * src/modinteger/cl_MI_pow2.h: Throw.
        * src/modinteger/cl_MI_rshift.cc: Throw.
        * src/modinteger/cl_MI_std.h: Throw.
        * src/polynomial/elem/cl_UP_GF2.h: Throw.
        * src/polynomial/elem/cl_UP_MI.h: Throw.
        * src/polynomial/elem/cl_UP_gen.h: Throw.
        * src/polynomial/elem/cl_UP_named.cc: Throw.
        * src/polynomial/elem/cl_UP_no_ring.cc (uninitialized_error,
        uninitialized_ring): Removed (see cln/ring.h.)
        * src/polynomial/elem/cl_UP_number.h: Throw.
        * src/polynomial/elem/cl_UP_unnamed.cc: Throw.
        * src/vector/cl_GV_I.cc: Throw.
        * src/vector/cl_GV_number.cc: Throw.
        * tests/timediv2adic-compare.cc: Use default abort(), not cl_abort().
        * tests/timeprint-compare.cc: Likewise.
        * tests/timerecip2adic-compare.cc: Likewise.
        * doc/cln.tex: Document the exception classes.
        * examples/contfrac.cc: Use try/catch instead of setjmp/longjmp.
        * INSTALL: undocument -fno-exceptions.
        * README: Add exceptions to list of used C++ features. 
							
						 
						19 years ago  
					 
				
					
						
							
							
								 
								Richard Kreckel
							
						 
						
							
							
							
								
							
								749cf017b2 
								
							
								 
							
						 
						
							
							
								
								* include/cln/integer.h (cl_I_to_E, cl_I_to_UE): New functions.  
							
							 
							
							 
							
							
								
 
							
							
							* src/float/transcendental/cl_LF_exp_aux.cc: Make lq argument an uintE.
        * src/float/transcendental/cl_LF_cossin_aux.cc: Likewise.
        * src/float/transcendental/cl_LF_coshsinh_aux.cc: Likewise.
        * src/float/transcendental/cl_F_tran.h: Change declaration of lq.
        * src/float/transcendental/cl_F_lnx.cc: Fix some exponent types.
        * src/float/transcendental/cl_F_expx.cc: Likewise.
        * src/float/transcendental/cl_F_sinh.cc: Likewise.
        * src/float/transcendental/cl_F_atanx.cc: Likewise.
        * src/float/transcendental/cl_F_coshsinh.cc: Likewise.
        * src/float/transcendental/cl_LF_cossin.cc: Likewise.
        * src/float/transcendental/cl_LF_coshsinh.cc: Likewise. 
							
						 
						19 years ago  
					 
				
					
						
							
							
								 
								Bruno Haible
							
						 
						
							
							
							
								
							
								308a067c42 
								
							
								 
							
						 
						
							
							
								
								Add reference to Lupas' paper.  
							
							 
							
							
								
 
							
							
						 
						19 years ago  
					 
				
					
						
							
							
								 
								Richard Kreckel
							
						 
						
							
							
							
								
							
								38f5f03b3f 
								
							
								 
							
						 
						
							
							
								
								More memory efficient constants:  
							
							 
							
							 
							
							
								
 
							
							
							* src/float/transcendental/cl_LF_pi.cc (compute_pi_ramanujan_163_fast):
        Compute series coefficients on demand, using a series stream object.
        * src/float/transcendental/cl_LF_zeta3.cc (zeta3): Likewise.
        * src/float/transcendental/cl_LF_catalanconst.cc
        (compute_catalanconst_ramanujan_fast): Likewise.
        (compute_catalanconst_lupas): New function.
        (compute_catalanconst): Simplify, based on new benchmark. 
							
						 
						19 years ago  
					 
				
					
						
							
							
								 
								Richard Kreckel
							
						 
						
							
							
							
								
							
								e528307482 
								
							
								 
							
						 
						
							
							
								
								Extend the exponent range from 32 bits to 64 bits on selected platforms.  
							
							 
							
							 
							
							
								
 
							
							
							* include/cln/number.h: Add signatures for operations with long long.
        * include/cln/complex_class.h: Likewise.
        * include/cln/real_class.h: Likewise.
        * include/cln/real.h: Likewise.
        * include/cln/rational_class.h: Likewise.
        * include/cln/rational.h: Likewise.
        * include/cln/integer_class.h: Likewise.
        * include/cln/integer.h: Likewise.
        * include/cln/float.h: Likewise.
        * include/cln/lfloat.h: Likewise.
        * include/cln/types.h (sintE and uintE): New types for exponents.
        * include/cln/*float.h: Use the new types for exponents.
        * include/cln/floatformat.h (float_format_t): Make underlying type
        compatible with sintE.
        * doc/cln.tex: Document changed float_exponent return value.
        * src/float/cl_F.h: Likewise.
        * src/float/ffloat/misc/cl_FF_exponent.cc: Likewise.
        * src/float/input/cl_F_read.cc: Likewise.
        * src/float/lfloat/cl_LF.h: Likewise.
        * src/float/lfloat/cl_LF_impl.h: Likewise.
        * src/float/lfloat/algebraic/cl_LF_sqrt.cc: Likewise.
        * src/float/lfloat/elem/cl_LF_1plus.cc: Likewise.
        * src/float/lfloat/elem/cl_LF_I_div.cc: Likewise.
        * src/float/lfloat/elem/cl_LF_I_mul.cc: Likewise.
        * src/float/lfloat/elem/cl_LF_compare.cc: Likewise.
        * src/float/lfloat/elem/cl_LF_div.cc: Likewise.
        * src/float/lfloat/elem/cl_LF_from_I.cc: Likewise.
        * src/float/lfloat/elem/cl_LF_fround.cc: Likewise.
        * src/float/lfloat/elem/cl_LF_ftrunc.cc: Likewise.
        * src/float/lfloat/elem/cl_LF_futrunc.cc: Likewise.
        * src/float/lfloat/elem/cl_LF_mul.cc: Likewise.
        * src/float/lfloat/elem/cl_LF_scale.cc: Likewise.
        * src/float/lfloat/elem/cl_LF_scale_I.cc: Likewise.
        * src/float/lfloat/elem/cl_LF_square.cc: Likewise.
        * src/float/lfloat/elem/cl_LF_to_I.cc: Likewise.
        * src/float/lfloat/misc/cl_LF_decode.cc: Likewise.
        * src/float/lfloat/misc/cl_LF_exponent.cc: Likewise.
        * src/float/lfloat/misc/cl_LF_idecode.cc: Likewise.
        * src/float/lfloat/misc/cl_LF_shortenrel.cc: Likewise.
        * src/float/lfloat/misc/cl_LF_shortenwith.cc: Likewise.
        * src/float/misc/cl_F_decode.cc: Likewise.
        * src/float/misc/cl_F_exponent.cc: Likewise.
        * src/float/misc/cl_F_shortenrel.cc: Likewise.
        * src/float/misc/cl_float_format.cc: Likewise.
        * src/float/output/cl_F_dprint.cc: Likewise.
        * src/float/sfloat/misc/cl_SF_exponent.cc: Likewise.
        * src/float/transcendental/cl_F_atanhx.cc: Likewise.
        * src/float/transcendental/cl_F_atanx.cc: Likewise.
        * src/float/transcendental/cl_F_cosh.cc: Likewise.
        * src/float/transcendental/cl_F_expx.cc: Likewise.
        * src/float/transcendental/cl_F_lnx.cc: Likewise.
        * src/float/transcendental/cl_F_sinhx.cc: Likewise.
        * src/float/transcendental/cl_F_sinx.cc: Likewise.
        * src/float/transcendental/cl_LF_pi.cc: Likewise.
        * src/integer/cl_I.h: Likewise.
        * src/complex/algebraic/cl_LF_hypot.cc: Likewise.
        * src/complex/elem/division/cl_C_LF_recip.cc: Likewise.
        * src/float/dfloat/misc/cl_DF_exponent.cc: Likewise.
        * src/integer/conv/cl_I_from_Q2.cc: Added.
        * src/base/cl_low.h (isqrtC): New function, for 64 bit falls back to...
        * src/base/low/cl_low_isqrt.cc (isqrt): ...this new implementation.
        * src/base/cl_macros.h (bitc): Make sure 64 bit is used if required by
        exponent operations.
        * examples/pi.cc: Support more than 646456614 decimal digits. 
							
						 
						19 years ago  
					 
				
					
						
							
							
								 
								Richard Kreckel
							
						 
						
							
							
							
								
							
								c84c6db5d5 
								
							
								 
							
						 
						
							
							
								
								2006-04-25  Bruno Haible  <bruno@clisp.org>  
							
							 
							
							 
							
							
								
 
							
							
							Richard B. Kreckel  <kreckel@ginac.de>
	Make it theoretically possible to use bignums and long-floats with
	more than 2^32 significant digits or bits.
	* doc/cln.tex (logcount): Change return type to uintC.
	(struct cl_byte): Change elements to uintC.
	(integer_length, ord2, power2p): Change return type to uintC.
	(scale_float): Change argument type to sintC.
	(float_digits, float_precision): Change return type to uintC.
	* examples/atan_recip.cc: Use uintC instead of uintL where appropriate.
	* examples/atanh_recip.cc: Likewise.
	* include/cln/GV.h: Likewise.
	* include/cln/GV_complex.h: Likewise.
	* include/cln/GV_integer.h: Likewise.
	* include/cln/GV_modinteger.h: Likewise.
	* include/cln/GV_number.h: Likewise.
	* include/cln/GV_rational.h: Likewise.
	* include/cln/GV_real.h: Likewise.
	* include/cln/SV.h: Likewise.
	* include/cln/SV_complex.h: Likewise.
	* include/cln/SV_integer.h: Likewise.
	* include/cln/SV_number.h: Likewise.
	* include/cln/SV_rational.h: Likewise.
	* include/cln/SV_real.h: Likewise.
	* include/cln/SV_ringelt.h: Likewise.
	* include/cln/dfloat.h: Likewise.
	* include/cln/ffloat.h: Likewise.
	* include/cln/float.h: Likewise.
	* include/cln/integer.h: Likewise.
	* include/cln/lfloat.h: Likewise.
	* include/cln/modinteger.h: Likewise.
	* include/cln/sfloat.h: Likewise.
	* src/base/cl_low.h (integerlengthC): New macro.
	* src/base/digitseq/cl_2DS_div.cc: Use uintC instead of uintL where
	appropriate.
	* src/base/digitseq/cl_2DS_recip.cc: Likewise.
	* src/base/digitseq/cl_DS.h: Likewise.
	* src/base/digitseq/cl_DS_mul.c: Likewise.
	* src/base/digitseq/cl_DS_mul_fftc.h: Likewise.
	* src/base/digitseq/cl_DS_mul_fftcs.h: Likewise.
	* src/base/digitseq/cl_DS_mul_fftm.h: Likewise.
	* src/base/digitseq/cl_DS_mul_fftp.h: Likewise.
	* src/base/digitseq/cl_DS_mul_fftp3.h: Likewise.
	* src/base/digitseq/cl_DS_mul_fftp3m.h: Likewise.
	* src/base/digitseq/cl_DS_mul_fftr.h: Likewise.
	* src/base/digitseq/cl_DS_mul_kara.h: Likewise.
	* src/base/digitseq/cl_DS_mul_nuss.h: Likewise.
	* src/base/digitseq/cl_DS_recip.cc: Likewise.
	* src/base/digitseq/cl_DS_recipsqrt.cc: Likewise.
	* src/base/digitseq/cl_DS_sqrt.cc: Likewise.
	* src/base/digitseq/cl_DS_trandom.cc: Likewise.
	* src/complex/input/cl_N_read.cc: Likewise.
	* src/complex/transcendental/cl_C_asinh_aux.cc: Likewise.
	* src/complex/transcendental/cl_C_expt_C.cc: Likewise.
	* src/float/cl_F.h: Likewise.
	* src/float/conv/cl_F_from_F_f.cc: Likewise.
	* src/float/conv/cl_F_from_I_f.cc: Likewise.
	* src/float/conv/cl_F_from_RA_f.cc: Likewise.
	* src/float/dfloat/conv/cl_I_to_double.cc: Likewise.
	* src/float/dfloat/conv/cl_RA_to_double.cc: Likewise.
	* src/float/dfloat/elem/cl_DF_from_I.cc: Likewise.
	* src/float/dfloat/elem/cl_DF_from_RA.cc: Likewise.
	* src/float/dfloat/elem/cl_DF_scale.cc: Likewise.
	* src/float/dfloat/misc/cl_DF_digits.cc: Likewise.
	* src/float/dfloat/misc/cl_DF_precision.cc: Likewise.
	* src/float/elem/cl_F_scale.cc: Likewise.
	* src/float/ffloat/conv/cl_I_to_float.cc: Likewise.
	* src/float/ffloat/conv/cl_RA_to_float.cc: Likewise.
	* src/float/ffloat/elem/cl_FF_from_I.cc: Likewise.
	* src/float/ffloat/elem/cl_FF_from_RA.cc: Likewise.
	* src/float/ffloat/elem/cl_FF_scale.cc: Likewise.
	* src/float/ffloat/misc/cl_FF_digits.cc: Likewise.
	* src/float/ffloat/misc/cl_FF_precision.cc: Likewise.
	* src/float/input/cl_F_read.cc: Likewise.
	* src/float/lfloat/algebraic/cl_LF_sqrt.cc: Likewise.
	* src/float/lfloat/elem/cl_LF_1plus.cc: Likewise.
	* src/float/lfloat/elem/cl_LF_I_div.cc: Likewise.
	* src/float/lfloat/elem/cl_LF_I_mul.cc: Likewise.
	* src/float/lfloat/elem/cl_LF_div.cc: Likewise.
	* src/float/lfloat/elem/cl_LF_from_I.cc: Likewise.
	* src/float/lfloat/elem/cl_LF_from_RA.cc: Likewise.
	* src/float/lfloat/elem/cl_LF_fround.cc: Likewise.
	* src/float/lfloat/elem/cl_LF_ftrunc.cc: Likewise.
	* src/float/lfloat/elem/cl_LF_futrunc.cc: Likewise.
	* src/float/lfloat/elem/cl_LF_scale.cc: Likewise.
	* src/float/lfloat/elem/cl_LF_to_I.cc: Likewise.
	* src/float/lfloat/misc/cl_LF_digits.cc: Likewise.
	* src/float/lfloat/misc/cl_LF_idecode.cc: Likewise.
	* src/float/lfloat/misc/cl_LF_leninc.cc: Likewise.
	* src/float/lfloat/misc/cl_LF_lenincx.cc: Likewise.
	* src/float/lfloat/misc/cl_LF_precision.cc: Likewise.
	* src/float/lfloat/misc/cl_LF_shortenrel.cc: Likewise.
	* src/float/lfloat/misc/cl_LF_shortenwith.cc: Likewise.
	* src/float/misc/cl_F_digits.cc: Likewise.
	* src/float/misc/cl_F_epsneg.cc: Likewise.
	* src/float/misc/cl_F_epspos.cc: Likewise.
	* src/float/misc/cl_F_leastneg.cc: Likewise.
	* src/float/misc/cl_F_leastpos.cc: Likewise.
	* src/float/misc/cl_F_mostneg.cc: Likewise.
	* src/float/misc/cl_F_mostpos.cc: Likewise.
	* src/float/misc/cl_F_precision.cc: Likewise.
	* src/float/misc/cl_F_rational.cc: Likewise.
	* src/float/misc/cl_F_shortenrel.cc: Likewise.
	* src/float/output/cl_F_dprint.cc: Likewise.
	* src/float/random/cl_F_random.cc: Likewise.
	* src/float/sfloat/elem/cl_SF_from_I.cc: Likewise.
	* src/float/sfloat/elem/cl_SF_from_RA.cc: Likewise.
	* src/float/sfloat/elem/cl_SF_scale.cc: Likewise.
	* src/float/sfloat/misc/cl_SF_digits.cc: Likewise.
	* src/float/sfloat/misc/cl_SF_precision.cc: Likewise.
	* src/float/transcendental/cl_F_atanhx.cc: Likewise.
	* src/float/transcendental/cl_F_atanx.cc: Likewise.
	* src/float/transcendental/cl_F_catalanconst_f.cc: Likewise.
	* src/float/transcendental/cl_F_cos.cc: Likewise.
	* src/float/transcendental/cl_F_cosh.cc: Likewise.
	* src/float/transcendental/cl_F_coshsinh.cc: Likewise.
	* src/float/transcendental/cl_F_cossin.cc: Likewise.
	* src/float/transcendental/cl_F_eulerconst_f.cc: Likewise.
	* src/float/transcendental/cl_F_exp1_f.cc: Likewise.
	* src/float/transcendental/cl_F_expx.cc: Likewise.
	* src/float/transcendental/cl_F_ln10_f.cc: Likewise.
	* src/float/transcendental/cl_F_ln2_f.cc: Likewise.
	* src/float/transcendental/cl_F_lnx.cc: Likewise.
	* src/float/transcendental/cl_F_pi_f.cc: Likewise.
	* src/float/transcendental/cl_F_sin.cc: Likewise.
	* src/float/transcendental/cl_F_sinh.cc: Likewise.
	* src/float/transcendental/cl_F_sinhx.cc: Likewise.
	* src/float/transcendental/cl_F_sinx.cc: Likewise.
	* src/float/transcendental/cl_F_tran.h: Likewise.
	* src/float/transcendental/cl_F_zeta_int_f.cc: Likewise.
	* src/float/transcendental/cl_LF_atan_recip.cc: Likewise.
	* src/float/transcendental/cl_LF_atanh_recip.cc: Likewise.
	* src/float/transcendental/cl_LF_catalanconst.cc: Likewise.
	* src/float/transcendental/cl_LF_coshsinh_aux.cc: Likewise.
	* src/float/transcendental/cl_LF_cossin_aux.cc: Likewise.
	* src/float/transcendental/cl_LF_eulerconst.cc: Likewise.
	* src/float/transcendental/cl_LF_exp1.cc: Likewise.
	* src/float/transcendental/cl_LF_exp_aux.cc: Likewise.
	* src/float/transcendental/cl_LF_pi.cc: Likewise.
	* src/float/transcendental/cl_LF_ratseries.cc: Likewise.
	* src/float/transcendental/cl_LF_ratseries_.cc: Likewise.
	* src/float/transcendental/cl_LF_ratseries_a.cc: Likewise.
	* src/float/transcendental/cl_LF_ratseries_ab.cc: Likewise.
	* src/float/transcendental/cl_LF_ratseries_b.cc: Likewise.
	* src/float/transcendental/cl_LF_ratseries_p.cc: Likewise.
	* src/float/transcendental/cl_LF_ratseries_pa.cc: Likewise.
	* src/float/transcendental/cl_LF_ratseries_pab.cc: Likewise.
	* src/float/transcendental/cl_LF_ratseries_pb.cc: Likewise.
	* src/float/transcendental/cl_LF_ratseries_pq.cc: Likewise.
	* src/float/transcendental/cl_LF_ratseries_pqa.cc: Likewise.
	* src/float/transcendental/cl_LF_ratseries_pqab.cc: Likewise.
	* src/float/transcendental/cl_LF_ratseries_pqb.cc: Likewise.
	* src/float/transcendental/cl_LF_ratseries_q.cc: Likewise.
	* src/float/transcendental/cl_LF_ratseries_qa.cc: Likewise.
	* src/float/transcendental/cl_LF_ratseries_qab.cc: Likewise.
	* src/float/transcendental/cl_LF_ratseries_qb.cc: Likewise.
	* src/float/transcendental/cl_LF_ratseries_stream_pq.cc: Likewise.
	* src/float/transcendental/cl_LF_ratseries_stream_pqa.cc: Likewise.
	* src/float/transcendental/cl_LF_ratseries_stream_pqab.cc: Likewise.
	* src/float/transcendental/cl_LF_ratseries_stream_pqb.cc: Likewise.
	* src/float/transcendental/cl_LF_ratsumseries_pqcd.cc: Likewise.
	* src/float/transcendental/cl_LF_ratsumseries_pqcd_aux.cc: Likewise.
	* src/float/transcendental/cl_LF_ratsumseries_pqd.cc: Likewise.
	* src/float/transcendental/cl_LF_ratsumseries_pqd_aux.cc: Likewise.
	* src/float/transcendental/cl_LF_tran.h: Likewise.
	* src/float/transcendental/cl_LF_zeta3.cc: Likewise.
	* src/float/transcendental/cl_LF_zeta_int.cc: Likewise.
	* src/integer/algebraic/cl_I_rootp_I.cc: Likewise.
	* src/integer/algebraic/cl_I_rootp_aux.cc: Likewise.
	* src/integer/bitwise/cl_I_ash.cc: Likewise.
	* src/integer/bitwise/cl_I_ash_I.cc: Likewise.
	* src/integer/bitwise/cl_I_byte.h: Likewise.
	* src/integer/bitwise/cl_I_fullbyte.cc: Likewise.
	* src/integer/bitwise/cl_I_ilength.cc: Likewise.
	* src/integer/bitwise/cl_I_ldb.cc: Likewise.
	* src/integer/bitwise/cl_I_ldbtest.cc: Likewise.
	* src/integer/bitwise/cl_I_ldbx.cc: Likewise.
	* src/integer/bitwise/cl_I_ldbxtest.cc: Likewise.
	* src/integer/bitwise/cl_I_logbitp.cc: Likewise.
	* src/integer/bitwise/cl_I_logbitp_I.cc: Likewise.
	* src/integer/bitwise/cl_I_logcount.cc: Likewise.
	* src/integer/bitwise/cl_I_mkf.cc: Likewise.
	* src/integer/bitwise/cl_I_mkfx.cc: Likewise.
	* src/integer/cl_I.h: Likewise.
	* src/integer/conv/cl_I_to_digits.cc: Likewise.
	* src/integer/conv/cl_I_digits_need.cc: Likewise.
	* src/integer/conv/cl_I_from_digits.cc: Likewise.
	* src/integer/gcd/cl_I_gcd.cc: Likewise.
	* src/integer/gcd/cl_I_xgcd.cc: Likewise.
	* src/integer/misc/cl_I_eqhashcode.cc: Likewise.
	* src/integer/misc/cl_I_ord2.cc: Likewise.
	* src/integer/misc/cl_I_power2p.cc: Likewise.
	* src/integer/output/cl_I_cached_power.h (cached_power_table): allow
	for 40 elements.
	* src/integer/output/cl_I_decstring.cc: Use uintC instead of uintL
	where appropriate.
	* src/integer/output/cl_I_print.cc: Likewise.
	* src/integer/output/cl_I_print_string.cc: Likewise.
	* src/modinteger/cl_MI.cc: Likewise.
	* src/modinteger/cl_MI_lshift.cc: Likewise.
	* src/modinteger/cl_MI_montgom.h: Likewise.
	* src/modinteger/cl_MI_pow2.h: Likewise.
	* src/modinteger/cl_MI_pow2m1.h: Likewise.
	* src/modinteger/cl_MI_pow2p1.h: Likewise.
	* src/modinteger/cl_MI_rshift.cc: Likewise.
	* src/modinteger/cl_MI_std.h: Likewise.
	* src/numtheory/cl_IF_millerrabin.cc: Likewise.
	* src/numtheory/cl_nt_isprobprime.cc: Likewise.
	* src/numtheory/cl_nt_sqrtmodp.cc: Likewise.
	* src/polynomial/elem/cl_UP_GF2.h: Likewise.
	* src/real/conv/cl_F_from_R_f.cc: Likewise.
	* src/real/format-output/cl_fmt_floatstring.cc: Likewise.
	* src/real/input/cl_R_read.cc: Likewise.
	* src/vector/cl_GV_I.cc: Likewise.
	* src/vector/cl_GV_I_copy.cc: Likewise.
	* src/vector/cl_GV_number.cc: Likewise.
	* src/vector/cl_GV_number_copy.cc: Likewise.
	* src/vector/cl_SV_copy.cc: Likewise.
	* src/vector/cl_SV_number.cc: Likewise.
	* src/vector/cl_SV_ringelt.cc: Likewise.
	* tests/main.cc: Likewise.
	* tests/test_I_ilength.cc: Likewise.
	* tests/test_I_ord2.cc: Likewise. 
							
						 
						20 years ago  
					 
				
					
						
							
							
								 
								Richard Kreckel
							
						 
						
							
							
							
								
							
								6fdd87f5e7 
								
							
								 
							
						 
						
							
							
								
								* Cumulative patch including Bruno's work on large fixnums on 64 bit machines.  
							
							 
							
							
								
 
							
							
						 
						20 years ago  
					 
				
					
						
							
							
								 
								Bruno Haible
							
						 
						
							
							
							
								
							
								c4e47eb4f1 
								
							
								 
							
						 
						
							
							
								
								Make the long-float overflow check work on 64-bit platforms.  
							
							 
							
							
								
 
							
							
						 
						20 years ago  
					 
				
					
						
							
							
								 
								Richard Kreckel
							
						 
						
							
							
							
								
							
								7792c43d12 
								
							
								 
							
						 
						
							
							
								
								* 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. 
							
						 
						21 years ago  
					 
				
					
						
							
							
								 
								Richard Kreckel
							
						 
						
							
							
							
								
							
								541905ab43 
								
							
								 
							
						 
						
							
							
								
								* Remove unused labels.  
							
							 
							
							
								
 
							
							
						 
						22 years ago  
					 
				
					
						
							
							
								 
								Richard Kreckel
							
						 
						
							
							
							
								
							
								a8369235e2 
								
							
								 
							
						 
						
							
							
								
								* Change all C include headers to ISO style within C++ code.  
							
							 
							
							
								
 
							
							
						 
						22 years ago  
					 
				
					
						
							
							
								 
								Bruno Haible
							
						 
						
							
							
							
								
							
								ffca5a5837 
								
							
								 
							
						 
						
							
							
								
								Fix a bug occurring with extremely high exponents.  
							
							 
							
							
								
 
							
							
						 
						22 years ago  
					 
				
					
						
							
							
								 
								Bruno Haible
							
						 
						
							
							
							
								
							
								b68181a566 
								
							
								 
							
						 
						
							
							
								
								Fix an extreme case in long-float multiplication.  
							
							 
							
							
								
 
							
							
						 
						22 years ago  
					 
				
					
						
							
							
								 
								Bruno Haible
							
						 
						
							
							
							
								
							
								9d39b1f00e 
								
							
								 
							
						 
						
							
							
								
								Force link-time references despite optimizations done by g++.  
							
							 
							
							
								
 
							
							
						 
						24 years ago  
					 
				
					
						
							
							
								 
								Richard Kreckel
							
						 
						
							
							
							
								
							
								660c19b019 
								
							
								 
							
						 
						
							
							
								
								* revert broken indentation.  
							
							 
							
							
								
 
							
							
						 
						24 years ago  
					 
				
					
						
							
							
								 
								Richard Kreckel
							
						 
						
							
							
							
								
							
								b485d76c78 
								
							
								 
							
						 
						
							
							
								
								* src/float/transcendental/cl_F_sinx.cc (sinx_naive): For small  
							
							 
							
							 
							
							
								
 
							
							
							values of x, return square(x) instead of x.
        * src/float/transcendental/cl_F_sinhx.cc (sinhx_naive): Likewise. 
							
						 
						24 years ago  
					 
				
					
						
							
							
								 
								Bruno Haible
							
						 
						
							
							
							
								
							
								85764f37ef 
								
							
								 
							
						 
						
							
							
								
								Add a literature reference for the formula.  
							
							 
							
							
								
 
							
							
						 
						25 years ago  
					 
				
					
						
							
							
								 
								Richard Kreckel
							
						 
						
							
							
							
								
							
								fbb507f3fd 
								
							
								 
							
						 
						
							
							
								
								* src/float/base/cl_ieee.cc: try to do magic to the FPU only if  
							
							 
							
							 
							
							
								
 
							
							
							_FPU_IEEE is really defined.
        * include/cln/modules.h: change assembler labels from `label' to
          `label:' on hppa, needed by Linux (see comment).
        * autoconf/acinclude.m4: new file (for storing CLN-specific macros).
        * Makefile.devel: adjusted.
        * autoconf/aclocal.m4: regenerate.
        * src/base/low/cl_low_mul.cc: moved POD variables that are declared
          extern "C" elsewhere out of the namespace.
        * src/base/low/cl_low_div.cc: Likewise. 
							
						 
						25 years ago  
					 
				
					
						
							
							
								 
								Richard Kreckel
							
						 
						
							
							
							
								
							
								bc79110a42 
								
							
								 
							
						 
						
							
							
								
								* autoconf/floatparam.c (double_wordorder_bigendian_p): new symbol.  
							
							 
							
							 
							
							
								
 
							
							
							* src/float/dfloat/cl_DF.h: Check for double_wordorder_bigendian_p. 
							
						 
						25 years ago  
					 
				
					
						
							
							
								 
								Richard Kreckel
							
						 
						
							
							
							
								
							
								f3b29e52ea 
								
							
								 
							
						 
						
							
							
								
								* */*: cl_istream -> std::istream, cl_ostream -> std::ostream.  
							
							 
							
							
								
 
							
							
						 
						25 years ago  
					 
				
					
						
							
							
								 
								Richard Kreckel
							
						 
						
							
							
							
								
							
								f57f23a99a 
								
							
								 
							
						 
						
							
							
								
								* */*: Removed problematic stdin, stdout and stderr definitions.  
							
							 
							
							 
							
							
								
 
							
							
							Use std::cin, std::cout, std::cerr instead (obsoletes 2000-10-29). 
							
						 
						25 years ago  
					 
				
					
						
							
							
								 
								Richard Kreckel
							
						 
						
							
							
							
								
							
								2f48af8059 
								
							
								 
							
						 
						
							
							
								
								* include/cln/object.h (cl_combine): define additional signatures, if  
							
							 
							
							 
							
							
								
 
							
							
							HAVE_LONGLONG is defined, in order to keep the compiler happy.
        * src/base/cl_macros.h: include "cln/types.h", since we need HAVE_DD...
        * src/base/cl_macros.h (bit): ...for this macro...
        * src/base/cl_macros.h (minus_bit): ...and this one.
        * src/base/cl_low.h: include "cln/types.h", since we need HAVE_DD...
        * src/base/cl_low.h (logcount_64): ...for this macro.
        * src/base/random/cl_UL_random.cc (random32): if HAVE_DD a is an ULL.
        * src/integer/gcd/cl_I_gcd_aux2.cc (floorDD): fixed algorithmic bug
          that turned up when intDsize==32 and cl_word_size==64.
        * src/float/dfloat/elem/cl_DF_div.cc (operator/): fixed a missing cast
          to uint64 that turned up when intDsize==32 and cl_word_size==64. 
							
						 
						25 years ago  
					 
				
					
						
							
							
								 
								Richard Kreckel
							
						 
						
							
							
							
								
							
								f24a1dab87 
								
							
								 
							
						 
						
							
							
								
								* include/cln/number.h (As): Fix it in namespace by suffixing `_As'  
							
							 
							
							 
							
							
								
 
							
							
							to the appropiate method instead of prefixing `as_'.
        * src/complex/misc/cl_N_as.cc (cl_N_As): Likewise.
        * src/real/misc/cl_R_as.cc (cl_R_As): Likewise.
        * src/rational/misc/cl_RA_as.cc (cl_RA_As): Likewise.
        * src/integer/misc/cl_I_as.cc (cl_I_As): Likewise.
        * src/float/misc/cl_F_as.cc (cl_F_As): Likewise.
        * src/float/sfloat/misc/cl_SF_as.cc (cl_SF_As): Likewise.
        * src/float/lfloat/misc/cl_LF_as.cc (cl_LF_As): Likewise.
        * src/float/ffloat/misc/cl_FF_as.cc (cl_FF_As): Likewise.
        * src/float/dfloat/misc/cl_DF_as.cc (cl_DF_As): Likewise. 
							
						 
						26 years ago  
					 
				
					
						
							
							
								 
								Richard Kreckel
							
						 
						
							
							
							
								
							
								850abfde7f 
								
							
								 
							
						 
						
							
							
								
								* All Files have been modified for inclusion of namespace cln;  
							
							 
							
							 
							
							
								
 
							
							
							I am too lazy for a detailed discussion of all the changes.
          Many identifiers got their `cl_' stripped off.  Ok, this is a
          clumpsy CVS log-entry.  Promise: more will soon go into the
          file ChangeLog.  I apologize for the inconvenience.   :-( 
							
						 
						26 years ago  
					 
				
					
						
							
							
								 
								Bruno Haible
							
						 
						
							
							
							
								
							
								53cf241b08 
								
							
								 
							
						 
						
							
							
								
								Accept floats with 1.2L0_100 syntax when reading from streams, not only when  
							
							 
							
							 
							
							
								
 
							
							
							reading from strings. 
							
						 
						26 years ago  
					 
				
					
						
							
							
								 
								Bruno Haible
							
						 
						
							
							
							
								
							
								9c6ab33803 
								
							
								 
							
						 
						
							
							
								
								Distinguish between cl_word_size and the ABI's pointer size.  
							
							 
							
							
								
 
							
							
						 
						26 years ago