From 3f7a2374d312112ea9a858dbbb883edf50730e96 Mon Sep 17 00:00:00 2001 From: David Edelsohn Date: Wed, 21 Jul 2021 14:06:45 -0400 Subject: [PATCH] aix: Protect AIX math.h overloads with new macro. AIX math.h provides C++ overloaded inlined math functions, which should not be present for G++. The definitions have been guaded by __COMPATMATH__, but that macro had other uses in IBM xlC++. A new macro has been introduced with the sole purpose of guarding the functions. This patch updates libstdc++ os_defines.h to define the additional macro. The earlier macro definition is retained to guard the functions in the math.h header of earlier AIX releases. libstdc++-v3/ChangeLog: * config/os/aix/os_defines.h (__LIBC_NO_CPP_MATH_OVERLOADS__): Define. --- libstdc++-v3/config/os/aix/os_defines.h | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/libstdc++-v3/config/os/aix/os_defines.h b/libstdc++-v3/config/os/aix/os_defines.h index 723a6533319..265e2941d1a 100644 --- a/libstdc++-v3/config/os/aix/os_defines.h +++ b/libstdc++-v3/config/os/aix/os_defines.h @@ -1,3 +1,4 @@ +// SPDX-License-Identifier: GPL-3.0-or-later WITH GCC-exception-3.1 // Specific definitions for AIX -*- C++ -*- // Copyright (C) 2000-2021 Free Software Foundation, Inc. @@ -48,6 +49,10 @@ #define __COMPATMATH__ #endif +#ifndef __LIBC_NO_CPP_MATH_OVERLOADS__ +#define __LIBC_NO_CPP_MATH_OVERLOADS__ +#endif + // No support for referencing weak symbols without a definition. #define _GLIBCXX_USE_WEAK_REF 0