From 9191d7a84aa904ae21bd4b8dd98100977e3b10a2 Mon Sep 17 00:00:00 2001 From: Paolo Carlini Date: Mon, 22 Apr 2013 14:37:34 +0000 Subject: [PATCH] complex (complex::real, [...]): Declare as const member functions. 2013-04-22 Paolo Carlini N3669 * include/std/complex (complex::real, complex::imag, complex::real, complex::imag, complex::real, complex::imag): Declare as const member functions. * include/std/type_traits (integral_constant<>::operator value_type): Likewise. From-SVN: r198141 --- libstdc++-v3/ChangeLog | 10 ++++++++++ libstdc++-v3/include/std/complex | 12 ++++++------ libstdc++-v3/include/std/type_traits | 2 +- 3 files changed, 17 insertions(+), 7 deletions(-) diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index fdf739f7ff7..ff956355d2e 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,13 @@ +2013-04-22 Paolo Carlini + + N3669 + * include/std/complex (complex::real, complex::imag, + complex::real, complex::imag, + complex::real, complex::imag): Declare + as const member functions. + * include/std/type_traits (integral_constant<>::operator value_type): + Likewise. + 2013-04-22 Paolo Carlini PR libstdc++/57010 diff --git a/libstdc++-v3/include/std/complex b/libstdc++-v3/include/std/complex index e4266739937..b31e8b18d71 100644 --- a/libstdc++-v3/include/std/complex +++ b/libstdc++-v3/include/std/complex @@ -1066,11 +1066,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION // DR 387. std::complex over-encapsulated. __attribute ((__abi_tag__ ("cxx11"))) constexpr float - real() { return __real__ _M_value; } + real() const { return __real__ _M_value; } __attribute ((__abi_tag__ ("cxx11"))) constexpr float - imag() { return __imag__ _M_value; } + imag() const { return __imag__ _M_value; } #else float& real() { return __real__ _M_value; } @@ -1217,11 +1217,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION // DR 387. std::complex over-encapsulated. __attribute ((__abi_tag__ ("cxx11"))) constexpr double - real() { return __real__ _M_value; } + real() const { return __real__ _M_value; } __attribute ((__abi_tag__ ("cxx11"))) constexpr double - imag() { return __imag__ _M_value; } + imag() const { return __imag__ _M_value; } #else double& real() { return __real__ _M_value; } @@ -1369,11 +1369,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION // DR 387. std::complex over-encapsulated. __attribute ((__abi_tag__ ("cxx11"))) constexpr long double - real() { return __real__ _M_value; } + real() const { return __real__ _M_value; } __attribute ((__abi_tag__ ("cxx11"))) constexpr long double - imag() { return __imag__ _M_value; } + imag() const { return __imag__ _M_value; } #else long double& real() { return __real__ _M_value; } diff --git a/libstdc++-v3/include/std/type_traits b/libstdc++-v3/include/std/type_traits index 488ffd9c180..5bff0ab5959 100644 --- a/libstdc++-v3/include/std/type_traits +++ b/libstdc++-v3/include/std/type_traits @@ -59,7 +59,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION static constexpr _Tp value = __v; typedef _Tp value_type; typedef integral_constant<_Tp, __v> type; - constexpr operator value_type() { return value; } + constexpr operator value_type() const { return value; } }; template -- 2.30.2