From: Paolo Carlini Date: Wed, 26 Jan 2005 10:34:53 +0000 (+0000) Subject: acinclude.m4 ([GLIBCXX_ENABLE_C99]): Add ac_c99_complex to the final test for enable_... X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=02a65d230fc24a23a5c74483bc6de7dcd24b4e80;p=gcc.git acinclude.m4 ([GLIBCXX_ENABLE_C99]): Add ac_c99_complex to the final test for enable_c99, thus robustifying it... 2005-01-26 Paolo Carlini * acinclude.m4 ([GLIBCXX_ENABLE_C99]): Add ac_c99_complex to the final test for enable_c99, thus robustifying it; remove duplicate final test on ac_99_math. * configure: Regenerate. * include/std/std_complex.h: Remove usages of the dead _GLIBCXX_BUGGY_COMPLEX macro. * testsuite/26_numerics/cmath/19322.cc: Protect with _GLIBCXX_USE_C99_MATH instead of the stronger _GLIBCXX_USE_C99, since only C99 math facilities are involved. * testsuite/26_numerics/cmath/c99_classification_macros_c++.cc: Likewise. From-SVN: r94257 --- diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index c8de690b679..d362f203f39 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,19 @@ +2005-01-26 Paolo Carlini + + * acinclude.m4 ([GLIBCXX_ENABLE_C99]): Add ac_c99_complex + to the final test for enable_c99, thus robustifying it; remove + duplicate final test on ac_99_math. + * configure: Regenerate. + + * include/std/std_complex.h: Remove usages of the dead + _GLIBCXX_BUGGY_COMPLEX macro. + + * testsuite/26_numerics/cmath/19322.cc: Protect with + _GLIBCXX_USE_C99_MATH instead of the stronger _GLIBCXX_USE_C99, + since only C99 math facilities are involved. + * testsuite/26_numerics/cmath/c99_classification_macros_c++.cc: + Likewise. + 2005-01-25 Loren J. Rittle * acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Map FreeBSD to darwin diff --git a/libstdc++-v3/acinclude.m4 b/libstdc++-v3/acinclude.m4 index d7442f1e384..f18b7d90b53 100644 --- a/libstdc++-v3/acinclude.m4 +++ b/libstdc++-v3/acinclude.m4 @@ -871,7 +871,7 @@ AC_DEFUN([GLIBCXX_ENABLE_C99], [ AC_DEFINE(_GLIBCXX_USE_C99_MATH) fi - # Check for the existence of complex functions. + # Check for the existence of complex functions. # This is necessary even though libstdc++ uses the builtin versions # of these functions, because if the builtin cannot be used, a reference # to the library function is emitted. @@ -1055,6 +1055,7 @@ AC_DEFUN([GLIBCXX_ENABLE_C99], [ AC_MSG_CHECKING([for enabled ISO C99 support]) if test x"$ac_c99_math" = x"no" || + test x"$ac_c99_complex" = x"no" || test x"$ac_c99_stdio" = x"no" || test x"$ac_c99_stdlib" = x"no" || test x"$ac_c99_wchar" = x"no"; then @@ -1062,10 +1063,6 @@ AC_DEFUN([GLIBCXX_ENABLE_C99], [ fi; AC_MSG_RESULT($enable_c99) - if test x"$ac_99_math" = x"yes"; then - AC_DEFINE(_GLIBCXX_USE_C99_MATH) - fi - # Option parsed, now set things appropriately if test x"$enable_c99" = x"yes"; then AC_DEFINE(_GLIBCXX_USE_C99) diff --git a/libstdc++-v3/configure b/libstdc++-v3/configure index 365e2fd3673..8b7b49374f4 100755 --- a/libstdc++-v3/configure +++ b/libstdc++-v3/configure @@ -6948,7 +6948,7 @@ _ACEOF fi - # Check for the existence of complex functions. + # Check for the existence of complex functions. # This is necessary even though libstdc++ uses the builtin versions # of these functions, because if the builtin cannot be used, a reference # to the library function is emitted. @@ -9369,6 +9369,7 @@ echo "${ECHO_T}$ac_c99_wchar" >&6 echo "$as_me:$LINENO: checking for enabled ISO C99 support" >&5 echo $ECHO_N "checking for enabled ISO C99 support... $ECHO_C" >&6 if test x"$ac_c99_math" = x"no" || + test x"$ac_c99_complex" = x"no" || test x"$ac_c99_stdio" = x"no" || test x"$ac_c99_stdlib" = x"no" || test x"$ac_c99_wchar" = x"no"; then @@ -9377,13 +9378,6 @@ echo $ECHO_N "checking for enabled ISO C99 support... $ECHO_C" >&6 echo "$as_me:$LINENO: result: $enable_c99" >&5 echo "${ECHO_T}$enable_c99" >&6 - if test x"$ac_99_math" = x"yes"; then - cat >>confdefs.h <<\_ACEOF -#define _GLIBCXX_USE_C99_MATH 1 -_ACEOF - - fi - # Option parsed, now set things appropriately if test x"$enable_c99" = x"yes"; then cat >>confdefs.h <<\_ACEOF diff --git a/libstdc++-v3/include/std/std_complex.h b/libstdc++-v3/include/std/std_complex.h index da322ab3a44..2ef5817755e 100644 --- a/libstdc++-v3/include/std/std_complex.h +++ b/libstdc++-v3/include/std/std_complex.h @@ -995,9 +995,7 @@ namespace std complex(_ComplexT __z) : _M_value(__z) { } complex(float = 0.0f, float = 0.0f); -#if _GLIBCXX_BUGGY_COMPLEX - complex(const complex& __z) : _M_value(__z._M_value) { } -#endif + explicit complex(const complex&); explicit complex(const complex&); @@ -1150,10 +1148,8 @@ namespace std complex(_ComplexT __z) : _M_value(__z) { } - complex(double = 0.0, double = 0.0); -#if _GLIBCXX_BUGGY_COMPLEX - complex(const complex& __z) : _M_value(__z._M_value) { } -#endif + complex(double = 0.0, double = 0.0); + complex(const complex&); explicit complex(const complex&); @@ -1306,9 +1302,7 @@ namespace std complex(_ComplexT __z) : _M_value(__z) { } complex(long double = 0.0L, long double = 0.0L); -#if _GLIBCXX_BUGGY_COMPLEX - complex(const complex& __z) : _M_value(__z._M_value) { } -#endif + complex(const complex&); complex(const complex&); diff --git a/libstdc++-v3/testsuite/26_numerics/cmath/19322.cc b/libstdc++-v3/testsuite/26_numerics/cmath/19322.cc index 1057114da4c..ca6fdaadb17 100644 --- a/libstdc++-v3/testsuite/26_numerics/cmath/19322.cc +++ b/libstdc++-v3/testsuite/26_numerics/cmath/19322.cc @@ -28,7 +28,7 @@ #include #include -#if _GLIBCXX_USE_C99 +#if _GLIBCXX_USE_C99_MATH // libstdc++/19322 void test01() { @@ -40,7 +40,7 @@ void test01() int main() { -#if _GLIBCXX_USE_C99 +#if _GLIBCXX_USE_C99_MATH test01(); #endif return 0; diff --git a/libstdc++-v3/testsuite/26_numerics/cmath/c99_classification_macros_c++.cc b/libstdc++-v3/testsuite/26_numerics/cmath/c99_classification_macros_c++.cc index 815a73e055c..28dd9407c6b 100644 --- a/libstdc++-v3/testsuite/26_numerics/cmath/c99_classification_macros_c++.cc +++ b/libstdc++-v3/testsuite/26_numerics/cmath/c99_classification_macros_c++.cc @@ -55,7 +55,7 @@ void islessgreater() { } void isunordered() { } -#if _GLIBCXX_USE_C99 +#if _GLIBCXX_USE_C99_MATH template void test_c99_classify() { @@ -83,7 +83,7 @@ template int main() { -#if _GLIBCXX_USE_C99 +#if _GLIBCXX_USE_C99_MATH test_c99_classify(); test_c99_classify(); #endif