From 5c8df6672ad398df65d48967de0146df80117da7 Mon Sep 17 00:00:00 2001 From: Jane Tournois Date: Fri, 25 Sep 2020 14:25:14 +0200 Subject: [PATCH 1/3] remove CGAL_CFG_MATCHING_BUG_ variants the "matching bug" of msvc has been fixed since at least vs 2015 --- .../CGAL/Arr_circular_line_arc_traits_2.h | 9 +- .../function_objects_polynomial_circular.h | 284 +---------------- .../bbox_filtered_predicates.h | 126 +------- .../function_objects_polynomial_sphere.h | 297 ------------------ Filtered_kernel/include/CGAL/Lazy_kernel.h | 23 +- .../CGAL/internal/Static_filters/Angle_3.h | 18 -- .../Static_filters/Compare_squared_radius_3.h | 9 - .../Compare_weighted_squared_radius_3.h | 9 - .../internal/Static_filters/Compare_x_2.h | 24 -- .../internal/Static_filters/Compare_y_2.h | 24 -- .../internal/Static_filters/Do_intersect_2.h | 10 - .../internal/Static_filters/Do_intersect_3.h | 11 - .../CGAL/internal/Static_filters/Equal_2.h | 11 - .../CGAL/internal/Static_filters/Equal_3.h | 11 - .../internal/Static_filters/Is_degenerate_3.h | 11 - .../internal/Static_filters/Orientation_2.h | 13 - .../internal/Static_filters/Orientation_3.h | 20 -- .../Power_side_of_oriented_power_sphere_3.h | 9 - .../include/CGAL/MSVC_compiler_config.h | 10 - Kernel_23/include/CGAL/enum.h | 18 -- .../Static_filters/Periodic_2_orientation_2.h | 14 - .../Static_filters/Periodic_3_orientation_3.h | 14 - ...perbolic_Delaunay_triangulation_traits_2.h | 23 -- STL_Extension/include/CGAL/Uncertain.h | 14 - ..._weighted_circumcenter_filtered_traits_3.h | 20 -- 25 files changed, 8 insertions(+), 1024 deletions(-) diff --git a/Arrangement_on_surface_2/include/CGAL/Arr_circular_line_arc_traits_2.h b/Arrangement_on_surface_2/include/CGAL/Arr_circular_line_arc_traits_2.h index eb9acae74a8..03943465c3e 100644 --- a/Arrangement_on_surface_2/include/CGAL/Arr_circular_line_arc_traits_2.h +++ b/Arrangement_on_surface_2/include/CGAL/Arr_circular_line_arc_traits_2.h @@ -147,17 +147,12 @@ namespace CGAL { template class Equal_2 -#ifndef CGAL_CFG_MATCHING_BUG_6 - : public - CircularKernel::Equal_2 -#endif + : public CircularKernel::Equal_2 { public: typedef boost::variant< Arc1, Arc2 > Curve_2; typedef bool result_type; -#ifndef CGAL_CFG_MATCHING_BUG_6 using CircularKernel::Equal_2::operator(); -#else typedef typename CircularKernel::Circular_arc_point_2 Circular_arc_point_2; typedef typename CircularKernel::Line_arc_2 Line_arc_2; @@ -185,8 +180,6 @@ namespace CGAL { operator() ( const Circular_arc_2 &a0, const Line_arc_2 &a1) const { return false; } -#endif - result_type operator()(const Curve_2 &a0, const Curve_2 &a1) const { diff --git a/Circular_kernel_2/include/CGAL/Circular_kernel_2/function_objects_polynomial_circular.h b/Circular_kernel_2/include/CGAL/Circular_kernel_2/function_objects_polynomial_circular.h index fe78f2e6e5c..df44082ad52 100644 --- a/Circular_kernel_2/include/CGAL/Circular_kernel_2/function_objects_polynomial_circular.h +++ b/Circular_kernel_2/include/CGAL/Circular_kernel_2/function_objects_polynomial_circular.h @@ -33,9 +33,7 @@ namespace CircularFunctors { template < class CK > class Compare_x_2 -#ifndef CGAL_CFG_MATCHING_BUG_6 : public CK::Linear_kernel::Compare_x_2 -#endif { typedef typename CK::Circular_arc_point_2 Circular_arc_point_2; typedef typename CK::Point_2 Point_2; @@ -43,45 +41,7 @@ namespace CircularFunctors { public: typedef typename CK::Linear_kernel::Compare_x_2::result_type result_type; -#ifndef CGAL_CFG_MATCHING_BUG_6 using CK::Linear_kernel::Compare_x_2::operator(); -#else - typedef typename CK::Linear_kernel LK; - typedef typename LK::Compare_x_2 LK_Compare_x_2; - typedef typename CK::Line_2 Line_2; - - result_type - operator() (const Point_2 &p0, - const Point_2 &p1) const - { - return LK_Compare_x_2()(p0, p1); - } - - result_type - operator() (const Point_2 &p0, - const Line_2 &p1, - const Line_2 &p2) const - { - return LK_Compare_x_2()(p0, p1,p2); - } - - result_type - operator() (const Line_2 &p0, - const Line_2 &p1, - const Line_2 &p2) const - { - return LK_Compare_x_2()(p0, p1,p2); - } - - result_type - operator() (const Line_2 &p0, - const Line_2 &p1, - const Line_2 &p2, - const Line_2 &p3) const - { - return LK_Compare_x_2()(p0, p1,p2,p3); - } -#endif result_type operator() (const Circular_arc_point_2 &p0, @@ -93,9 +53,7 @@ namespace CircularFunctors { template < class CK > class Compare_y_2 -#ifndef CGAL_CFG_MATCHING_BUG_6 : public CK::Linear_kernel::Compare_y_2 -#endif { typedef typename CK::Circular_arc_point_2 Circular_arc_point_2; typedef typename CK::Point_2 Point_2; @@ -103,46 +61,7 @@ namespace CircularFunctors { public: typedef typename CK::Linear_kernel::Compare_y_2::result_type result_type; -#ifndef CGAL_CFG_MATCHING_BUG_6 using CK::Linear_kernel::Compare_y_2::operator(); -#else - - typedef typename CK::Linear_kernel LK; - typedef typename LK::Compare_y_2 LK_Compare_y_2; - typedef typename CK::Line_2 Line_2; - - result_type - operator() (const Point_2 &p0, - const Point_2 &p1) const - { - return LK_Compare_y_2()(p0, p1); - } - - result_type - operator() (const Point_2 &p0, - const Line_2 &p1, - const Line_2 &p2) const - { - return LK_Compare_y_2()(p0, p1,p2); - } - - result_type - operator() (const Line_2 &p0, - const Line_2 &p1, - const Line_2 &p2) const - { - return LK_Compare_y_2()(p0, p1,p2); - } - - result_type - operator() (const Line_2 &p0, - const Line_2 &p1, - const Line_2 &p2, - const Line_2 &p3) const - { - return LK_Compare_y_2()(p0, p1,p2,p3); - } -#endif result_type operator() (const Circular_arc_point_2 &p0, @@ -153,9 +72,7 @@ namespace CircularFunctors { template < class CK > class Compare_xy_2 -#ifndef CGAL_CFG_MATCHING_BUG_6 : public CK::Linear_kernel::Compare_xy_2 -#endif { typedef typename CK::Circular_arc_point_2 Circular_arc_point_2; typedef typename CK::Point_2 Point_2; @@ -163,19 +80,7 @@ namespace CircularFunctors { public: typedef typename CK::Linear_kernel::Compare_xy_2::result_type result_type; -#ifndef CGAL_CFG_MATCHING_BUG_6 using CK::Linear_kernel::Compare_xy_2::operator(); -#else - - result_type - operator() (const Point_2 &p0, - const Point_2 &p1) const - { - typedef typename CK::Linear_kernel LK; - typedef typename LK::Compare_xy_2 LK_Compare_xy_2; - return LK_Compare_xy_2()(p0, p1); - } -#endif result_type operator() (const Circular_arc_point_2 &p0, @@ -279,9 +184,7 @@ namespace CircularFunctors { template < class CK > class Equal_2 - #ifndef CGAL_CFG_MATCHING_BUG_6 : public CK::Linear_kernel::Equal_2 -#endif { typedef typename CK::Circular_arc_point_2 Circular_arc_point_2; typedef typename CK::Circular_arc_2 Circular_arc_2; @@ -303,71 +206,7 @@ namespace CircularFunctors { typedef typename CK::Linear_kernel::Equal_2::result_type result_type; -#ifndef CGAL_CFG_MATCHING_BUG_6 using CK::Linear_kernel::Equal_2::operator(); -#else - - result_type - operator() (const Point_2 &p0, - const Point_2 &p1) const - { return LK_Equal_2()(p0,p1); } - - result_type - operator() (const Vector_2 &p0, - const Vector_2 &p1) const - { return LK_Equal_2()(p0,p1); } - - result_type - operator() (const Vector_2 &p0, - const Null_vector &p1) const - { return LK_Equal_2()(p0,p1); } - - result_type - operator() (const Null_vector &p0, - const Vector_2 &p1) const - { return LK_Equal_2()(p0,p1); } - - result_type - operator() (const Direction_2 &p0, - const Direction_2 &p1) const - { return LK_Equal_2()(p0,p1); } - - - result_type - operator() (const Segment_2 &p0, - const Segment_2 &p1) const - { return LK_Equal_2()(p0,p1); } - - - result_type - operator() (const Ray_2 &p0, - const Ray_2 &p1) const - { return LK_Equal_2()(p0,p1); } - - result_type - operator() (const Line_2 &p0, - const Line_2 &p1) const - { return LK_Equal_2()(p0,p1); } - - - - result_type - operator() (const Triangle_2 &p0, - const Triangle_2 &p1) const - { return LK_Equal_2()(p0,p1); } - - - result_type - operator() (const Iso_rectangle_2 &p0, - const Iso_rectangle_2 &p1) const - { return LK_Equal_2()(p0,p1); } - - - result_type - operator() (const Circle_2 &p0, - const Circle_2 &p1) const - { return LK_Equal_2()(p0,p1); } -#endif result_type operator() (const Circular_arc_point_2 &p0, @@ -1029,9 +868,7 @@ namespace CircularFunctors { template class Construct_bbox_2 -#ifndef CGAL_CFG_MATCHING_BUG_6 : public CK::Linear_kernel::Construct_bbox_2 -#endif { typedef typename CK::Circular_arc_2 Circular_arc_2; typedef typename CK::Circular_arc_point_2 Circular_arc_point_2; @@ -1041,40 +878,7 @@ namespace CircularFunctors { public: typedef typename CK::Linear_kernel::Construct_bbox_2::result_type result_type; -#ifndef CGAL_CFG_MATCHING_BUG_6 using CK::Linear_kernel::Construct_bbox_2::operator(); -#else - typedef typename CK::Linear_kernel LK; - typedef typename LK::Construct_bbox_2 LK_Construct_bbox_2; - typedef typename CK::Point_2 Point_2; - typedef typename CK::Segment_2 Segment_2; - typedef typename CK::Triangle_2 Triangle_2 ; - typedef typename CK::Iso_rectangle_2 Iso_rectangle_2 ; - - result_type operator() (const Circle_2 & a) const - { - return LK_Construct_bbox_2()(a); - } - - result_type operator() (const Point_2 & a) const - { - return LK_Construct_bbox_2()(a); - } - - result_type operator() (const Segment_2 & a) const - { - return LK_Construct_bbox_2()(a); - } - - result_type operator() (const Triangle_2 & a) const - { - return LK_Construct_bbox_2()(a); - } - result_type operator() (const Iso_rectangle_2 & a) const - { - return LK_Construct_bbox_2()(a); - } -#endif result_type operator() (const Circular_arc_point_2 & a) const { @@ -1095,9 +899,7 @@ namespace CircularFunctors { template class Bounded_side_2 -#ifndef CGAL_CFG_MATCHING_BUG_6 : public CK::Linear_kernel::Bounded_side_2 -#endif { typedef typename CK::Circle_2 Circle_2; typedef typename CK::Circular_arc_point_2 Circular_arc_point_2; @@ -1105,29 +907,8 @@ namespace CircularFunctors { public: typedef typename CK::Linear_kernel::Bounded_side_2::result_type result_type; -#ifndef CGAL_CFG_MATCHING_BUG_6 using CK::Linear_kernel::Bounded_side_2::operator(); -#else - typedef typename CK::Point_2 Point_2; - typedef typename CK::Triangle_2 Triangle_2; - typedef typename CK::Iso_rectangle_2 Iso_rectangle_2; - typedef typename CK::Linear_kernel LK; - typedef typename LK::Bounded_side_2 LK_Bounded_side_2; - - result_type - operator()(const Circle_2& c, const Point_2& p) const - { return LK_Bounded_side_2()(c,p); } - - result_type - operator()(const Triangle_2& c, const Point_2& p) const - { return LK_Bounded_side_2()(c,p); } - - result_type - operator()(const Iso_rectangle_2& c, const Point_2& p) const - { return LK_Bounded_side_2()(c,p); } - -#endif - + result_type operator()(const Circle_2& c, const Circular_arc_point_2& p) const { return CircularFunctors::bounded_side(c,p); } @@ -1136,9 +917,7 @@ namespace CircularFunctors { template class Has_on_bounded_side_2 -#ifndef CGAL_CFG_MATCHING_BUG_6 : public CK::Linear_kernel::Has_on_bounded_side_2 -#endif { typedef typename CK::Circle_2 Circle_2; typedef typename CK::Circular_arc_point_2 Circular_arc_point_2; @@ -1146,27 +925,7 @@ namespace CircularFunctors { public: typedef typename CK::Linear_kernel::Has_on_bounded_side_2::result_type result_type; -#ifndef CGAL_CFG_MATCHING_BUG_6 using CK::Linear_kernel::Has_on_bounded_side_2::operator(); -#else - typedef typename CK::Point_2 Point_2; - typedef typename CK::Triangle_2 Triangle_2; - typedef typename CK::Iso_rectangle_2 Iso_rectangle_2; - typedef typename CK::Linear_kernel LK; - typedef typename LK::Has_on_bounded_side_2 LK_Has_on_bounded_side_2; - - result_type - operator()(const Circle_2& c, const Point_2& p) const - { return LK_Has_on_bounded_side_2()(c,p); } - - result_type - operator()(const Triangle_2& c, const Point_2& p) const - { return LK_Has_on_bounded_side_2()(c,p); } - - result_type - operator()(const Iso_rectangle_2& c, const Point_2& p) const - { return LK_Has_on_bounded_side_2()(c,p); } -#endif result_type operator()(const Circle_2& c, const Circular_arc_point_2& p) const @@ -1176,9 +935,7 @@ namespace CircularFunctors { template class Has_on_unbounded_side_2 -#ifndef CGAL_CFG_MATCHING_BUG_6 : public CK::Linear_kernel::Has_on_unbounded_side_2 -#endif { typedef typename CK::Circle_2 Circle_2; typedef typename CK::Circular_arc_point_2 Circular_arc_point_2; @@ -1186,28 +943,8 @@ namespace CircularFunctors { public: typedef typename CK::Linear_kernel::Has_on_unbounded_side_2::result_type result_type; -#ifndef CGAL_CFG_MATCHING_BUG_6 using CK::Linear_kernel::Has_on_unbounded_side_2::operator(); -#else - typedef typename CK::Point_2 Point_2; - typedef typename CK::Triangle_2 Triangle_2; - typedef typename CK::Iso_rectangle_2 Iso_rectangle_2; - typedef typename CK::Linear_kernel LK; - typedef typename LK::Has_on_unbounded_side_2 LK_Has_on_unbounded_side_2; - - result_type - operator()(const Circle_2& c, const Point_2& p) const - { return LK_Has_on_unbounded_side_2()(c,p); } - - result_type - operator()(const Triangle_2& c, const Point_2& p) const - { return LK_Has_on_unbounded_side_2()(c,p); } - - result_type - operator()(const Iso_rectangle_2& c, const Point_2& p) const - { return LK_Has_on_unbounded_side_2()(c,p); } -#endif - + result_type operator()(const Circle_2& c, const Circular_arc_point_2& p) const { return CK().bounded_side_2_object()(c,p) == ON_UNBOUNDED_SIDE; } @@ -1252,28 +989,13 @@ namespace CircularFunctors { template class Construct_center_2 - #ifndef CGAL_CFG_MATCHING_BUG_6 : public CK::Linear_kernel::Construct_center_2 - #endif { typedef typename CK::Circular_arc_2 Circular_arc_2; public: typedef typename CK::Linear_kernel::Construct_center_2::result_type result_type; -#ifndef CGAL_CFG_MATCHING_BUG_6 - using CK::Linear_kernel::Construct_center_2::operator(); -#else + using CK::Linear_kernel::Construct_center_2::operator(); - typedef typename CK::Linear_kernel LK; - typedef typename LK::Construct_center_2 LK_Construct_center_2; - typedef typename CK::Point_2 Point_2; - typedef typename CK::Circle_2 Circle_2; - - public: - result_type - operator()( const Circle_2& c) const - { return LK_Construct_center_2()(c); } - -#endif result_type operator()(const Circular_arc_2& c) const { return c.rep().center(); } diff --git a/Circular_kernel_2/include/CGAL/Filtered_bbox_circular_kernel_2/bbox_filtered_predicates.h b/Circular_kernel_2/include/CGAL/Filtered_bbox_circular_kernel_2/bbox_filtered_predicates.h index e7535752db0..90fbdc38534 100644 --- a/Circular_kernel_2/include/CGAL/Filtered_bbox_circular_kernel_2/bbox_filtered_predicates.h +++ b/Circular_kernel_2/include/CGAL/Filtered_bbox_circular_kernel_2/bbox_filtered_predicates.h @@ -43,31 +43,7 @@ public: typedef typename CK_Compare_x_2::result_type result_type; -#ifndef CGAL_CFG_MATCHING_BUG_6 using Base::operator(); -#else - template - result_type - operator()(const T1& t1, const T2& t2) const - { - return Base()(t1,t2); - } - template - result_type - operator()(const T1& t1, const T2& t2, const T3& t3) const - { - return Base()(t1,t2,t3); - } - - template - result_type - operator()(const T1& t1, const T2& t2, const T3& t3, const T4& t4) const - { - return Base()(t1,t2,t3,t4); - } - -#endif - result_type operator()( const Circular_arc_point_2 &a, const Circular_arc_point_2 &b) const @@ -105,29 +81,7 @@ public: return CK_Compare_y_2()(p0, p1); } -#ifndef CGAL_CFG_MATCHING_BUG_6 using Base::operator(); -#else - template - result_type - operator()(const T1& t1, const T2& t2) const - { - return Base()(t1,t2); - } - template - result_type - operator()(const T1& t1, const T2& t2, const T3& t3) const - { - return Base()(t1,t2,t3); - } - - template - result_type - operator()(const T1& t1, const T2& t2, const T3& t3, const T4& t4) const - { - return Base()(t1,t2,t3,t4); - } -#endif result_type operator()( const Circular_arc_point_2 &a, const Circular_arc_point_2 &b) const @@ -158,17 +112,7 @@ public: typedef typename Base::result_type result_type; - -#ifndef CGAL_CFG_MATCHING_BUG_6 using Base::operator(); -#else - template - result_type - operator()(const T1& t1, const T2& t2) const - { - return Base()(t1,t2); - } -#endif public: result_type @@ -201,16 +145,8 @@ public: typedef typename CK_In_x_range_2::result_type result_type; -#ifndef CGAL_CFG_MATCHING_BUG_6 using Base::operator(); -#else - template - result_type - operator()(const T1& t1, const T2& t2) const - { - return Base()(t1,t2); - } -#endif + private: template @@ -273,37 +209,8 @@ public: typedef typename CK_Compare_y_at_x_2::result_type result_type; -#ifndef CGAL_CFG_MATCHING_BUG_6 using Base::operator(); -#else - template - result_type - operator()(const T1& t1, const T2& t2) const - { - return Base()(t1,t2); - } - template - result_type - operator()(const T1& t1, const T2& t2, const T3& t3) const - { - return Base()(t1,t2,t3); - } - - template - result_type - operator()(const T1& t1, const T2& t2, const T3& t3, const T4& t4) const - { - return Base()(t1,t2,t3,t4); - } - - template - result_type - operator()(const T1& t1, const T2& t2, const T3& t3, const T4& t4, const T5& t5) const - { - return Base()(t1,t2,t3,t4,t5); - } -#endif private: template @@ -353,16 +260,9 @@ class Has_on_2 : public BK::Circular_kernel:: template Base< BK >::Type::Has_on_ public: typedef typename CK_Has_on_2::result_type result_type; - #ifndef CGAL_CFG_MATCHING_BUG_6 + using Base::operator(); -#else - template - result_type - operator()(const T1& t1, const T2& t2) const - { - return Base()(t1,t2); - } -#endif + private: template @@ -395,9 +295,7 @@ public: template class Equal_2 -#ifndef CGAL_CFG_MATCHING_BUG_6 : public BK::Circular_kernel:: template Base< BK >::Type::Equal_2 -#endif { typedef typename BK::Circular_kernel:: template Base< BK >::Type::Equal_2 CK_Equal_2; @@ -420,16 +318,7 @@ public: typedef typename CK_Equal_2::result_type result_type; -#ifndef CGAL_CFG_MATCHING_BUG_6 using Base::operator(); -#else - template - result_type - operator()(const T1& t1, const T2& t2) const - { - return Base()(t1,t2); - } -#endif private: @@ -519,16 +408,7 @@ public: typedef typename CK_Do_overlap_2::result_type result_type; -#ifndef CGAL_CFG_MATCHING_BUG_6 using Base::operator(); -#else - template - result_type - operator()(const T1& t1, const T2& t2) const - { - return Base()(t1,t2); - } -#endif private: diff --git a/Circular_kernel_3/include/CGAL/Circular_kernel_3/function_objects_polynomial_sphere.h b/Circular_kernel_3/include/CGAL/Circular_kernel_3/function_objects_polynomial_sphere.h index 694705639c3..30cd1bd3236 100644 --- a/Circular_kernel_3/include/CGAL/Circular_kernel_3/function_objects_polynomial_sphere.h +++ b/Circular_kernel_3/include/CGAL/Circular_kernel_3/function_objects_polynomial_sphere.h @@ -40,7 +40,6 @@ namespace CGAL { namespace SphericalFunctors { -#ifndef CGAL_CFG_MATCHING_BUG_6 #define CGAL_SPHERICAL_KERNEL_MACRO_FUNCTOR_COMPARE_(V)\ template < class SK > \ class Compare_ ##V## _3: public SK::Linear_kernel::Compare_ ##V## _3{\ @@ -63,38 +62,6 @@ template < class SK > \ { return SphericalFunctors::compare_ ##V (p0, p1); }\ };\ -#else -#define CGAL_SPHERICAL_KERNEL_MACRO_FUNCTOR_COMPARE_(V)\ -template < class SK > \ - class Compare_ ##V## _3 {\ - typedef typename SK::Circular_arc_point_3 Circular_arc_point_3;\ - typedef typename SK::Point_3 Point_3;\ - public:\ - typedef typename SK::Linear_kernel::Compare_ ##V## _3 LK_Compare_ ##V## _3;\ - typedef typename SK::Linear_kernel::Compare_ ##V## _3::result_type result_type;\ - \ - result_type\ - operator() (const Circular_arc_point_3 &p0,\ - const Circular_arc_point_3 &p1) const\ - { return SphericalFunctors::compare_ ##V (p0, p1); }\ - \ - result_type\ - operator() (const Circular_arc_point_3 &p0,\ - const Point_3 &p1) const\ - { return SphericalFunctors::compare_ ##V (p0, p1); }\ - \ - result_type\ - operator() (const Point_3 &p0,\ - const Circular_arc_point_3 &p1) const\ - { return SphericalFunctors::compare_ ##V (p0, p1); }\ - \ - result_type\ - operator() (const Point_3 &p0,\ - const Point_3 &p1) const\ - { return LK_Compare_ ##V## _3 ()(p0, p1); }\ - }; -#endif - CGAL_SPHERICAL_KERNEL_MACRO_FUNCTOR_COMPARE_(x) CGAL_SPHERICAL_KERNEL_MACRO_FUNCTOR_COMPARE_(y) CGAL_SPHERICAL_KERNEL_MACRO_FUNCTOR_COMPARE_(z) @@ -145,9 +112,7 @@ template < class SK > \ template < class SK > class Equal_3 -#ifndef CGAL_CFG_MATCHING_BUG_6 : public SK::Linear_kernel::Equal_3 -#endif { typedef typename SK::Linear_kernel LK; typedef typename LK::Equal_3 LK_Equal_3; @@ -173,72 +138,7 @@ template < class SK > \ typedef typename SK::Linear_kernel::Equal_3::result_type result_type; -#ifndef CGAL_CFG_MATCHING_BUG_6 using SK::Linear_kernel::Equal_3::operator(); -#else - - result_type - operator() (const Point_3 &p0, - const Point_3 &p1) const - { return LK_Equal_3()(p0,p1); } - - result_type - operator() (const Vector_3 &d0, - const Vector_3 &d1) const - { return LK_Equal_3()(d0,d1); } - - result_type - operator() (const Direction_3 &d0, - const Direction_3 &d1) const - { return LK_Equal_3()(d0,d1); } - - result_type - operator() (const Line_3 &l0, - const Line_3 &l1) const - { return LK_Equal_3()(l0,l1); } - - result_type - operator() (const Segment_3 &l0, - const Segment_3 &l1) const - { return LK_Equal_3()(l0,l1); } - - result_type - operator() (const Ray_3 &l0, - const Ray_3 &l1) const - { return LK_Equal_3()(l0,l1); } - - result_type - operator() (const Triangle_3 &l0, - const Triangle_3 &l1) const - { return LK_Equal_3()(l0,l1); } - - - result_type - operator() (const Tetrahedron_3 &l0, - const Tetrahedron_3 &l1) const - { return LK_Equal_3()(l0,l1); } - - result_type - operator() (const Iso_cuboid_3 &l0, - const Iso_cuboid_3 &l1) const - { return LK_Equal_3()(l0,l1); } - - result_type - operator() (const Plane_3 &l0, - const Plane_3 &l1) const - { return LK_Equal_3()(l0,l1); } - - result_type - operator() (const Circle_3 &c0, - const Circle_3 &c1) const - { return LK_Equal_3()(c0, c1); } - - result_type - operator() (const Sphere_3 &c0, - const Sphere_3 &c1) const - { return LK_Equal_3()(c0, c1); } - -#endif result_type operator() (const Circular_arc_point_3 &c0, @@ -951,9 +851,7 @@ template < class SK > \ template < class SK > class Has_on_3 -#ifndef CGAL_CFG_MATCHING_BUG_6 : public SK::Linear_kernel::Has_on_3 -#endif { typedef typename SK::Point_3 Point_3; typedef typename SK::Sphere_3 Sphere_3; @@ -971,54 +869,7 @@ template < class SK > \ public: typedef typename SK::Linear_kernel::Has_on_3::result_type result_type; -#ifndef CGAL_CFG_MATCHING_BUG_6 using SK::Linear_kernel::Has_on_3::operator(); -#else - typedef typename SK::Linear_kernel::Has_on_3 LK_Has_on_3; - - result_type - operator()( const Line_3& l, const Point_3& p) const - { return LK_Has_on_3()(l,p); } - - result_type - operator()( const Ray_3& r, const Point_3& p) const - { return LK_Has_on_3()(r,p); } - - result_type - operator()( const Segment_3& s, const Point_3& p) const - { return LK_Has_on_3()(s,p); } - - result_type - operator()( const Plane_3& pl, const Point_3& p) const - { return LK_Has_on_3()(pl,p); } - - result_type - operator()( const Plane_3& pl, const Line_3& l) const - { return LK_Has_on_3()(pl,l); } - - result_type - operator()( const Triangle_3& t, const Point_3& p) const - { - return LK_Has_on_3()(t,p); - } - - result_type - operator()(const Sphere_3 &a, const Point_3 &p) const - { return LK_Has_on_3()(a,p); } - - result_type - operator()(const Circle_3 &a, const Point_3 &p) const - { return LK_Has_on_3()(a,p); } - - result_type - operator()(const Sphere_3 &a, const Circle_3 &p) const - { return LK_Has_on_3()(a,p); } - - result_type - operator()(const Plane_3 &a, const Circle_3 &p) const - { return LK_Has_on_3()(a,p); } - -#endif result_type operator()(const Sphere_3 &a, const Circular_arc_point_3 &p) const @@ -1468,9 +1319,7 @@ template < class SK > \ template class Construct_bbox_3 -#ifndef CGAL_CFG_MATCHING_BUG_6 : public SK::Linear_kernel::Construct_bbox_3 -#endif { typedef typename SK::Circular_arc_point_3 Circular_arc_point_3; typedef typename SK::Circular_arc_3 Circular_arc_3; @@ -1487,57 +1336,7 @@ template < class SK > \ typedef typename SK::Linear_kernel::Construct_bbox_3::result_type result_type; -#ifndef CGAL_CFG_MATCHING_BUG_6 using SK::Linear_kernel::Construct_bbox_3::operator(); -#else - typedef typename SK::Linear_kernel LK; - typedef typename LK::Construct_bbox_3 LK_Construct_bbox_3; - - result_type - operator()(const Point_3& p) const - { - return LK_Construct_bbox_3()(p); - } - - result_type - operator()(const Segment_3& p) const - { - return LK_Construct_bbox_3()(p); - } - - result_type - operator()(const Triangle_3& p) const - { - return LK_Construct_bbox_3()(p); - } - - - result_type - operator()(const Iso_cuboid_3& p) const - { - return LK_Construct_bbox_3()(p); - } - - result_type - operator()(const Tetrahedron_3& p) const - { - return LK_Construct_bbox_3()(p); - } - - result_type - operator()(const Sphere_3& p) const - { - return LK_Construct_bbox_3()(p); - } - - result_type - operator()(const Circle_3& p) const - { - return LK_Construct_bbox_3()(p); - } - - -#endif result_type operator() (const Circular_arc_point_3 & c) const { return c.rep().bbox(); } @@ -1552,9 +1351,7 @@ template < class SK > \ template class Compute_approximate_squared_length_3 - #ifndef CGAL_CFG_MATCHING_BUG_6 : public SK::Linear_kernel::Compute_approximate_squared_length_3 -#endif { typedef typename SK::Circle_3 Circle_3; typedef typename SK::Circular_arc_3 Circular_arc_3; @@ -1563,13 +1360,7 @@ template < class SK > \ public: typedef double result_type; -#ifndef CGAL_CFG_MATCHING_BUG_6 using SK::Linear_kernel::Compute_approximate_squared_length_3::operator(); -#else - result_type - operator() (const Circle_3 & c) const - { return CGAL_PI * CGAL_PI * 4.0 * to_double(c.squared_radius()); } -#endif result_type operator() (const Circular_arc_3 & c) const { return c.rep().approximate_squared_length(); } @@ -1578,9 +1369,7 @@ template < class SK > \ template class Compute_approximate_angle_3 -#ifndef CGAL_CFG_MATCHING_BUG_6 : public SK::Linear_kernel::Compute_approximate_angle_3 -#endif { typedef typename SK::Point_3 Point_3; typedef typename SK::Vector_3 Vector_3; @@ -1591,22 +1380,8 @@ template < class SK > \ typedef double result_type; -#ifndef CGAL_CFG_MATCHING_BUG_6 using SK::Linear_kernel::Compute_approximate_angle_3::operator(); -#else - typedef typename SK::Linear_kernel::Compute_approximate_angle_3 LK_Compute_approximate_angle_3; - FT operator()(const Point_3& p, const Point_3& q, const Point_3& r) const - { - return LK_Compute_approximate_angle_3()(p,q,r); - } - - FT operator()(const Vector_3& u, const Vector_3& v) const - { - return LK_Compute_approximate_angle_3()(u,v); - } - -#endif result_type operator() (const Circular_arc_3 & c) const { return c.rep().approximate_angle(); } @@ -1614,9 +1389,7 @@ template < class SK > \ template class Bounded_side_3 -#ifndef CGAL_CFG_MATCHING_BUG_6 : public SK::Linear_kernel::Bounded_side_3 -#endif { typedef typename SK::Sphere_3 Sphere_3; typedef typename SK::Circle_3 Circle_3; @@ -1626,29 +1399,7 @@ template < class SK > \ public: typedef typename SK::Linear_kernel::Bounded_side_3::result_type result_type; -#ifndef CGAL_CFG_MATCHING_BUG_6 using SK::Linear_kernel::Bounded_side_3::operator(); -#else - typedef typename SK::Tetrahedron_3 Tetrahedron_3; - typedef typename SK::Iso_cuboid_3 Iso_cuboid_3; - typedef typename SK::Linear_kernel::Bounded_side_3 LK_Bounded_side_3; - - result_type - operator()( const Sphere_3& s, const Point_3& p) const - { return LK_Bounded_side_3()(s,p); } - - result_type - operator()( const Tetrahedron_3& t, const Point_3& p) const - { return LK_Bounded_side_3()(t,p); } - - result_type - operator()( const Iso_cuboid_3& c, const Point_3& p) const - { return LK_Bounded_side_3()(c,p); } - - result_type - operator()(const Circle_3& c, const Point_3& p) const - { return LK_Bounded_side_3()(c,p); } -#endif result_type operator()( const Sphere_3& s, const Circular_arc_point_3& p) const @@ -1664,9 +1415,7 @@ template < class SK > \ template class Has_on_bounded_side_3 -#ifndef CGAL_CFG_MATCHING_BUG_6 : public SK::Linear_kernel::Has_on_bounded_side_3 -#endif { typedef typename SK::Sphere_3 Sphere_3; typedef typename SK::Circle_3 Circle_3; @@ -1676,29 +1425,7 @@ template < class SK > \ public: typedef typename SK::Linear_kernel::Has_on_bounded_side_3::result_type result_type; -#ifndef CGAL_CFG_MATCHING_BUG_6 using SK::Linear_kernel::Has_on_bounded_side_3::operator(); -#else - typedef typename SK::Tetrahedron_3 Tetrahedron_3; - typedef typename SK::Iso_cuboid_3 Iso_cuboid_3; - typedef typename SK::Linear_kernel::Has_on_bounded_side_3 LK_Has_on_bounded_side_3; - - result_type - operator()( const Sphere_3& s, const Point_3& p) const - { return LK_Has_on_bounded_side_3()(s,p); } - - result_type - operator()( const Tetrahedron_3& t, const Point_3& p) const - { return LK_Has_on_bounded_side_3()(t,p); } - - result_type - operator()( const Iso_cuboid_3& c, const Point_3& p) const - { return LK_Has_on_bounded_side_3()(c,p); } - - result_type - operator()(const Circle_3& c, const Point_3& p) const - { return LK_Has_on_bounded_side_3()(c,p); } -#endif result_type operator()( const Sphere_3& s, const Circular_arc_point_3& p) const @@ -1714,9 +1441,7 @@ template < class SK > \ template class Has_on_unbounded_side_3 -#ifndef CGAL_CFG_MATCHING_BUG_6 : public SK::Linear_kernel::Has_on_unbounded_side_3 -#endif { typedef typename SK::Sphere_3 Sphere_3; typedef typename SK::Circle_3 Circle_3; @@ -1726,29 +1451,7 @@ template < class SK > \ public: typedef typename SK::Linear_kernel::Has_on_unbounded_side_3::result_type result_type; -#ifndef CGAL_CFG_MATCHING_BUG_6 using SK::Linear_kernel::Has_on_unbounded_side_3::operator(); -#else - typedef typename SK::Tetrahedron_3 Tetrahedron_3; - typedef typename SK::Iso_cuboid_3 Iso_cuboid_3; - typedef typename SK::Linear_kernel::Has_on_unbounded_side_3 LK_Has_on_unbounded_side_3; - - result_type - operator()( const Sphere_3& s, const Point_3& p) const - { return LK_Has_on_unbounded_side_3()(s,p); } - - result_type - operator()( const Tetrahedron_3& t, const Point_3& p) const - { return LK_Has_on_unbounded_side_3()(t,p); } - - result_type - operator()( const Iso_cuboid_3& c, const Point_3& p) const - { return LK_Has_on_unbounded_side_3()(c,p); } - - result_type - operator()(const Circle_3& c, const Point_3& p) const - { return LK_Has_on_unbounded_side_3()(c,p); } -#endif result_type operator()( const Sphere_3& s, const Circular_arc_point_3& p) const diff --git a/Filtered_kernel/include/CGAL/Lazy_kernel.h b/Filtered_kernel/include/CGAL/Lazy_kernel.h index 97c1ea349fb..696b81556f7 100644 --- a/Filtered_kernel/include/CGAL/Lazy_kernel.h +++ b/Filtered_kernel/include/CGAL/Lazy_kernel.h @@ -373,18 +373,7 @@ public: typedef typename Kernel_::Point_2 Point_2; typedef typename Kernel_::Weighted_point_2 Weighted_point_2; -#ifndef CGAL_CFG_MATCHING_BUG_6 using BaseClass::Construct_point_2::operator(); -#else // CGAL_CFG_MATCHING_BUG_6 - - - template - Point_2 operator()(const T& ...t) const - { - return BaseClass().construct_point_2_object()(t...); - } - -#endif // CGAL_CFG_MATCHING_BUG_6 const Point_2& operator()(const Point_2& p) const { @@ -437,17 +426,7 @@ public: typedef typename Kernel_::Point_3 Point_3; typedef typename Kernel_::Weighted_point_3 Weighted_point_3; -#ifndef CGAL_CFG_MATCHING_BUG_6 - using BaseClass::Construct_point_3::operator(); -#else // CGAL_CFG_MATCHING_BUG_6 - - template - Point_3 operator()(const T& ...t) const - { - return BaseClass().construct_point_3_object()(t...); - } - -#endif // CGAL_CFG_MATCHING_BUG_6 + using BaseClass::Construct_point_3::operator(); const Point_3& operator()(const Point_3& p) const { diff --git a/Filtered_kernel/include/CGAL/internal/Static_filters/Angle_3.h b/Filtered_kernel/include/CGAL/internal/Static_filters/Angle_3.h index 50895045807..d1bbf6e61bd 100644 --- a/Filtered_kernel/include/CGAL/internal/Static_filters/Angle_3.h +++ b/Filtered_kernel/include/CGAL/internal/Static_filters/Angle_3.h @@ -41,25 +41,7 @@ public: typedef typename Base::result_type result_type; - -#ifndef CGAL_CFG_MATCHING_BUG_6 using Base::operator(); -#else // CGAL_CFG_MATCHING_BUG_6 - template - result_type - operator()(const T1& t1, const T2& t2) const - { - return Base()(t1,t2); - } - - template - result_type - operator()(const T1& t1, const T2& t2, const T3& t3, const T4& t4) const - { - return Base()(t1,t2,t3,t4); - } -#endif // CGAL_CFG_MATCHING_BUG_6 - Sign sign_with_error(const double x, const double error) const { if(x > error) return POSITIVE; diff --git a/Filtered_kernel/include/CGAL/internal/Static_filters/Compare_squared_radius_3.h b/Filtered_kernel/include/CGAL/internal/Static_filters/Compare_squared_radius_3.h index cc7dc9f3580..87fe56a9f7b 100644 --- a/Filtered_kernel/include/CGAL/internal/Static_filters/Compare_squared_radius_3.h +++ b/Filtered_kernel/include/CGAL/internal/Static_filters/Compare_squared_radius_3.h @@ -30,16 +30,7 @@ namespace CGAL { namespace internal { namespace Static_filters_predicates { public: typedef typename Base::result_type result_type; - #ifndef CGAL_CFG_MATCHING_BUG_6 using Base::operator(); - #else - result_type - operator()(const Point_3& p, const FT& w) const - { - return Base::operator()(p,w); - } - #endif - result_type operator() ( const Point_3& p, diff --git a/Filtered_kernel/include/CGAL/internal/Static_filters/Compare_weighted_squared_radius_3.h b/Filtered_kernel/include/CGAL/internal/Static_filters/Compare_weighted_squared_radius_3.h index 9137774a3b8..a43617746cb 100644 --- a/Filtered_kernel/include/CGAL/internal/Static_filters/Compare_weighted_squared_radius_3.h +++ b/Filtered_kernel/include/CGAL/internal/Static_filters/Compare_weighted_squared_radius_3.h @@ -33,16 +33,7 @@ namespace CGAL { namespace internal { namespace Static_filters_predicates { public: typedef typename Base::result_type result_type; - #ifndef CGAL_CFG_MATCHING_BUG_6 using Base::operator(); - #else - result_type - operator()(const Weighted_point_3& p, const FT& w) const - { - return Base::operator()(p,w); - } - #endif - result_type operator() ( const Weighted_point_3& p, diff --git a/Filtered_kernel/include/CGAL/internal/Static_filters/Compare_x_2.h b/Filtered_kernel/include/CGAL/internal/Static_filters/Compare_x_2.h index 550bea11b1e..ae1fd1e6c68 100644 --- a/Filtered_kernel/include/CGAL/internal/Static_filters/Compare_x_2.h +++ b/Filtered_kernel/include/CGAL/internal/Static_filters/Compare_x_2.h @@ -39,31 +39,7 @@ public: typedef typename Base::result_type result_type; - -#ifndef CGAL_CFG_MATCHING_BUG_6 using Base::operator(); -#else // CGAL_CFG_MATCHING_BUG_6 - template - result_type - operator()(const T& t1, const T& t2, const T& t3) const - { - return Base()(t1,t2,t3); - } - - template - result_type - operator()(const T& t1, const T& t2, const T& t3, const T& t4) const - { - return Base()(t1,t2,t3, t4); - } - - result_type - operator()(const Point_2& p, const Line_2& l1, const Line_2& l2) const - { - return Base()(p,l1,l2); - } -#endif // CGAL_CFG_MATCHING_BUG_6 - result_type operator()(const Point_2 &p, const Point_2& q) const { diff --git a/Filtered_kernel/include/CGAL/internal/Static_filters/Compare_y_2.h b/Filtered_kernel/include/CGAL/internal/Static_filters/Compare_y_2.h index 6d1ccbcb69f..adf7d8738ea 100644 --- a/Filtered_kernel/include/CGAL/internal/Static_filters/Compare_y_2.h +++ b/Filtered_kernel/include/CGAL/internal/Static_filters/Compare_y_2.h @@ -39,31 +39,7 @@ public: typedef typename Base::result_type result_type; - -#ifndef CGAL_CFG_MATCHING_BUG_6 using Base::operator(); -#else // CGAL_CFG_MATCHING_BUG_6 - template - result_type - operator()(const T& t1, const T& t2, const T& t3) const - { - return Base()(t1,t2,t3); - } - - template - result_type - operator()(const T& t1, const T& t2, const T& t3, const T& t4) const - { - return Base()(t1,t2,t3, t4); - } - - result_type - operator()(const Point_2& p, const Line_2& l1, const Line_2& l2) const - { - return Base()(p,l1,l2); - } -#endif // CGAL_CFG_MATCHING_BUG_6 - result_type operator()(const Point_2 &p, const Point_2& q) const { diff --git a/Filtered_kernel/include/CGAL/internal/Static_filters/Do_intersect_2.h b/Filtered_kernel/include/CGAL/internal/Static_filters/Do_intersect_2.h index 4715e8c5681..a5533c253fa 100644 --- a/Filtered_kernel/include/CGAL/internal/Static_filters/Do_intersect_2.h +++ b/Filtered_kernel/include/CGAL/internal/Static_filters/Do_intersect_2.h @@ -38,17 +38,7 @@ public: typedef typename Base::result_type result_type; - -#ifndef CGAL_CFG_MATCHING_BUG_6 using Base::operator(); -#else // CGAL_CFG_MATCHING_BUG_6 - template - result_type - operator()(const T1& t1, const T2& t2) const - { - return Base()(t1,t2); - } -#endif // CGAL_CFG_MATCHING_BUG_6 // The internal::do_intersect(..) function // only performs orientation tests on the vertices diff --git a/Filtered_kernel/include/CGAL/internal/Static_filters/Do_intersect_3.h b/Filtered_kernel/include/CGAL/internal/Static_filters/Do_intersect_3.h index ffc661b636d..92cbd3ebf3f 100644 --- a/Filtered_kernel/include/CGAL/internal/Static_filters/Do_intersect_3.h +++ b/Filtered_kernel/include/CGAL/internal/Static_filters/Do_intersect_3.h @@ -50,18 +50,7 @@ public: typedef typename Base::result_type result_type; - -#ifndef CGAL_CFG_MATCHING_BUG_6 using Base::operator(); -#else // CGAL_CFG_MATCHING_BUG_6 - template - result_type - operator()(const T1& t1, const T2& t2) const - { - return Base()(t1,t2); - } -#endif // CGAL_CFG_MATCHING_BUG_6 - Sign sign_with_error(const double x, const double error) const { if(x > error) return POSITIVE; diff --git a/Filtered_kernel/include/CGAL/internal/Static_filters/Equal_2.h b/Filtered_kernel/include/CGAL/internal/Static_filters/Equal_2.h index 1af2cde1bc8..539a22f5bdd 100644 --- a/Filtered_kernel/include/CGAL/internal/Static_filters/Equal_2.h +++ b/Filtered_kernel/include/CGAL/internal/Static_filters/Equal_2.h @@ -40,18 +40,7 @@ public: typedef typename Base::result_type result_type; - -#ifndef CGAL_CFG_MATCHING_BUG_6 using Base::operator(); -#else // CGAL_CFG_MATCHING_BUG_6 - template - result_type - operator()(const T& t1, const T& t2) const - { - return Base()(t1,t2); - } -#endif // CGAL_CFG_MATCHING_BUG_6 - result_type operator()(const Point_2 &p, const Point_2& q) const { diff --git a/Filtered_kernel/include/CGAL/internal/Static_filters/Equal_3.h b/Filtered_kernel/include/CGAL/internal/Static_filters/Equal_3.h index 1fa95c42457..102199d5633 100644 --- a/Filtered_kernel/include/CGAL/internal/Static_filters/Equal_3.h +++ b/Filtered_kernel/include/CGAL/internal/Static_filters/Equal_3.h @@ -39,18 +39,7 @@ public: typedef typename Base::result_type result_type; - -#ifndef CGAL_CFG_MATCHING_BUG_6 using Base::operator(); -#else // CGAL_CFG_MATCHING_BUG_6 - template - result_type - operator()(const T& t1, const T& t2) const - { - return Base()(t1,t2); - } -#endif // CGAL_CFG_MATCHING_BUG_6 - result_type operator()(const Point_3 &p, const Point_3& q) const { diff --git a/Filtered_kernel/include/CGAL/internal/Static_filters/Is_degenerate_3.h b/Filtered_kernel/include/CGAL/internal/Static_filters/Is_degenerate_3.h index 852da37cef9..a4af481f7e1 100644 --- a/Filtered_kernel/include/CGAL/internal/Static_filters/Is_degenerate_3.h +++ b/Filtered_kernel/include/CGAL/internal/Static_filters/Is_degenerate_3.h @@ -38,18 +38,7 @@ public: typedef typename Base::result_type result_type; - -#ifndef CGAL_CFG_MATCHING_BUG_6 using Base::operator(); -#else // CGAL_CFG_MATCHING_BUG_6 - template - result_type - operator()(const T& t) const - { - return Base()(t); - } -#endif // end CGAL_CFG_MATCHING_BUG_6 - result_type operator()(const Segment_3& s) const diff --git a/Filtered_kernel/include/CGAL/internal/Static_filters/Orientation_2.h b/Filtered_kernel/include/CGAL/internal/Static_filters/Orientation_2.h index 1b684bef511..e4a8ca0f13c 100644 --- a/Filtered_kernel/include/CGAL/internal/Static_filters/Orientation_2.h +++ b/Filtered_kernel/include/CGAL/internal/Static_filters/Orientation_2.h @@ -35,21 +35,8 @@ public: typedef typename Base::result_type result_type; -#ifndef CGAL_CFG_MATCHING_BUG_6 using Base::operator(); -#else - result_type - operator()(const Vector_2& u, const Vector_2& v) const - { - return Base::operator()(u,v); - } - result_type - operator()(const Circle_2& c) const - { - return Base::operator()(c); - } -#endif Orientation operator()(const Point_2 &p, const Point_2 &q, const Point_2 &r) const diff --git a/Filtered_kernel/include/CGAL/internal/Static_filters/Orientation_3.h b/Filtered_kernel/include/CGAL/internal/Static_filters/Orientation_3.h index 9fa66cf9aa7..611aa89d344 100644 --- a/Filtered_kernel/include/CGAL/internal/Static_filters/Orientation_3.h +++ b/Filtered_kernel/include/CGAL/internal/Static_filters/Orientation_3.h @@ -36,27 +36,7 @@ class Orientation_3 public: typedef typename Base::result_type result_type; -#ifndef CGAL_CFG_MATCHING_BUG_6 using Base::operator(); -#else - result_type - operator()(const Vector_3& u, const Vector_3& v, const Vector_3& w) const - { - return Base::operator()(u,v,w); - } - - result_type - operator()(const Sphere_3& s) const - { - return Base::operator()(s); - } - - result_type - operator()(const Tetrahedron_3& t) const - { - return Base::operator()(t); - } -#endif result_type operator()(const Point_3 &p, const Point_3 &q, diff --git a/Filtered_kernel/include/CGAL/internal/Static_filters/Power_side_of_oriented_power_sphere_3.h b/Filtered_kernel/include/CGAL/internal/Static_filters/Power_side_of_oriented_power_sphere_3.h index a72b22ad205..588414ddc72 100644 --- a/Filtered_kernel/include/CGAL/internal/Static_filters/Power_side_of_oriented_power_sphere_3.h +++ b/Filtered_kernel/include/CGAL/internal/Static_filters/Power_side_of_oriented_power_sphere_3.h @@ -32,16 +32,7 @@ namespace CGAL { namespace internal { namespace Static_filters_predicates { public: typedef typename Base::result_type result_type; - #ifndef CGAL_CFG_MATCHING_BUG_6 using Base::operator(); - #else - result_type - operator()(const Weighted_point_3& p, const Weighted_point_3& q) const - { - return Base::operator()(p,q); - } - #endif - void msvc_workaround(double& max1, double& max2, double& max3, double& max4, double& max5, double& RT_tmp_result, diff --git a/Installation/include/CGAL/MSVC_compiler_config.h b/Installation/include/CGAL/MSVC_compiler_config.h index e144342afd7..d3ab991d739 100644 --- a/Installation/include/CGAL/MSVC_compiler_config.h +++ b/Installation/include/CGAL/MSVC_compiler_config.h @@ -12,16 +12,6 @@ #ifndef CGAL_MSVC_COMPILER_CONFIG_H #define CGAL_MSVC_COMPILER_CONFIG_H -// For all known version of MSVC. Actually we do not really have a -// test for that bug. -#define CGAL_CFG_MATCHING_BUG_6 1 - -// Fixed since MSVC 2015 -#define CGAL_CFG_MATCHING_BUG_7 1 - -// for all known version of MSVC -#define CGAL_CFG_MATCHING_BUG_8 1 - // Should be only for MSVC 2012 and 2013 in Release #define CGAL_CFG_FPU_ROUNDING_MODE_UNWINDING_VC_BUG 1 diff --git a/Kernel_23/include/CGAL/enum.h b/Kernel_23/include/CGAL/enum.h index 0a6651bdf68..a27ff99662d 100644 --- a/Kernel_23/include/CGAL/enum.h +++ b/Kernel_23/include/CGAL/enum.h @@ -99,29 +99,11 @@ enum Box_parameter_space_2 EXTERIOR }; - - -#ifdef CGAL_CFG_MATCHING_BUG_5 - -template < typename T, typename U > -inline -T enum_cast_bug(const U& u, const T*) -{ return static_cast(u); } - -template < typename T, typename U > -inline -typename Same_uncertainty::type enum_cast(const U& u) -{ return enum_cast_bug(u, (const T*)0); } - -#else - template < typename T, typename U > inline T enum_cast(const U& u) { return static_cast(u); } -#endif - } //namespace CGAL #endif // CGAL_ENUM_H diff --git a/Periodic_2_triangulation_2/include/CGAL/internal/Static_filters/Periodic_2_orientation_2.h b/Periodic_2_triangulation_2/include/CGAL/internal/Static_filters/Periodic_2_orientation_2.h index f406962e3f7..f2084e3a83c 100644 --- a/Periodic_2_triangulation_2/include/CGAL/internal/Static_filters/Periodic_2_orientation_2.h +++ b/Periodic_2_triangulation_2/include/CGAL/internal/Static_filters/Periodic_2_orientation_2.h @@ -103,21 +103,7 @@ public: : Base(o2b), _dom(dom) { } -#ifndef CGAL_CFG_MATCHING_BUG_6 using Base::operator(); -#else - result_type - operator()(const Vector_2& u, const Vector_2& v) const - { - return Base::operator()(u, v); - } - - result_type - operator()(const Circle_2& c) const - { - return Base::operator()(c); - } -#endif /// Normal static orientation test, copied from Orientation_2 result_type operator()(const Point_2 &p, const Point_2 &q, const Point_2 &r) const diff --git a/Periodic_3_triangulation_3/include/CGAL/internal/Static_filters/Periodic_3_orientation_3.h b/Periodic_3_triangulation_3/include/CGAL/internal/Static_filters/Periodic_3_orientation_3.h index 805c7b0f279..046cca7d418 100644 --- a/Periodic_3_triangulation_3/include/CGAL/internal/Static_filters/Periodic_3_orientation_3.h +++ b/Periodic_3_triangulation_3/include/CGAL/internal/Static_filters/Periodic_3_orientation_3.h @@ -53,21 +53,7 @@ public: : Base(o3b), _dom(dom) { } -#ifndef CGAL_CFG_MATCHING_BUG_6 using Base::operator(); -#else - result_type - operator()(const Vector_3& u, const Vector_3& v, const Vector_3& w) const - { - return Base::operator()(u,v,w); - } - - result_type - operator()(const Sphere_3& s) const - { - return Base::operator()(s); - } -#endif result_type operator()(const Point_3 &p, const Point_3 &q, diff --git a/Periodic_4_hyperbolic_triangulation_2/include/CGAL/Periodic_4_hyperbolic_Delaunay_triangulation_traits_2.h b/Periodic_4_hyperbolic_triangulation_2/include/CGAL/Periodic_4_hyperbolic_Delaunay_triangulation_traits_2.h index 332552b0ac8..8304f78bf98 100644 --- a/Periodic_4_hyperbolic_triangulation_2/include/CGAL/Periodic_4_hyperbolic_Delaunay_triangulation_traits_2.h +++ b/Periodic_4_hyperbolic_triangulation_2/include/CGAL/Periodic_4_hyperbolic_Delaunay_triangulation_traits_2.h @@ -50,23 +50,7 @@ class Hyperbolic_traits_with_translations_2_adaptor public: typedef typename Predicate::result_type result_type; -#ifndef CGAL_CFG_MATCHING_BUG_6 using Predicate::operator(); -#else - result_type operator()(const Point& p0, const Point& p1) const - { - return Predicate()(p0, p1); - } - result_type operator()(const Point& p0, const Point& p1, const Point& p2) const - { - return Predicate()(p0,p1,p2); - } - - result_type operator()(const Point& p0, const Point& p1, const Point& p2, const Point& p3) const - { - return Predicate()(p0,p1,p2,p3); - } -#endif Hyperbolic_traits_with_translations_2_adaptor(const Predicate_ pred = Predicate_()) : Predicate_(pred) {} @@ -127,14 +111,7 @@ private: public: typedef Point result_type; -#ifndef CGAL_CFG_MATCHING_BUG_6 using Construct_point_base::operator(); -#else - Point operator()(const NT& x, const NT& y) const - { - return Construct_point_base()(x,y); - } -#endif Periodic_4_construct_hyperbolic_point_2() { } diff --git a/STL_Extension/include/CGAL/Uncertain.h b/STL_Extension/include/CGAL/Uncertain.h index 947e3dfcef7..21f46a9196a 100644 --- a/STL_Extension/include/CGAL/Uncertain.h +++ b/STL_Extension/include/CGAL/Uncertain.h @@ -612,18 +612,6 @@ Uncertain operator*(Uncertain a, T b) // enum_cast overload -#ifdef CGAL_CFG_MATCHING_BUG_5 - -template < typename T, typename U > -inline -Uncertain enum_cast_bug(Uncertain u, const T*) -{ - return Uncertain(static_cast(u.inf()), - static_cast(u.sup())); -} - -#else - template < typename T, typename U > inline Uncertain enum_cast(Uncertain u) @@ -631,8 +619,6 @@ Uncertain enum_cast(Uncertain u) return Uncertain(static_cast(u.inf()), static_cast(u.sup())); } -#endif - } //namespace CGAL #endif // CGAL_UNCERTAIN_H diff --git a/Triangulation_3/include/CGAL/Robust_weighted_circumcenter_filtered_traits_3.h b/Triangulation_3/include/CGAL/Robust_weighted_circumcenter_filtered_traits_3.h index 4e8f9ebc2a1..d57b548a793 100644 --- a/Triangulation_3/include/CGAL/Robust_weighted_circumcenter_filtered_traits_3.h +++ b/Triangulation_3/include/CGAL/Robust_weighted_circumcenter_filtered_traits_3.h @@ -49,27 +49,7 @@ public: traits(k) { } -#ifndef CGAL_CFG_MATCHING_BUG_6 using Base::operator(); -#else // CGAL_CFG_MATCHING_BUG_6 - typedef typename Kernel::Sphere_3 Sphere_3; - typedef typename Kernel::Circle_3 Circle_3; - - result_type operator()(const Sphere_3& s) const - { return this->Base::operator()(s); } - - result_type operator()(const Circle_3& c) const - { return this->Base::operator()(c); } - - result_type operator()(const Point_3& p, const Point_3& q, const Point_3& r) const - { return this->Base::operator()(p,q,r); } - - result_type operator()(const Point_3& p, const Point_3& q) const - { return this->Base::operator()(p,q); } - - result_type operator()(const Point_3& p) const - { return this->Base::operator()(p); } -#endif // CGAL_CFG_MATCHING_BUG_6 FT operator()(const Point_3& p, const Point_3& q, From d07a5f2911ab261de6c8b936c4c5439fba5bc8f9 Mon Sep 17 00:00:00 2001 From: Jane Tournois Date: Fri, 25 Sep 2020 14:41:06 +0200 Subject: [PATCH 2/3] remove MSVC_compiler_config.h which is not needed anymore --- .../include/CGAL/MSVC_compiler_config.h | 18 ------------------ Installation/include/CGAL/config.h | 3 --- 2 files changed, 21 deletions(-) delete mode 100644 Installation/include/CGAL/MSVC_compiler_config.h diff --git a/Installation/include/CGAL/MSVC_compiler_config.h b/Installation/include/CGAL/MSVC_compiler_config.h deleted file mode 100644 index d3ab991d739..00000000000 --- a/Installation/include/CGAL/MSVC_compiler_config.h +++ /dev/null @@ -1,18 +0,0 @@ -// Copyright (c) 2016 GeometryFactory (France). All rights reserved. -// -// This file is part of CGAL (www.cgal.org) -// -// $URL$ -// $Id$ -// SPDX-License-Identifier: LGPL-3.0-or-later OR LicenseRef-Commercial -// -// -// Author(s) : Laurent Rineau - -#ifndef CGAL_MSVC_COMPILER_CONFIG_H -#define CGAL_MSVC_COMPILER_CONFIG_H - -// Should be only for MSVC 2012 and 2013 in Release -#define CGAL_CFG_FPU_ROUNDING_MODE_UNWINDING_VC_BUG 1 - -#endif // CGAL_MSVC_COMPILER_CONFIG_H diff --git a/Installation/include/CGAL/config.h b/Installation/include/CGAL/config.h index c15f7841a98..2ff337aedfa 100644 --- a/Installation/include/CGAL/config.h +++ b/Installation/include/CGAL/config.h @@ -159,9 +159,6 @@ #if CGAL_HEADER_ONLY # include -# if(BOOST_MSVC) -# include -# endif #else # include #endif From da5719593350ae8d6d5790e9c7534e9fc0552113 Mon Sep 17 00:00:00 2001 From: Jane Tournois Date: Mon, 28 Sep 2020 11:27:59 +0200 Subject: [PATCH 3/3] remove trailing whitespaces --- .../Circular_kernel_2/function_objects_polynomial_circular.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Circular_kernel_2/include/CGAL/Circular_kernel_2/function_objects_polynomial_circular.h b/Circular_kernel_2/include/CGAL/Circular_kernel_2/function_objects_polynomial_circular.h index df44082ad52..997911312b5 100644 --- a/Circular_kernel_2/include/CGAL/Circular_kernel_2/function_objects_polynomial_circular.h +++ b/Circular_kernel_2/include/CGAL/Circular_kernel_2/function_objects_polynomial_circular.h @@ -908,7 +908,7 @@ namespace CircularFunctors { typedef typename CK::Linear_kernel::Bounded_side_2::result_type result_type; using CK::Linear_kernel::Bounded_side_2::operator(); - + result_type operator()(const Circle_2& c, const Circular_arc_point_2& p) const { return CircularFunctors::bounded_side(c,p); } @@ -944,7 +944,7 @@ namespace CircularFunctors { typedef typename CK::Linear_kernel::Has_on_unbounded_side_2::result_type result_type; using CK::Linear_kernel::Has_on_unbounded_side_2::operator(); - + result_type operator()(const Circle_2& c, const Circular_arc_point_2& p) const { return CK().bounded_side_2_object()(c,p) == ON_UNBOUNDED_SIDE; }