diff options
author | Bruno Haible <bruno@clisp.org> | 2016-12-17 19:26:04 +0100 |
---|---|---|
committer | Bruno Haible <bruno@clisp.org> | 2016-12-17 23:09:03 +0100 |
commit | cf308efdb00585d5e7139c0e6eff3ad4854769a1 (patch) | |
tree | d4e466e63a4287b98d11c71332ef9131f9e7f7eb /lib/math.in.h | |
parent | 4d3d2763fe89ba36c256f496f0e095c650756705 (diff) | |
download | gnulib-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.h | 15 |
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 |