- Fix stupid bug affecting Lazy_exact_nt's overloaded predicates...

This commit is contained in:
Sylvain Pion 2003-03-06 14:31:14 +00:00
parent 966b55e4d9
commit ae24bbf49b
10 changed files with 178 additions and 106 deletions

View File

@ -1,3 +1,6 @@
Version 4.162 on 6 March 2003
- Fix stupid bug affecting Lazy_exact_nt's overloaded predicates...
Version 4.161 on 21 February 2003
- Filtered_kernel uses the new true extensibility.

View File

@ -122,7 +122,7 @@ power_testC2(
static Profile_counter calls("Lazy IA power_testC2 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return power_testC2(
px.interval(),
py.interval(),
@ -143,7 +143,7 @@ power_testC2(
static Profile_counter failures("Lazy IA power_testC2 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return power_testC2(
px.exact(),
py.exact(),
@ -239,7 +239,7 @@ power_testC2(
static Profile_counter calls("Lazy IA power_testC2 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return power_testC2(
px.interval(),
py.interval(),
@ -257,7 +257,7 @@ power_testC2(
static Profile_counter failures("Lazy IA power_testC2 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return power_testC2(
px.exact(),
py.exact(),

View File

@ -154,7 +154,7 @@ power_testC3(
static Profile_counter calls("Lazy IA power_testC3 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return power_testC3(
px.interval(),
py.interval(),
@ -183,7 +183,7 @@ power_testC3(
static Profile_counter failures("Lazy IA power_testC3 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return power_testC3(
px.exact(),
py.exact(),
@ -315,7 +315,7 @@ power_testC3(
static Profile_counter calls("Lazy IA power_testC3 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return power_testC3(
px.interval(),
py.interval(),
@ -340,7 +340,7 @@ power_testC3(
static Profile_counter failures("Lazy IA power_testC3 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return power_testC3(
px.exact(),
py.exact(),
@ -452,7 +452,7 @@ power_testC3(
static Profile_counter calls("Lazy IA power_testC3 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return power_testC3(
px.interval(),
py.interval(),
@ -473,7 +473,7 @@ power_testC3(
static Profile_counter failures("Lazy IA power_testC3 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return power_testC3(
px.exact(),
py.exact(),
@ -491,6 +491,75 @@ power_testC3(
}
#endif
#ifndef CGAL_CFG_MATCHING_BUG_2
template < class CGAL_IA_CT, class CGAL_IA_ET, bool CGAL_IA_PROTECTED,
class CGAL_IA_CACHE >
#else
static
#endif
/* */
Oriented_side
power_testC3(
const Filtered_exact <CGAL_IA_CT, CGAL_IA_ET, Dynamic, CGAL_IA_PROTECTED, CGAL_IA_CACHE> &pwt,
const Filtered_exact <CGAL_IA_CT, CGAL_IA_ET, Dynamic, CGAL_IA_PROTECTED, CGAL_IA_CACHE> &qwt)
{
try
{
#ifdef CGAL_PROFILE
static Profile_counter calls("IA power_testC3 calls");
++calls;
#endif
Protect_FPU_rounding<CGAL_IA_PROTECTED> Protection;
return power_testC3(
pwt.interval(),
qwt.interval());
}
catch (Interval_nt_advanced::unsafe_comparison)
{
#ifdef CGAL_PROFILE
static Profile_counter failures("IA power_testC3 failures");
++failures;
#endif
Protect_FPU_rounding<!CGAL_IA_PROTECTED> Protection(CGAL_FE_TONEAREST);
return power_testC3(
pwt.exact(),
qwt.exact());
}
}
#ifndef CGAL_CFG_MATCHING_BUG_2
template < class ET >
/* */
Oriented_side
power_testC3(
const Lazy_exact_nt<ET> &pwt,
const Lazy_exact_nt<ET> &qwt)
{
try
{
#ifdef CGAL_PROFILE
static Profile_counter calls("Lazy IA power_testC3 calls");
++calls;
#endif
Protect_FPU_rounding<true> Protection;
return power_testC3(
pwt.interval(),
qwt.interval());
}
catch (Interval_nt_advanced::unsafe_comparison)
{
#ifdef CGAL_PROFILE
static Profile_counter failures("Lazy IA power_testC3 failures");
++failures;
#endif
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return power_testC3(
pwt.exact(),
qwt.exact());
}
}
#endif
CGAL_END_NAMESPACE
#endif // CGAL_ARITHMETIC_FILTER_REGULAR_TRIANGULATION_FTC3_H

View File

@ -138,7 +138,7 @@ power_testH2(
static Profile_counter calls("Lazy IA power_testH2 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return power_testH2(
phx.interval(),
phy.interval(),
@ -163,7 +163,7 @@ power_testH2(
static Profile_counter failures("Lazy IA power_testH2 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return power_testH2(
phx.exact(),
phy.exact(),
@ -275,7 +275,7 @@ power_testH2(
static Profile_counter calls("Lazy IA power_testH2 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return power_testH2(
phx.interval(),
phy.interval(),
@ -296,7 +296,7 @@ power_testH2(
static Profile_counter failures("Lazy IA power_testH2 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return power_testH2(
phx.exact(),
phy.exact(),

View File

@ -174,7 +174,7 @@ power_testH3(
static Profile_counter calls("Lazy IA power_testH3 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return power_testH3(
phx.interval(),
phy.interval(),
@ -208,7 +208,7 @@ power_testH3(
static Profile_counter failures("Lazy IA power_testH3 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return power_testH3(
phx.exact(),
phy.exact(),

View File

@ -110,7 +110,7 @@ in_smallest_orthogonalcircleC2(
static Profile_counter calls("Lazy IA in_smallest_orthogonalcircleC2 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return in_smallest_orthogonalcircleC2(
px.interval(),
py.interval(),
@ -128,7 +128,7 @@ in_smallest_orthogonalcircleC2(
static Profile_counter failures("Lazy IA in_smallest_orthogonalcircleC2 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return in_smallest_orthogonalcircleC2(
px.exact(),
py.exact(),

View File

@ -98,7 +98,7 @@ equal_lineC2(
static Profile_counter calls("Lazy IA equal_lineC2 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return equal_lineC2(
l1a.interval(),
l1b.interval(),
@ -113,7 +113,7 @@ equal_lineC2(
static Profile_counter failures("Lazy IA equal_lineC2 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return equal_lineC2(
l1a.exact(),
l1b.exact(),
@ -195,7 +195,7 @@ compare_xC2(
static Profile_counter calls("Lazy IA compare_xC2 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return compare_xC2(
px.interval(),
la.interval(),
@ -211,7 +211,7 @@ compare_xC2(
static Profile_counter failures("Lazy IA compare_xC2 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return compare_xC2(
px.exact(),
la.exact(),
@ -302,7 +302,7 @@ compare_xC2(
static Profile_counter calls("Lazy IA compare_xC2 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return compare_xC2(
la.interval(),
lb.interval(),
@ -320,7 +320,7 @@ compare_xC2(
static Profile_counter failures("Lazy IA compare_xC2 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return compare_xC2(
la.exact(),
lb.exact(),
@ -425,7 +425,7 @@ compare_xC2(
static Profile_counter calls("Lazy IA compare_xC2 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return compare_xC2(
l1a.interval(),
l1b.interval(),
@ -446,7 +446,7 @@ compare_xC2(
static Profile_counter failures("Lazy IA compare_xC2 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return compare_xC2(
l1a.exact(),
l1b.exact(),
@ -526,7 +526,7 @@ compare_y_at_xC2(
static Profile_counter calls("Lazy IA compare_y_at_xC2 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return compare_y_at_xC2(
px.interval(),
py.interval(),
@ -540,7 +540,7 @@ compare_y_at_xC2(
static Profile_counter failures("Lazy IA compare_y_at_xC2 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return compare_y_at_xC2(
px.exact(),
py.exact(),
@ -621,7 +621,7 @@ compare_y_at_xC2(
static Profile_counter calls("Lazy IA compare_y_at_xC2 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return compare_y_at_xC2(
px.interval(),
l1a.interval(),
@ -637,7 +637,7 @@ compare_y_at_xC2(
static Profile_counter failures("Lazy IA compare_y_at_xC2 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return compare_y_at_xC2(
px.exact(),
l1a.exact(),
@ -728,7 +728,7 @@ compare_y_at_xC2(
static Profile_counter calls("Lazy IA compare_y_at_xC2 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return compare_y_at_xC2(
l1a.interval(),
l1b.interval(),
@ -746,7 +746,7 @@ compare_y_at_xC2(
static Profile_counter failures("Lazy IA compare_y_at_xC2 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return compare_y_at_xC2(
l1a.exact(),
l1b.exact(),
@ -851,7 +851,7 @@ compare_y_at_xC2(
static Profile_counter calls("Lazy IA compare_y_at_xC2 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return compare_y_at_xC2(
l1a.interval(),
l1b.interval(),
@ -872,7 +872,7 @@ compare_y_at_xC2(
static Profile_counter failures("Lazy IA compare_y_at_xC2 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return compare_y_at_xC2(
l1a.exact(),
l1b.exact(),
@ -968,7 +968,7 @@ compare_y_at_x_segment_C2(
static Profile_counter calls("Lazy IA compare_y_at_x_segment_C2 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return compare_y_at_x_segment_C2(
px.interval(),
s1sx.interval(),
@ -986,7 +986,7 @@ compare_y_at_x_segment_C2(
static Profile_counter failures("Lazy IA compare_y_at_x_segment_C2 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return compare_y_at_x_segment_C2(
px.exact(),
s1sx.exact(),
@ -1059,7 +1059,7 @@ equal_directionC2(
static Profile_counter calls("Lazy IA equal_directionC2 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return equal_directionC2(
dx1.interval(),
dy1.interval(),
@ -1072,7 +1072,7 @@ equal_directionC2(
static Profile_counter failures("Lazy IA equal_directionC2 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return equal_directionC2(
dx1.exact(),
dy1.exact(),
@ -1140,7 +1140,7 @@ compare_slopesC2(
static Profile_counter calls("Lazy IA compare_slopesC2 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return compare_slopesC2(
l1a.interval(),
l1b.interval(),
@ -1153,7 +1153,7 @@ compare_slopesC2(
static Profile_counter failures("Lazy IA compare_slopesC2 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return compare_slopesC2(
l1a.exact(),
l1b.exact(),
@ -1237,7 +1237,7 @@ compare_slopesC2(
static Profile_counter calls("Lazy IA compare_slopesC2 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return compare_slopesC2(
s1_src_x.interval(),
s1_src_y.interval(),
@ -1254,7 +1254,7 @@ compare_slopesC2(
static Profile_counter failures("Lazy IA compare_slopesC2 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return compare_slopesC2(
s1_src_x.exact(),
s1_src_y.exact(),
@ -1326,7 +1326,7 @@ compare_deltax_deltayC2(
static Profile_counter calls("Lazy IA compare_deltax_deltayC2 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return compare_deltax_deltayC2(
px.interval(),
qx.interval(),
@ -1339,7 +1339,7 @@ compare_deltax_deltayC2(
static Profile_counter failures("Lazy IA compare_deltax_deltayC2 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return compare_deltax_deltayC2(
px.exact(),
qx.exact(),
@ -1415,7 +1415,7 @@ orientationC2(
static Profile_counter calls("Lazy IA orientationC2 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return orientationC2(
px.interval(),
py.interval(),
@ -1430,7 +1430,7 @@ orientationC2(
static Profile_counter failures("Lazy IA orientationC2 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return orientationC2(
px.exact(),
py.exact(),
@ -1508,7 +1508,7 @@ angleC2(
static Profile_counter calls("Lazy IA angleC2 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return angleC2(
px.interval(),
py.interval(),
@ -1523,7 +1523,7 @@ angleC2(
static Profile_counter failures("Lazy IA angleC2 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return angleC2(
px.exact(),
py.exact(),
@ -1609,7 +1609,7 @@ side_of_oriented_circleC2(
static Profile_counter calls("Lazy IA side_of_oriented_circleC2 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return side_of_oriented_circleC2(
px.interval(),
py.interval(),
@ -1626,7 +1626,7 @@ side_of_oriented_circleC2(
static Profile_counter failures("Lazy IA side_of_oriented_circleC2 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return side_of_oriented_circleC2(
px.exact(),
py.exact(),
@ -1714,7 +1714,7 @@ side_of_bounded_circleC2(
static Profile_counter calls("Lazy IA side_of_bounded_circleC2 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return side_of_bounded_circleC2(
px.interval(),
py.interval(),
@ -1731,7 +1731,7 @@ side_of_bounded_circleC2(
static Profile_counter failures("Lazy IA side_of_bounded_circleC2 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return side_of_bounded_circleC2(
px.exact(),
py.exact(),
@ -1811,7 +1811,7 @@ side_of_bounded_circleC2(
static Profile_counter calls("Lazy IA side_of_bounded_circleC2 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return side_of_bounded_circleC2(
px.interval(),
py.interval(),
@ -1826,7 +1826,7 @@ side_of_bounded_circleC2(
static Profile_counter failures("Lazy IA side_of_bounded_circleC2 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return side_of_bounded_circleC2(
px.exact(),
py.exact(),
@ -1904,7 +1904,7 @@ cmp_dist_to_pointC2(
static Profile_counter calls("Lazy IA cmp_dist_to_pointC2 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return cmp_dist_to_pointC2(
px.interval(),
py.interval(),
@ -1919,7 +1919,7 @@ cmp_dist_to_pointC2(
static Profile_counter failures("Lazy IA cmp_dist_to_pointC2 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return cmp_dist_to_pointC2(
px.exact(),
py.exact(),
@ -1997,7 +1997,7 @@ cmp_signed_dist_to_directionC2(
static Profile_counter calls("Lazy IA cmp_signed_dist_to_directionC2 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return cmp_signed_dist_to_directionC2(
la.interval(),
lb.interval(),
@ -2012,7 +2012,7 @@ cmp_signed_dist_to_directionC2(
static Profile_counter failures("Lazy IA cmp_signed_dist_to_directionC2 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return cmp_signed_dist_to_directionC2(
la.exact(),
lb.exact(),
@ -2098,7 +2098,7 @@ cmp_signed_dist_to_lineC2(
static Profile_counter calls("Lazy IA cmp_signed_dist_to_lineC2 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return cmp_signed_dist_to_lineC2(
px.interval(),
py.interval(),
@ -2115,7 +2115,7 @@ cmp_signed_dist_to_lineC2(
static Profile_counter failures("Lazy IA cmp_signed_dist_to_lineC2 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return cmp_signed_dist_to_lineC2(
px.exact(),
py.exact(),
@ -2191,7 +2191,7 @@ side_of_oriented_lineC2(
static Profile_counter calls("Lazy IA side_of_oriented_lineC2 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return side_of_oriented_lineC2(
a.interval(),
b.interval(),
@ -2205,7 +2205,7 @@ side_of_oriented_lineC2(
static Profile_counter failures("Lazy IA side_of_oriented_lineC2 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return side_of_oriented_lineC2(
a.exact(),
b.exact(),

View File

@ -98,7 +98,7 @@ strict_dominanceC3(
static Profile_counter calls("Lazy IA strict_dominanceC3 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return strict_dominanceC3(
px.interval(),
py.interval(),
@ -113,7 +113,7 @@ strict_dominanceC3(
static Profile_counter failures("Lazy IA strict_dominanceC3 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return strict_dominanceC3(
px.exact(),
py.exact(),
@ -191,7 +191,7 @@ dominanceC3(
static Profile_counter calls("Lazy IA dominanceC3 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return dominanceC3(
px.interval(),
py.interval(),
@ -206,7 +206,7 @@ dominanceC3(
static Profile_counter failures("Lazy IA dominanceC3 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return dominanceC3(
px.exact(),
py.exact(),
@ -296,7 +296,7 @@ collinearC3(
static Profile_counter calls("Lazy IA collinearC3 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return collinearC3(
px.interval(),
py.interval(),
@ -314,7 +314,7 @@ collinearC3(
static Profile_counter failures("Lazy IA collinearC3 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return collinearC3(
px.exact(),
py.exact(),
@ -419,7 +419,7 @@ orientationC3(
static Profile_counter calls("Lazy IA orientationC3 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return orientationC3(
px.interval(),
py.interval(),
@ -440,7 +440,7 @@ orientationC3(
static Profile_counter failures("Lazy IA orientationC3 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return orientationC3(
px.exact(),
py.exact(),
@ -536,7 +536,7 @@ angleC3(
static Profile_counter calls("Lazy IA angleC3 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return angleC3(
px.interval(),
py.interval(),
@ -554,7 +554,7 @@ angleC3(
static Profile_counter failures("Lazy IA angleC3 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return angleC3(
px.exact(),
py.exact(),
@ -659,7 +659,7 @@ coplanar_side_of_bounded_circleC3(
static Profile_counter calls("Lazy IA coplanar_side_of_bounded_circleC3 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return coplanar_side_of_bounded_circleC3(
px.interval(),
py.interval(),
@ -680,7 +680,7 @@ coplanar_side_of_bounded_circleC3(
static Profile_counter failures("Lazy IA coplanar_side_of_bounded_circleC3 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return coplanar_side_of_bounded_circleC3(
px.exact(),
py.exact(),
@ -764,7 +764,7 @@ equal_directionC3(
static Profile_counter calls("Lazy IA equal_directionC3 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return equal_directionC3(
dx1.interval(),
dy1.interval(),
@ -779,7 +779,7 @@ equal_directionC3(
static Profile_counter failures("Lazy IA equal_directionC3 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return equal_directionC3(
dx1.exact(),
dy1.exact(),
@ -865,7 +865,7 @@ equal_planeC3(
static Profile_counter calls("Lazy IA equal_planeC3 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return equal_planeC3(
ha.interval(),
hb.interval(),
@ -882,7 +882,7 @@ equal_planeC3(
static Profile_counter failures("Lazy IA equal_planeC3 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return equal_planeC3(
ha.exact(),
hb.exact(),
@ -966,7 +966,7 @@ side_of_oriented_planeC3(
static Profile_counter calls("Lazy IA side_of_oriented_planeC3 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return side_of_oriented_planeC3(
a.interval(),
b.interval(),
@ -982,7 +982,7 @@ side_of_oriented_planeC3(
static Profile_counter failures("Lazy IA side_of_oriented_planeC3 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return side_of_oriented_planeC3(
a.exact(),
b.exact(),
@ -1097,7 +1097,7 @@ side_of_oriented_sphereC3(
static Profile_counter calls("Lazy IA side_of_oriented_sphereC3 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return side_of_oriented_sphereC3(
px.interval(),
py.interval(),
@ -1121,7 +1121,7 @@ side_of_oriented_sphereC3(
static Profile_counter failures("Lazy IA side_of_oriented_sphereC3 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return side_of_oriented_sphereC3(
px.exact(),
py.exact(),
@ -1244,7 +1244,7 @@ side_of_bounded_sphereC3(
static Profile_counter calls("Lazy IA side_of_bounded_sphereC3 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return side_of_bounded_sphereC3(
px.interval(),
py.interval(),
@ -1268,7 +1268,7 @@ side_of_bounded_sphereC3(
static Profile_counter failures("Lazy IA side_of_bounded_sphereC3 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return side_of_bounded_sphereC3(
px.exact(),
py.exact(),
@ -1367,7 +1367,7 @@ side_of_bounded_sphereC3(
static Profile_counter calls("Lazy IA side_of_bounded_sphereC3 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return side_of_bounded_sphereC3(
px.interval(),
py.interval(),
@ -1385,7 +1385,7 @@ side_of_bounded_sphereC3(
static Profile_counter failures("Lazy IA side_of_bounded_sphereC3 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return side_of_bounded_sphereC3(
px.exact(),
py.exact(),
@ -1478,7 +1478,7 @@ cmp_dist_to_pointC3(
static Profile_counter calls("Lazy IA cmp_dist_to_pointC3 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return cmp_dist_to_pointC3(
px.interval(),
py.interval(),
@ -1496,7 +1496,7 @@ cmp_dist_to_pointC3(
static Profile_counter failures("Lazy IA cmp_dist_to_pointC3 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return cmp_dist_to_pointC3(
px.exact(),
py.exact(),
@ -1601,7 +1601,7 @@ side_of_bounded_sphereC3(
static Profile_counter calls("Lazy IA side_of_bounded_sphereC3 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return side_of_bounded_sphereC3(
px.interval(),
py.interval(),
@ -1622,7 +1622,7 @@ side_of_bounded_sphereC3(
static Profile_counter failures("Lazy IA side_of_bounded_sphereC3 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return side_of_bounded_sphereC3(
px.exact(),
py.exact(),
@ -1718,7 +1718,7 @@ cmp_signed_dist_to_directionC3(
static Profile_counter calls("Lazy IA cmp_signed_dist_to_directionC3 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return cmp_signed_dist_to_directionC3(
pa.interval(),
pb.interval(),
@ -1736,7 +1736,7 @@ cmp_signed_dist_to_directionC3(
static Profile_counter failures("Lazy IA cmp_signed_dist_to_directionC3 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return cmp_signed_dist_to_directionC3(
pa.exact(),
pb.exact(),
@ -1853,7 +1853,7 @@ cmp_signed_dist_to_planeC3(
static Profile_counter calls("Lazy IA cmp_signed_dist_to_planeC3 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return cmp_signed_dist_to_planeC3(
ppx.interval(),
ppy.interval(),
@ -1877,7 +1877,7 @@ cmp_signed_dist_to_planeC3(
static Profile_counter failures("Lazy IA cmp_signed_dist_to_planeC3 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return cmp_signed_dist_to_planeC3(
ppx.exact(),
ppy.exact(),

View File

@ -90,7 +90,7 @@ sign_of_determinant2x2(
static Profile_counter calls("Lazy IA sign_of_determinant2x2 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return sign_of_determinant2x2(
a00.interval(),
a01.interval(),
@ -103,7 +103,7 @@ sign_of_determinant2x2(
static Profile_counter failures("Lazy IA sign_of_determinant2x2 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return sign_of_determinant2x2(
a00.exact(),
a01.exact(),
@ -191,7 +191,7 @@ sign_of_determinant3x3(
static Profile_counter calls("Lazy IA sign_of_determinant3x3 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return sign_of_determinant3x3(
a00.interval(),
a01.interval(),
@ -209,7 +209,7 @@ sign_of_determinant3x3(
static Profile_counter failures("Lazy IA sign_of_determinant3x3 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return sign_of_determinant3x3(
a00.exact(),
a01.exact(),
@ -330,7 +330,7 @@ sign_of_determinant4x4(
static Profile_counter calls("Lazy IA sign_of_determinant4x4 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return sign_of_determinant4x4(
a00.interval(),
a01.interval(),
@ -355,7 +355,7 @@ sign_of_determinant4x4(
static Profile_counter failures("Lazy IA sign_of_determinant4x4 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return sign_of_determinant4x4(
a00.exact(),
a01.exact(),
@ -519,7 +519,7 @@ sign_of_determinant5x5(
static Profile_counter calls("Lazy IA sign_of_determinant5x5 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return sign_of_determinant5x5(
a00.interval(),
a01.interval(),
@ -553,7 +553,7 @@ sign_of_determinant5x5(
static Profile_counter failures("Lazy IA sign_of_determinant5x5 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return sign_of_determinant5x5(
a00.exact(),
a01.exact(),
@ -770,7 +770,7 @@ sign_of_determinant6x6(
static Profile_counter calls("Lazy IA sign_of_determinant6x6 calls");
++calls;
#endif
Protect_FPU_rounding<false> Protection;
Protect_FPU_rounding<true> Protection;
return sign_of_determinant6x6(
a00.interval(),
a01.interval(),
@ -815,7 +815,7 @@ sign_of_determinant6x6(
static Profile_counter failures("Lazy IA sign_of_determinant6x6 failures");
++failures;
#endif
Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return sign_of_determinant6x6(
a00.exact(),
a01.exact(),

View File

@ -173,7 +173,7 @@ $fct_name($args_call2)
static Profile_counter calls(\"Lazy IA $fct_name calls\");
++calls;
#endif
${CGAL}Protect_FPU_rounding<false> Protection;
${CGAL}Protect_FPU_rounding<true> Protection;
return $fct_name($args_inter);
}
catch (${CGAL}Interval_nt_advanced::unsafe_comparison)
@ -182,7 +182,7 @@ $fct_name($args_call2)
static Profile_counter failures(\"Lazy IA $fct_name failures\");
++failures;
#endif
${CGAL}Protect_FPU_rounding<true> Protection(CGAL_FE_TONEAREST);
${CGAL}Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST);
return $fct_name($args_exact);
}
}