Make *abs() and *div() work on CloudABI.
According to POSIX, *abs() and *div() are allowed to be macros (in
addition to being functions). Make sure we undefine these, so that
std::*abs() and std::*div() work as expected.
llvm-svn: 232379
Cr-Mirrored-From: sso://chromium.googlesource.com/_direct/external/github.com/llvm/llvm-project
Cr-Mirrored-Commit: 74bbf7c7eed54cd01ad49c36820269bb7bfb5592
diff --git a/include/cstdlib b/include/cstdlib
index 152b891..298040e 100644
--- a/include/cstdlib
+++ b/include/cstdlib
@@ -131,14 +131,20 @@
using ::system;
using ::bsearch;
using ::qsort;
+#undef abs
using ::abs;
+#undef labs
using ::labs;
#ifndef _LIBCPP_HAS_NO_LONG_LONG
+#undef llabs
using ::llabs;
#endif // _LIBCPP_HAS_NO_LONG_LONG
+#undef div
using ::div;
+#undef ldiv
using ::ldiv;
#ifndef _LIBCPP_HAS_NO_LONG_LONG
+#undef lldiv
using ::lldiv;
#endif // _LIBCPP_HAS_NO_LONG_LONG
using ::mblen;