mirror of
https://sourceware.org/git/glibc.git
synced 2025-01-09 19:00:08 +00:00
math.h: Wrap C++ bits in extern "C++"
It is still common to include system header files in an extern "C" block. This means that exiting <math.h>'s own extern "C" block is not sufficient to get back to C++ mode. Use an extern "C++" wrapper instead.
This commit is contained in:
parent
7a8330c01b
commit
e37208ce86
@ -1,3 +1,9 @@
|
|||||||
|
2016-10-22 Florian Weimer <fweimer@redhat.com>
|
||||||
|
|
||||||
|
* math/math.h [__cplusplus] (iszero): Wrap C++ bits in extern
|
||||||
|
"C++", to override a potential extern "C" directive around the
|
||||||
|
header file inclusion.
|
||||||
|
|
||||||
2016-10-21 Joseph Myers <joseph@codesourcery.com>
|
2016-10-21 Joseph Myers <joseph@codesourcery.com>
|
||||||
|
|
||||||
* benchtests/Makefile (CFLAGS-bench-sqrt.c): New variable.
|
* benchtests/Makefile (CFLAGS-bench-sqrt.c): New variable.
|
||||||
|
@ -342,7 +342,7 @@ enum
|
|||||||
# define iszero(x) (((__typeof (x)) (x)) == 0)
|
# define iszero(x) (((__typeof (x)) (x)) == 0)
|
||||||
# endif
|
# endif
|
||||||
# else /* __cplusplus */
|
# else /* __cplusplus */
|
||||||
__END_DECLS
|
extern "C++" {
|
||||||
template <class __T> inline bool
|
template <class __T> inline bool
|
||||||
iszero (__T __val)
|
iszero (__T __val)
|
||||||
{
|
{
|
||||||
@ -352,7 +352,7 @@ iszero (__T __val)
|
|||||||
return __val == 0;
|
return __val == 0;
|
||||||
# endif
|
# endif
|
||||||
}
|
}
|
||||||
__BEGIN_DECLS
|
} /* extern C++ */
|
||||||
# endif /* __cplusplus */
|
# endif /* __cplusplus */
|
||||||
#endif /* Use IEC_60559_BFP_EXT. */
|
#endif /* Use IEC_60559_BFP_EXT. */
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user