summaryrefslogtreecommitdiff
path: root/src/include/c.h
diff options
context:
space:
mode:
authorPeter Eisentraut2022-10-10 06:51:07 +0000
committerPeter Eisentraut2022-10-10 07:01:17 +0000
commit357cfefb09115292cfb98d504199e6df8201c957 (patch)
treede61dcf6318f8de5c0f6126e9d1ee1b222150b46 /src/include/c.h
parent06dbd619bfbfe03fefa7223838690d4012f874ad (diff)
Use C library functions instead of Abs() for int64
Instead of Abs() for int64, use the C standard functions labs() or llabs() as appropriate. Define a small wrapper around them that matches our definition of int64. (labs() is C90, llabs() is C99.) Reviewed-by: Zhang Mingli <zmlpostgres@gmail.com> Reviewed-by: Tom Lane <tgl@sss.pgh.pa.us> Discussion: https://www.postgresql.org/message-id/flat/4beb42b5-216b-bce8-d452-d924d5794c63%40enterprisedb.com
Diffstat (limited to 'src/include/c.h')
-rw-r--r--src/include/c.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/include/c.h b/src/include/c.h
index c8f72e44d89..405d53cb56b 100644
--- a/src/include/c.h
+++ b/src/include/c.h
@@ -1283,6 +1283,15 @@ extern int fdatasync(int fildes);
#endif
/*
+ * Similarly, wrappers around labs()/llabs() matching our int64.
+ */
+#ifdef HAVE_LONG_INT_64
+#define i64abs(i) labs(i)
+#else
+#define i64abs(i) llabs(i)
+#endif
+
+/*
* Use "extern PGDLLIMPORT ..." to declare variables that are defined
* in the core backend and need to be accessible by loadable modules.
* No special marking is required on most ports.