summaryrefslogtreecommitdiff
path: root/lib/math.in.h
diff options
context:
space:
mode:
authorBruno Haible <bruno@clisp.org>2016-12-17 19:26:04 +0100
committerBruno Haible <bruno@clisp.org>2016-12-17 23:09:03 +0100
commitcf308efdb00585d5e7139c0e6eff3ad4854769a1 (patch)
treed4e466e63a4287b98d11c71332ef9131f9e7f7eb /lib/math.in.h
parent4d3d2763fe89ba36c256f496f0e095c650756705 (diff)
downloadgnulib-cf308efdb00585d5e7139c0e6eff3ad4854769a1.tar.gz
atan2f: Avoid redefinition error on MSVC.
* m4/math_h.m4 (gl_MATH_H_DEFAULTS): Define REPLACE_ATAN2F. * m4/atan2f.m4 (gl_FUNC_ATAN2F): Set REPLACE_ATAN2F to 1 if the function may be defined as an inline function. * modules/math (Makefile.am): Substitute REPLACE_ATAN2F. * lib/math.in.h (atan2f): Override if REPLACE_ATAN2F is 1.
Diffstat (limited to 'lib/math.in.h')
-rw-r--r--lib/math.in.h15
1 files changed, 12 insertions, 3 deletions
diff --git a/lib/math.in.h b/lib/math.in.h
index 04bbd4ef7e..9d28a4323e 100644
--- a/lib/math.in.h
+++ b/lib/math.in.h
@@ -332,11 +332,20 @@ _GL_WARN_ON_USE (atanl, "atanl is unportable - "
#if @GNULIB_ATAN2F@
-# if !@HAVE_ATAN2F@
-# undef atan2f
+# if @REPLACE_ATAN2F@
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef atan2f
+# define atan2f rpl_atan2f
+# endif
+_GL_FUNCDECL_RPL (atan2f, float, (float y, float x));
+_GL_CXXALIAS_RPL (atan2f, float, (float y, float x));
+# else
+# if !@HAVE_ATAN2F@
+# undef atan2f
_GL_FUNCDECL_SYS (atan2f, float, (float y, float x));
-# endif
+# endif
_GL_CXXALIAS_SYS (atan2f, float, (float y, float x));
+# endif
_GL_CXXALIASWARN (atan2f);
#elif defined GNULIB_POSIXCHECK
# undef atan2f