From 2a0eac67f05a6ceb2fc6d141e5cb1c22034e3e7b Mon Sep 17 00:00:00 2001 From: Marc Glisse Date: Sat, 9 Nov 2019 09:58:21 +0100 Subject: [PATCH] Remove some unnecessary dereferencing. --- .../include/CGAL/NewKernel_d/function_objects_cartesian.h | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/NewKernel_d/include/CGAL/NewKernel_d/function_objects_cartesian.h b/NewKernel_d/include/CGAL/NewKernel_d/function_objects_cartesian.h index bede1fa2fa3..8cfabbb5518 100644 --- a/NewKernel_d/include/CGAL/NewKernel_d/function_objects_cartesian.h +++ b/NewKernel_d/include/CGAL/NewKernel_d/function_objects_cartesian.h @@ -665,11 +665,13 @@ template struct Construct_circumcenter : Store_kernel { Vec b(k); Vec l(k); int j,i=0; + // We are doing a quadratic number of *f, which can be costly with transforming_iterator. for(Iter f2=f;f2!=e;++f2,++i){ - b(i)=m(i,i)=sdo(*f2); + Point const& p2=*f2; + b(i)=m(i,i)=sdo(p2); j=0; for(Iter f3=f;f3!=e;++f3,++j){ - m(j,i)=m(i,j)=sp(*f2,*f3); + m(j,i)=m(i,j)=sp(p2,*f3); } } for(i=1;i