From ba6ef1b3dbbc4c91c81d58bb6ae8c1d778563e8c Mon Sep 17 00:00:00 2001
From: Ansgar Burchardt <Ansgar.Burchardt@tu-dresden.de>
Date: Sat, 29 Jun 2019 22:10:57 +0200
Subject: [PATCH] [cleanup] use `std::abs` instead of custom `ABS` macro

---
 dom/std/std_domain.cc | 35 +++++++++++++++++++----------------
 gm/evm.h              |  9 +++++----
 gm/rm.cc              | 12 ++++++------
 gm/shapes.cc          |  4 ++--
 gm/shapes.h           | 32 +++++++++++++++++---------------
 gm/ugm.cc             |  6 +++---
 low/misc.h            |  4 ----
 parallel/ddd/dddi.h   |  4 ----
 8 files changed, 52 insertions(+), 54 deletions(-)

diff --git a/dom/std/std_domain.cc b/dom/std/std_domain.cc
index 9a2672569..7d9f4c1bc 100644
--- a/dom/std/std_domain.cc
+++ b/dom/std/std_domain.cc
@@ -1734,6 +1734,8 @@ ResolvePointOnSegment (PATCH * patch, int depth, double resolution2,
 BNDP *NS_DIM_PREFIX
 BVP_InsertBndP (HEAP * Heap, BVP * aBVP, INT argc, char **argv)
 {
+  using std::abs;
+
   STD_BVP *theBVP;
   BND_PS *ps;
   PATCH *p;
@@ -1824,56 +1826,56 @@ BVP_InsertBndP (HEAP * Heap, BVP * aBVP, INT argc, char **argv)
 
 #ifdef __THREEDIM__
   /* check point on line or on point patch */
-  if (ABS (pos[0] - PARAM_PATCH_RANGE (p)[0][0]) < SMALL_DIFF)
+  if (abs(pos[0] - PARAM_PATCH_RANGE (p)[0][0]) < SMALL_DIFF)
   {
     lc = (pos[1] - PARAM_PATCH_RANGE (p)[0][1])
          / (PARAM_PATCH_RANGE (p)[1][1] - PARAM_PATCH_RANGE (p)[0][1]);
-    if (ABS (lc) < SMALL_DIFF)
+    if (abs(lc) < SMALL_DIFF)
       return (CreateBndPOnPoint
                 (Heap, currBVP->patches[PARAM_PATCH_POINTS (p, 0)]));
-    else if (ABS (lc - 1.) < SMALL_DIFF)
+    else if (abs(lc - 1.) < SMALL_DIFF)
       return (CreateBndPOnPoint
                 (Heap, currBVP->patches[PARAM_PATCH_POINTS (p, 3)]));
     return (CreateBndPOnLine
               (Heap, currBVP->patches[PARAM_PATCH_POINTS (p, 0)],
               currBVP->patches[PARAM_PATCH_POINTS (p, 3)], lc));
   }
-  else if (ABS (pos[0] - PARAM_PATCH_RANGE (p)[1][0]) < SMALL_DIFF)
+  else if (abs(pos[0] - PARAM_PATCH_RANGE (p)[1][0]) < SMALL_DIFF)
   {
     lc = (pos[1] - PARAM_PATCH_RANGE (p)[0][1])
          / (PARAM_PATCH_RANGE (p)[1][1] - PARAM_PATCH_RANGE (p)[0][1]);
-    if (ABS (lc) < SMALL_DIFF)
+    if (abs(lc) < SMALL_DIFF)
       return (CreateBndPOnPoint
                 (Heap, currBVP->patches[PARAM_PATCH_POINTS (p, 1)]));
-    else if (ABS (lc - 1.) < SMALL_DIFF)
+    else if (abs(lc - 1.) < SMALL_DIFF)
       return (CreateBndPOnPoint
                 (Heap, currBVP->patches[PARAM_PATCH_POINTS (p, 2)]));
     return (CreateBndPOnLine
               (Heap, currBVP->patches[PARAM_PATCH_POINTS (p, 1)],
               currBVP->patches[PARAM_PATCH_POINTS (p, 2)], lc));
   }
-  else if (ABS (pos[1] - PARAM_PATCH_RANGE (p)[0][1]) < SMALL_DIFF)
+  else if (abs(pos[1] - PARAM_PATCH_RANGE (p)[0][1]) < SMALL_DIFF)
   {
     lc = (pos[0] - PARAM_PATCH_RANGE (p)[0][0])
          / (PARAM_PATCH_RANGE (p)[1][0] - PARAM_PATCH_RANGE (p)[0][0]);
-    if (ABS (lc) < SMALL_DIFF)
+    if (abs(lc) < SMALL_DIFF)
       return (CreateBndPOnPoint
                 (Heap, currBVP->patches[PARAM_PATCH_POINTS (p, 0)]));
-    else if (ABS (lc - 1.) < SMALL_DIFF)
+    else if (abs(lc - 1.) < SMALL_DIFF)
       return (CreateBndPOnPoint
                 (Heap, currBVP->patches[PARAM_PATCH_POINTS (p, 1)]));
     return (CreateBndPOnLine
               (Heap, currBVP->patches[PARAM_PATCH_POINTS (p, 0)],
               currBVP->patches[PARAM_PATCH_POINTS (p, 1)], lc));
   }
-  else if (ABS (pos[1] - PARAM_PATCH_RANGE (p)[1][1]) < SMALL_DIFF)
+  else if (abs(pos[1] - PARAM_PATCH_RANGE (p)[1][1]) < SMALL_DIFF)
   {
     lc = (pos[0] - PARAM_PATCH_RANGE (p)[0][0])
          / (PARAM_PATCH_RANGE (p)[1][0] - PARAM_PATCH_RANGE (p)[0][0]);
-    if (ABS (lc) < SMALL_DIFF)
+    if (abs(lc) < SMALL_DIFF)
       return (CreateBndPOnPoint
                 (Heap, currBVP->patches[PARAM_PATCH_POINTS (p, 3)]));
-    else if (ABS (lc - 1.) < SMALL_DIFF)
+    else if (abs(lc - 1.) < SMALL_DIFF)
       return (CreateBndPOnPoint
                 (Heap, currBVP->patches[PARAM_PATCH_POINTS (p, 2)]));
     return (CreateBndPOnLine
@@ -1883,10 +1885,10 @@ BVP_InsertBndP (HEAP * Heap, BVP * aBVP, INT argc, char **argv)
 #endif
 #ifdef __TWODIM__
   /* check point on point patch */
-  if (ABS (pos[0] - PARAM_PATCH_RANGE (p)[0][0]) < SMALL_DIFF)
+  if (abs(pos[0] - PARAM_PATCH_RANGE (p)[0][0]) < SMALL_DIFF)
     return (CreateBndPOnPoint
               (Heap, currBVP->patches[PARAM_PATCH_POINTS (p, 0)]));
-  else if (ABS (pos[0] - PARAM_PATCH_RANGE (p)[0][1]) < SMALL_DIFF)
+  else if (abs(pos[0] - PARAM_PATCH_RANGE (p)[0][1]) < SMALL_DIFF)
     return (CreateBndPOnPoint
               (Heap, currBVP->patches[PARAM_PATCH_POINTS (p, 1)]));
 #endif
@@ -2505,6 +2507,7 @@ BNDS_CreateBndP (HEAP * Heap, BNDS * aBndS, DOUBLE * local)
 static INT
 BndPointGlobal (const BNDP * aBndP, DOUBLE * global)
 {
+  using std::abs;
   BND_PS *ps;
   PATCH *p, *s;
   INT j, k;
@@ -2545,7 +2548,7 @@ BndPointGlobal (const BNDP * aBndP, DOUBLE * global)
                           ps->local[j][1],
                           pglobal[0], pglobal[1], pglobal[2]));
       for (k = 0; k < DIM; k++)
-        if (ABS (pglobal[k] - global[k]) > SMALL_DIFF)
+        if (abs(pglobal[k] - global[k]) > SMALL_DIFF)
           REP_ERR_RETURN (1);
     }
 
@@ -2575,7 +2578,7 @@ BndPointGlobal (const BNDP * aBndP, DOUBLE * global)
                            ps->local[j][1],
                            pglobal[0], pglobal[1], pglobal[2]));
       for (k = 0; k < DIM; k++)
-        if (ABS (pglobal[k] - global[k]) > SMALL_DIFF)
+        if (abs(pglobal[k] - global[k]) > SMALL_DIFF)
           REP_ERR_RETURN (1);
     }
     return (0);
diff --git a/gm/evm.h b/gm/evm.h
index 84211366b..181aa5b84 100644
--- a/gm/evm.h
+++ b/gm/evm.h
@@ -31,6 +31,7 @@
 #ifndef __EVM__
 #define __EVM__
 
+#include <cmath>
 
 #include "ugtypes.h"
 #include "gm.h"
@@ -91,7 +92,7 @@ START_UGDIM_NAMESPACE
 #define V2_SCALE(c,C)                              {(C)[0] = (c)*(C)[0];\
                                                     (C)[1] = (c)*(C)[1];}
 #define V2_VECTOR_PRODUCT(A,B,c)                (c) = (A)[0]*(B)[1] - (A)[1]*(B)[0];
-#define V2_ISEQUAL(A,B)                                 ((ABS((A)[0]-(B)[0])<SMALL_C)&&(ABS((A)[1]-(B)[1])<SMALL_C))
+#define V2_ISEQUAL(A,B)                                 ((std::abs((A)[0]-(B)[0])<SMALL_C)&&(std::abs((A)[1]-(B)[1])<SMALL_C))
 #define V2_EUKLIDNORM(A,b)                              (b) = sqrt((double)((A)[0]*(A)[0]+(A)[1]*(A)[1]));
 #define V2_EUKLIDNORM_OF_DIFF(A,B,b)    (b) = sqrt((double)(((A)[0]-(B)[0])*((A)[0]-(B)[0])+((A)[1]-(B)[1])*((A)[1]-(B)[1])));
 #define V2_CLEAR(A)                                {(A)[0] = 0.0; (A)[1]= 0.0;}
@@ -117,7 +118,7 @@ START_UGDIM_NAMESPACE
 #define M2_INVERT(M,IM,det)                   \
   { DOUBLE invdet;                                  \
     det = (M)[0][0]*(M)[1][1]-(M)[1][0]*(M)[0][1];  \
-    if (ABS((det))<SMALL_D*SMALL_D) det= 0.;  \
+    if (std::abs((det))<SMALL_D*SMALL_D) det= 0.;      \
     else {                                      \
       invdet = 1.0 / (det);                       \
       (IM)[0][0] =  (M)[1][1]*invdet;             \
@@ -145,7 +146,7 @@ START_UGDIM_NAMESPACE
                                             (C)[1] = (A)[2]*(B)[0] - (A)[0]*(B)[2];\
                                             (C)[2] = (A)[0]*(B)[1] - (A)[1]*(B)[0];}
 #define V3_EUKLIDNORM(A,b)                              (b) = (sqrt((double)((A)[0]*(A)[0]+(A)[1]*(A)[1]+(A)[2]*(A)[2])));
-#define V3_ISEQUAL(A,B)                                 ((ABS((A)[0]-(B)[0])<SMALL_C)&&(ABS((A)[1]-(B)[1])<SMALL_C)&&(ABS((A)[2]-(B)[2])<SMALL_C))
+#define V3_ISEQUAL(A,B)                                 ((std::abs((A)[0]-(B)[0])<SMALL_C)&&(std::abs((A)[1]-(B)[1])<SMALL_C)&&(std::abs((A)[2]-(B)[2])<SMALL_C))
 #define V3_EUKLIDNORM_OF_DIFF(A,B,b)    (b) = (sqrt((double)(((A)[0]-(B)[0])*((A)[0]-(B)[0])+((A)[1]-(B)[1])*((A)[1]-(B)[1])+((A)[2]-(B)[2])*((A)[2]-(B)[2]))));
 #define V3_CLEAR(A)                                {(A)[0] = 0.0; (A)[1]= 0.0; (A)[2] = 0.0;}
 #define V3_SCALAR_PRODUCT(A,B,c)                (c) = ((A)[0]*(B)[0]+(A)[1]*(B)[1]+(A)[2]*(B)[2]);
@@ -172,7 +173,7 @@ START_UGDIM_NAMESPACE
             - (M)[0][2]*(M)[1][1]*(M)[2][0]           \
             - (M)[0][0]*(M)[1][2]*(M)[2][1]         \
             - (M)[0][1]*(M)[1][0]*(M)[2][2];      \
-    if (ABS((det))<SMALL_D*SMALL_D)                 \
+    if (std::abs((det))<SMALL_D*SMALL_D)                \
       return (1);                                    \
     invdet = 1.0 / (det);                           \
     (IM)[0][0] = ( (M)[1][1]*(M)[2][2] - (M)[1][2]*(M)[2][1]) * invdet;  \
diff --git a/gm/rm.cc b/gm/rm.cc
index d63c0f2b1..3288dce74 100644
--- a/gm/rm.cc
+++ b/gm/rm.cc
@@ -1730,7 +1730,7 @@ static INT MinimalSideEntry (ELEMENT *theElement)
       for (l=0; l<EDGES_OF_ELEM(theElement); l++)
         if (Angle[l]>PI/2.0)
         {
-          help = ABS(Length[l]*(DOUBLE)(cos((double)Angle[l])/sin((double)Angle[l])));
+          help = std::abs(Length[l]*(DOUBLE)(cos((double)Angle[l])/sin((double)Angle[l])));
           Max = MAX(Max,help);
         }
     }
@@ -1743,7 +1743,7 @@ static INT MinimalSideEntry (ELEMENT *theElement)
       for (i=0; i<EDGES_OF_ELEM(theElement); i++)
         if (Angle[l]>PI/2.0)
         {
-          help = ABS(Length[l]*(DOUBLE)(cos((double)Angle[l])/sin((double)Angle[l])));
+          help = std::abs(Length[l]*(DOUBLE)(cos((double)Angle[l])/sin((double)Angle[l])));
           Max = MAX(Max,help);
         }
     }
@@ -1810,7 +1810,7 @@ static INT BestLaplaceMMatrix (ELEMENT *theElement)
         return (FULL_REFRULE_0_5);
       for (l=0; l<EDGES_OF_ELEM(theElement); l++)
         if (Angle[l]>PI/2.0)
-          sum += ABS(Length[l]*(DOUBLE)cos((double)Angle[l])/(DOUBLE)sin((double)Angle[l]));
+          sum += std::abs(Length[l]*(DOUBLE)cos((double)Angle[l])/(DOUBLE)sin((double)Angle[l]));
     }
     for (k=0; k<2; k++)
     {
@@ -1820,7 +1820,7 @@ static INT BestLaplaceMMatrix (ELEMENT *theElement)
         return (FULL_REFRULE_0_5);
       for (i=0; i<EDGES_OF_ELEM(theElement); i++)
         if (Angle[l]>PI/2.0)
-          sum += ABS(Length[l]*(DOUBLE)cos((double)Angle[l])/(DOUBLE)sin((double)Angle[l]));
+          sum += std::abs(Length[l]*(DOUBLE)cos((double)Angle[l])/(DOUBLE)sin((double)Angle[l]));
     }
     if (sum<Min)
     {
@@ -1897,7 +1897,7 @@ static INT MaxPerpendicular (ELEMENT *theElement)
     V3_SUBTRACT(MidPoints[i],MidPoints[j],a)
     V3_Normalize(a);
     V3_SCALAR_PRODUCT(a,c,sprd)
-    sprd = ABS(sprd);
+    sprd = std::abs(sprd);
 
     if (sprd>Max)
     {
@@ -1969,7 +1969,7 @@ static INT MaxRightAngle (ELEMENT *theElement)
     V3_SUBTRACT(Corners[CORNER_OF_EDGE(theElement,j,0)],Corners[CORNER_OF_EDGE(theElement,j,1)],b)
     V3_Normalize(b);
     V3_SCALAR_PRODUCT(a,b,sprd)
-    sprd = ABS(sprd);
+    sprd = std::abs(sprd);
 
     if (sprd<Min)
     {
diff --git a/gm/shapes.cc b/gm/shapes.cc
index edb524d1f..4db942f6a 100644
--- a/gm/shapes.cc
+++ b/gm/shapes.cc
@@ -220,7 +220,7 @@ INT NS_DIM_PREFIX TetraSideNormals (ELEMENT *theElement, DOUBLE **theCorners, DO
     V3_Normalize(theNormals[k]);
     V3_SUBTRACT(theCorners[j],theCorners[(j+1)%4],a)
     V3_SCALAR_PRODUCT(theNormals[k],a,h);
-    if (ABS(h)<SMALL_C) return (1);
+    if (std::abs(h)<SMALL_C) return (1);
     if (h<0.0)
       V3_SCALE(-1.0,theNormals[k]);
   }
@@ -301,7 +301,7 @@ INT NS_DIM_PREFIX TetAngleAndLength (ELEMENT *theElement, const DOUBLE **theCorn
     V3_Normalize(theNormals[j]);
     k = EDGE_OF_CORNER(theElement,CORNER_OPP_TO_SIDE(theElement,j),0);
     V3_SCALAR_PRODUCT(theNormals[j],theEdge[k],h)
-    if (ABS(h)<SMALL_C) return (1);
+    if (std::abs(h)<SMALL_C) return (1);
     if ( (h<0.0 && CORNER_OF_EDGE(theElement,k,1)==CORNER_OPP_TO_SIDE(theElement,j)) ||
          (h>0.0 && CORNER_OF_EDGE(theElement,k,0)==CORNER_OPP_TO_SIDE(theElement,j))     )
       V3_SCALE(-1.0,theNormals[j]);
diff --git a/gm/shapes.h b/gm/shapes.h
index 7cda6969d..9a1779054 100644
--- a/gm/shapes.h
+++ b/gm/shapes.h
@@ -32,6 +32,8 @@
 #ifndef __SHAPES__
 #define __SHAPES__
 
+#include <cmath>
+
 #include "gm.h"
 #include "evm.h"
 
@@ -96,16 +98,16 @@ START_UGDIM_NAMESPACE
                                                                           V2_SUBTRACT((x)[1],(x)[0],a);        \
                                                                           V2_SUBTRACT((x)[2],(x)[0],b);        \
                                                                           V2_VECTOR_PRODUCT(a,b,detJ);         \
-                                                                          (area) = ABS(detJ) * 0.5;}
+                                                                          (area) = std::abs(detJ) * 0.5;}
 
 #define AREA_OF_QUADRILATERAL(x,area)   {DOUBLE detJ,ar; DOUBLE_VECTOR a,b;  \
                                                                                  V2_SUBTRACT((x)[1],(x)[0],a);       \
                                                                                  V2_SUBTRACT((x)[2],(x)[0],b);       \
                                                                                  V2_VECTOR_PRODUCT(a,b,detJ);        \
-                                                                             ar = ABS(detJ) * 0.5;               \
+                                                                                 ar = std::abs(detJ) * 0.5; \
                                                                                  V2_SUBTRACT((x)[3],(x)[0],a);       \
                                                                                  V2_VECTOR_PRODUCT(a,b,detJ);        \
-                                                                             (area) = ABS(detJ) * 0.5 + ar;}
+                                                                                 (area) = std::abs(detJ) * 0.5 + ar;}
 
 #define AREA_OF_ELEMENT_2D(n,x,area)                       \
  {if ((n) == 3)      AREA_OF_TRIANGLE((x),(area))       \
@@ -264,7 +266,7 @@ START_UGDIM_NAMESPACE
                                                                           V3_VECTOR_PRODUCT(a,b,c);            \
                                                                           V3_SUBTRACT((x)[3],(x)[0],a);        \
                                                                           V3_SCALAR_PRODUCT(a,c,detJ);         \
-                                                                          (area) = ABS(detJ)/6.0;}
+                                                                          (area) = std::abs(detJ)/6.0;}
 
 #define AREA_OF_PYRAMID(x,area)      {DOUBLE detJ,ar; DOUBLE_VECTOR a,b,c,d;\
                                                                           V3_SUBTRACT((x)[1],(x)[0],a);         \
@@ -272,11 +274,11 @@ START_UGDIM_NAMESPACE
                                                                           V3_VECTOR_PRODUCT(a,b,c);             \
                                                                           V3_SUBTRACT((x)[4],(x)[0],d);         \
                                                                           V3_SCALAR_PRODUCT(c,d,detJ);          \
-                                                                          ar = ABS(detJ)/6.0;                   \
+                                                                          ar = std::abs(detJ)/6.0; \
                                                                           V3_SUBTRACT((x)[3],(x)[0],a);         \
                                                                           V3_VECTOR_PRODUCT(a,b,c);             \
                                                                           V3_SCALAR_PRODUCT(c,d,detJ);          \
-                                                                          (area) = ABS(detJ)/6.0 + ar;}
+                                                                          (area) = std::abs(detJ)/6.0 + ar;}
 
 #define AREA_OF_PRISM(x,area)   {DOUBLE detJ,ar; DOUBLE_VECTOR a,b,c;      \
                                                                           V3_SUBTRACT((x)[1],(x)[0],a);        \
@@ -284,19 +286,19 @@ START_UGDIM_NAMESPACE
                                                                           V3_VECTOR_PRODUCT(a,b,c);            \
                                                                           V3_SUBTRACT((x)[3],(x)[0],a);        \
                                                                           V3_SCALAR_PRODUCT(a,c,detJ);         \
-                                                                          ar = ABS(detJ)/6.0;                  \
+                                                                          ar = std::abs(detJ)/6.0; \
                                                                           V3_SUBTRACT((x)[2],(x)[1],a);        \
                                                                           V3_SUBTRACT((x)[3],(x)[1],b);        \
                                                                           V3_VECTOR_PRODUCT(a,b,c);            \
                                                                           V3_SUBTRACT((x)[4],(x)[1],a);        \
                                                                           V3_SCALAR_PRODUCT(a,c,detJ);         \
-                                                                          ar += ABS(detJ)/6.0;                 \
+                                                                          ar += std::abs(detJ)/6.0; \
                                                                           V3_SUBTRACT((x)[2],(x)[5],a);        \
                                                                           V3_SUBTRACT((x)[3],(x)[5],b);        \
                                                                           V3_VECTOR_PRODUCT(a,b,c);            \
                                                                           V3_SUBTRACT((x)[4],(x)[5],a);        \
                                                                           V3_SCALAR_PRODUCT(a,c,detJ);         \
-                                                                          (area) = ABS(detJ)/6.0 + ar;}
+                                                                          (area) = std::abs(detJ)/6.0 + ar;}
 
 #define AREA_OF_HEXAHEDRON(x,area)   {DOUBLE detJ,ar; DOUBLE_VECTOR a,b,c; \
                                                                           V3_SUBTRACT((x)[1],(x)[0],a);        \
@@ -304,37 +306,37 @@ START_UGDIM_NAMESPACE
                                                                           V3_VECTOR_PRODUCT(a,b,c);            \
                                                                           V3_SUBTRACT((x)[5],(x)[0],a);        \
                                                                           V3_SCALAR_PRODUCT(a,c,detJ);         \
-                                                                          ar = ABS(detJ)/6.0;                  \
+                                                                          ar = std::abs(detJ)/6.0; \
                                                                           V3_SUBTRACT((x)[2],(x)[0],a);        \
                                                                           V3_SUBTRACT((x)[5],(x)[0],b);        \
                                                                           V3_VECTOR_PRODUCT(a,b,c);            \
                                                                           V3_SUBTRACT((x)[6],(x)[0],a);        \
                                                                           V3_SCALAR_PRODUCT(a,c,detJ);         \
-                                                                          ar += ABS(detJ)/6.0;                 \
+                                                                          ar += std::abs(detJ)/6.0; \
                                                                           V3_SUBTRACT((x)[4],(x)[0],a);        \
                                                                           V3_SUBTRACT((x)[5],(x)[0],b);        \
                                                                           V3_VECTOR_PRODUCT(a,b,c);            \
                                                                           V3_SUBTRACT((x)[6],(x)[0],a);        \
                                                                           V3_SCALAR_PRODUCT(a,c,detJ);         \
-                                                                          ar += ABS(detJ)/6.0;                 \
+                                                                          ar += std::abs(detJ)/6.0; \
                                                                           V3_SUBTRACT((x)[2],(x)[0],a);        \
                                                                           V3_SUBTRACT((x)[3],(x)[0],b);        \
                                                                           V3_VECTOR_PRODUCT(a,b,c);            \
                                                                           V3_SUBTRACT((x)[6],(x)[0],a);        \
                                                                           V3_SCALAR_PRODUCT(a,c,detJ);         \
-                                                                          ar += ABS(detJ)/6.0;                 \
+                                                                          ar += std::abs(detJ)/6.0; \
                                                                           V3_SUBTRACT((x)[3],(x)[0],a);        \
                                                                           V3_SUBTRACT((x)[4],(x)[0],b);        \
                                                                           V3_VECTOR_PRODUCT(a,b,c);            \
                                                                           V3_SUBTRACT((x)[6],(x)[0],a);        \
                                                                           V3_SCALAR_PRODUCT(a,c,detJ);         \
-                                                                          ar += ABS(detJ)/6.0;                 \
+                                                                          ar += std::abs(detJ)/6.0; \
                                                                           V3_SUBTRACT((x)[3],(x)[7],a);        \
                                                                           V3_SUBTRACT((x)[4],(x)[7],b);        \
                                                                           V3_VECTOR_PRODUCT(a,b,c);            \
                                                                           V3_SUBTRACT((x)[6],(x)[7],a);        \
                                                                           V3_SCALAR_PRODUCT(a,c,detJ);         \
-                                                                          (area) = ABS(detJ)/6.0 + ar;}
+                                                                          (area) = std::abs(detJ)/6.0 + ar;}
 
 #define AREA_OF_ELEMENT_3D(n,x,area)                        \
  {if ((n) == 4)      {AREA_OF_TETRAHEDRON((x),(area));}  \
diff --git a/gm/ugm.cc b/gm/ugm.cc
index 2d2723bef..081cb31fa 100644
--- a/gm/ugm.cc
+++ b/gm/ugm.cc
@@ -7732,12 +7732,12 @@ static int sort_entries (const void *e1, const void *e2)
 /*
    static INT PositionsMatch(DOUBLE_VECTOR pos1, DOUBLE_VECTOR pos2)
    {
-   if (ABS(pos1[0]-pos2[0])>SMALL_DOUBLE)
+   if (std::abs(pos1[0]-pos2[0])>SMALL_DOUBLE)
         return (1);
-   if (ABS(pos1[1]-pos2[1])>SMALL_DOUBLE)
+   if (std::abs(pos1[1]-pos2[1])>SMALL_DOUBLE)
         return (1);
    #ifdef __THREEDIM__
-   if (ABS(pos1[2]-pos2[2])>SMALL_DOUBLE)
+   if (std::abs(pos1[2]-pos2[2])>SMALL_DOUBLE)
         return (1);
    #endif
 
diff --git a/low/misc.h b/low/misc.h
index 749bce103..702eb284f 100644
--- a/low/misc.h
+++ b/low/misc.h
@@ -65,11 +65,7 @@ START_UG_NAMESPACE
 #ifdef MAX
 #undef MAX
 #endif
-#ifdef ABS
-#undef ABS
-#endif
 
-#define ABS(i)                   (((i)<0) ? (-(i)) : (i))
 #define MIN(x,y)                 (((x)<(y)) ? (x) : (y))
 #define MAX(x,y)                 (((x)>(y)) ? (x) : (y))
 #define POW2(i)                  (1<<(i))
diff --git a/parallel/ddd/dddi.h b/parallel/ddd/dddi.h
index 71a86c5ad..5b6075ff6 100644
--- a/parallel/ddd/dddi.h
+++ b/parallel/ddd/dddi.h
@@ -171,10 +171,6 @@ enum PrioMergeVals {
 /*                                                                          */
 /****************************************************************************/
 
-#ifndef ABS
-#define ABS(i) (((i)<0) ? (-(i)) : (i))
-#endif
-
 #ifndef MIN
 #define MIN(x,y) (((x)<(y)) ? (x) : (y))
 #endif
-- 
GitLab