diff --git a/Packages/Interval_arithmetic/changes.txt b/Packages/Interval_arithmetic/changes.txt index d11666ed0db..31217ab3506 100644 --- a/Packages/Interval_arithmetic/changes.txt +++ b/Packages/Interval_arithmetic/changes.txt @@ -1,5 +1,9 @@ Changes done to the Interval Arithmetic package. +Version 4.48 on ?? June 2000 +- Removed obsolete (and buggy) references to + CGAL_CFG_NO_EXPLICIT_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION. + Version 4.47 on 13 June 2000 - Removed useless "template <>" before full specializations of function templates. diff --git a/Packages/Interval_arithmetic/include/CGAL/Arithmetic_filter.h b/Packages/Interval_arithmetic/include/CGAL/Arithmetic_filter.h index 319171156ec..d7372b2fc33 100644 --- a/Packages/Interval_arithmetic/include/CGAL/Arithmetic_filter.h +++ b/Packages/Interval_arithmetic/include/CGAL/Arithmetic_filter.h @@ -78,12 +78,11 @@ class Filtered_exact { return inter; } IA give_interval (const No_Filter_Cache &) const { -#if !defined(CGAL_CFG_NO_EXPLICIT_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION) \ - && !defined(CGAL_CFG_NO_PARTIAL_CLASS_TEMPLATE_SPECIALISATION) +#ifndef CGAL_CFG_NO_PARTIAL_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION return convert_to(_value); #else return convert_from_to(Interval_nt_advanced(), _value); -#endif // CGAL_CFG_NO_EXPLICIT_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION +#endif // CGAL_CFG_NO_PARTIAL_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION } void compute_cache (const No_Filter_Cache &) const @@ -114,12 +113,11 @@ public: IA interval() const { return give_interval(_cache); } ET exact() const { -#if !defined(CGAL_CFG_NO_EXPLICIT_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION) \ - && !defined(CGAL_CFG_NO_PARTIAL_CLASS_TEMPLATE_SPECIALISATION) +#ifndef CGAL_CFG_NO_PARTIAL_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION return convert_to(_value); #else return convert_from_to(ET(), _value); -#endif // CGAL_CFG_NO_EXPLICIT_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION +#endif // CGAL_CFG_NO_PARTIAL_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION } double to_double() const { return to_double(_value); } Restricted_double dbl() const { return Restricted_double(to_double()); } diff --git a/Packages/Interval_arithmetic/include/CGAL/Interval_arithmetic/IA_Fixed.h b/Packages/Interval_arithmetic/include/CGAL/Interval_arithmetic/IA_Fixed.h index da39d62c595..6f17c530c16 100644 --- a/Packages/Interval_arithmetic/include/CGAL/Interval_arithmetic/IA_Fixed.h +++ b/Packages/Interval_arithmetic/include/CGAL/Interval_arithmetic/IA_Fixed.h @@ -25,7 +25,7 @@ CGAL_BEGIN_NAMESPACE -// The Fixed is in fact a float => trivial conversion. +// Fixed is in fact a float => trivial conversion. inline Interval_nt_advanced @@ -34,16 +34,13 @@ convert_from_to (const Interval_nt_advanced&, const Fixed_precision_nt & z) return to_double(z); } -#ifndef CGAL_CFG_NO_EXPLICIT_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION template <> struct converter { static inline Interval_nt_advanced do_it (const Fixed_precision_nt & z) { return to_double(z); } }; -#endif // CGAL_CFG_NO_EXPLICIT_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION - CGAL_END_NAMESPACE -#endif // CGAL_IA_FIXED_H +#endif // CGAL_IA_FIXED_H diff --git a/Packages/Interval_arithmetic/include/CGAL/Interval_arithmetic/IA_Gmpz.h b/Packages/Interval_arithmetic/include/CGAL/Interval_arithmetic/IA_Gmpz.h index a03919a57fd..a3b5a533576 100644 --- a/Packages/Interval_arithmetic/include/CGAL/Interval_arithmetic/IA_Gmpz.h +++ b/Packages/Interval_arithmetic/include/CGAL/Interval_arithmetic/IA_Gmpz.h @@ -50,7 +50,6 @@ convert_from_to (const Interval_nt_advanced&, const Gmpz & z) return result; } -#ifndef CGAL_CFG_NO_EXPLICIT_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION template <> struct converter { @@ -59,8 +58,6 @@ struct converter return convert_from_to(Interval_nt_advanced(), z); } }; -#endif // CGAL_CFG_NO_EXPLICIT_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION - // Now we also have an exact converter from double to Quotient, so that // Filtered_exact > is useful. @@ -82,14 +79,12 @@ convert_from_to (const Quotient&, const double& d) return Quotient(Gmpz(num), Gmpz(den)); } -#ifndef CGAL_CFG_NO_EXPLICIT_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION template <> struct converter,double> { static inline Quotient do_it (const double & z) { return convert_from_to(Quotient(), z); } }; -#endif // CGAL_CFG_NO_EXPLICIT_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION CGAL_END_NAMESPACE diff --git a/Packages/Interval_arithmetic/include/CGAL/Interval_arithmetic/IA_Lazy_exact_nt.h b/Packages/Interval_arithmetic/include/CGAL/Interval_arithmetic/IA_Lazy_exact_nt.h index 6d9c8d4dd11..4cc5a636dd8 100644 --- a/Packages/Interval_arithmetic/include/CGAL/Interval_arithmetic/IA_Lazy_exact_nt.h +++ b/Packages/Interval_arithmetic/include/CGAL/Interval_arithmetic/IA_Lazy_exact_nt.h @@ -31,11 +31,10 @@ Interval_nt_advanced convert_from_to (const Interval_nt_advanced&, const Lazy_exact_nt & z) { CGAL_expensive_assertion(FPU_empiric_test() == CGAL_FE_UPWARD); - return z.approx_adv(); + return z.approx_adv(); } -#if !defined(CGAL_CFG_NO_EXPLICIT_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION) \ - && !defined(CGAL_CFG_NO_PARTIAL_CLASS_TEMPLATE_SPECIALISATION) +#ifndef CGAL_CFG_NO_PARTIAL_CLASS_TEMPLATE_SPECIALISATION template struct converter > { @@ -44,8 +43,8 @@ struct converter > return convert_from_to(Interval_nt_advanced(), z); } }; -#endif // CGAL_CFG_NO_EXPLICIT_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION +#endif // CGAL_CFG_NO_PARTIAL_CLASS_TEMPLATE_SPECIALISATION CGAL_END_NAMESPACE -#endif // CGAL_IA_LAZY_EXACT_NT_H +#endif // CGAL_IA_LAZY_EXACT_NT_H diff --git a/Packages/Interval_arithmetic/include/CGAL/Interval_arithmetic/IA_Quotient.h b/Packages/Interval_arithmetic/include/CGAL/Interval_arithmetic/IA_Quotient.h index aeeb4acaab0..1a7fb0b3b28 100644 --- a/Packages/Interval_arithmetic/include/CGAL/Interval_arithmetic/IA_Quotient.h +++ b/Packages/Interval_arithmetic/include/CGAL/Interval_arithmetic/IA_Quotient.h @@ -38,8 +38,7 @@ convert_from_to (const Interval_nt_advanced&, const Quotient & z) convert_from_to(Interval_nt_advanced(), z.denominator()); } -#if !defined(CGAL_CFG_NO_EXPLICIT_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION) \ - && !defined(CGAL_CFG_NO_PARTIAL_CLASS_TEMPLATE_SPECIALISATION) +#ifndef CGAL_CFG_NO_PARTIAL_CLASS_TEMPLATE_SPECIALISATION template struct converter > { @@ -48,8 +47,8 @@ struct converter > return convert_from_to(Interval_nt_advanced(), z); } }; -#endif // CGAL_CFG_NO_EXPLICIT_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION +#endif // CGAL_CFG_NO_PARTIAL_CLASS_TEMPLATE_SPECIALISATION CGAL_END_NAMESPACE -#endif // CGAL_IA_QUOTIENT_H +#endif // CGAL_IA_QUOTIENT_H diff --git a/Packages/Interval_arithmetic/include/CGAL/Interval_arithmetic/IA_leda_bigfloat.h b/Packages/Interval_arithmetic/include/CGAL/Interval_arithmetic/IA_leda_bigfloat.h index 2f209b9d542..016f63d8493 100644 --- a/Packages/Interval_arithmetic/include/CGAL/Interval_arithmetic/IA_leda_bigfloat.h +++ b/Packages/Interval_arithmetic/include/CGAL/Interval_arithmetic/IA_leda_bigfloat.h @@ -45,7 +45,6 @@ convert_from_to (const Interval_nt_advanced&, const leda_bigfloat & z) return result; } -#ifndef CGAL_CFG_NO_EXPLICIT_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION template <> struct converter { @@ -54,8 +53,7 @@ struct converter return convert_from_to(Interval_nt_advanced(), z); } }; -#endif // CGAL_CFG_NO_EXPLICIT_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION CGAL_END_NAMESPACE -#endif // CGAL_IA_LEDA_BIGFLOAT_H +#endif // CGAL_IA_LEDA_BIGFLOAT_H diff --git a/Packages/Interval_arithmetic/include/CGAL/Interval_arithmetic/IA_leda_integer.h b/Packages/Interval_arithmetic/include/CGAL/Interval_arithmetic/IA_leda_integer.h index 5136fa5aa4b..8623364435b 100644 --- a/Packages/Interval_arithmetic/include/CGAL/Interval_arithmetic/IA_leda_integer.h +++ b/Packages/Interval_arithmetic/include/CGAL/Interval_arithmetic/IA_leda_integer.h @@ -47,7 +47,6 @@ convert_from_to (const Interval_nt_advanced&, const leda_integer & z) return result; } -#ifndef CGAL_CFG_NO_EXPLICIT_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION template <> struct converter { @@ -56,8 +55,7 @@ struct converter return convert_from_to(Interval_nt_advanced(), z); } }; -#endif // CGAL_CFG_NO_EXPLICIT_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION CGAL_END_NAMESPACE -#endif // CGAL_IA_LEDA_INTEGER_H +#endif // CGAL_IA_LEDA_INTEGER_H diff --git a/Packages/Interval_arithmetic/include/CGAL/Interval_arithmetic/IA_leda_rational.h b/Packages/Interval_arithmetic/include/CGAL/Interval_arithmetic/IA_leda_rational.h index 3d640ca78f9..802ca639635 100644 --- a/Packages/Interval_arithmetic/include/CGAL/Interval_arithmetic/IA_leda_rational.h +++ b/Packages/Interval_arithmetic/include/CGAL/Interval_arithmetic/IA_leda_rational.h @@ -49,7 +49,6 @@ convert_from_to (const Interval_nt_advanced&, const leda_rational & z) return result; } -#ifndef CGAL_CFG_NO_EXPLICIT_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION template <> struct converter { @@ -58,8 +57,7 @@ struct converter return convert_from_to(Interval_nt_advanced(), z); } }; -#endif // CGAL_CFG_NO_EXPLICIT_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION CGAL_END_NAMESPACE -#endif // CGAL_IA_LEDA_RATIONAL_H +#endif // CGAL_IA_LEDA_RATIONAL_H diff --git a/Packages/Interval_arithmetic/include/CGAL/Interval_arithmetic/IA_leda_real.h b/Packages/Interval_arithmetic/include/CGAL/Interval_arithmetic/IA_leda_real.h index e6c91c62958..a0febc63fcd 100644 --- a/Packages/Interval_arithmetic/include/CGAL/Interval_arithmetic/IA_leda_real.h +++ b/Packages/Interval_arithmetic/include/CGAL/Interval_arithmetic/IA_leda_real.h @@ -43,7 +43,6 @@ convert_from_to (const Interval_nt_advanced&, const leda_real & z) return result; } -#ifndef CGAL_CFG_NO_EXPLICIT_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION template <> struct converter { @@ -52,8 +51,7 @@ struct converter return convert_from_to(Interval_nt_advanced(), z); } }; -#endif // CGAL_CFG_NO_EXPLICIT_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION CGAL_END_NAMESPACE -#endif // CGAL_IA_LEDA_REAL_H +#endif // CGAL_IA_LEDA_REAL_H diff --git a/Packages/Interval_arithmetic/include/CGAL/Lazy_exact_nt.h b/Packages/Interval_arithmetic/include/CGAL/Lazy_exact_nt.h index d1d8fbcd33d..3bcba6f3152 100644 --- a/Packages/Interval_arithmetic/include/CGAL/Lazy_exact_nt.h +++ b/Packages/Interval_arithmetic/include/CGAL/Lazy_exact_nt.h @@ -492,8 +492,7 @@ Number_tag number_type_tag (const Lazy_exact_nt&) { return Number_tag(); } -#if !defined(CGAL_CFG_NO_EXPLICIT_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION) \ - && !defined(CGAL_CFG_NO_PARTIAL_CLASS_TEMPLATE_SPECIALISATION) +#ifndef CGAL_CFG_NO_PARTIAL_CLASS_TEMPLATE_SPECIALISATION template struct converter > {