diff options
author | Paolo Carlini <paolo@gcc.gnu.org> | 2014-08-09 08:58:33 +0000 |
---|---|---|
committer | Paolo Carlini <paolo@gcc.gnu.org> | 2014-08-09 08:58:33 +0000 |
commit | 6a6bdc3d09dd375b1c40d8791018c45598b82d64 (patch) | |
tree | 6ee601ded83d4fe7b691e53061a78a56524ccec4 /libstdc++-v3 | |
parent | 013078982d33a06a6b323556d8615f2b48dc38ab (diff) | |
download | gcc-6a6bdc3d09dd375b1c40d8791018c45598b82d64.zip gcc-6a6bdc3d09dd375b1c40d8791018c45598b82d64.tar.gz gcc-6a6bdc3d09dd375b1c40d8791018c45598b82d64.tar.bz2 |
invoke.texi ([Wnarrowing]): Update for non-constants in C++11.
2014-08-09 Paolo Carlini <paolo.carlini@oracle.com>
* doc/invoke.texi ([Wnarrowing]): Update for non-constants in C++11.
gcc/cp
2014-08-09 Paolo Carlini <paolo.carlini@oracle.com>
* typeck2.c (check_narrowing): Add tsubst_flags_t parameter, change
return type to bool; in C++11 for constants give errors, not pedwarns.
* cp-tree.h (check_narrowing): Adjust declaration.
* call.c (convert_like_real): Update calls.
* semantics.c (finish_compound_literal): Likewise.
gcc/testsuite
2014-08-09 Paolo Carlini <paolo.carlini@oracle.com>
* g++.dg/cpp0x/Wnarrowing1.C: Adjust for errors.
* g++.dg/cpp0x/enum29.C: Adjust.
/libstdc++-v3
2014-08-09 Paolo Carlini <paolo.carlini@oracle.com>
* include/ext/pod_char_traits.h (char_traits<__gnu_cxx::
character<_Value, _Int, _St> >::eof): Fix vs narrowing conversion.
From-SVN: r213776
Diffstat (limited to 'libstdc++-v3')
-rw-r--r-- | libstdc++-v3/ChangeLog | 5 | ||||
-rw-r--r-- | libstdc++-v3/include/ext/pod_char_traits.h | 4 |
2 files changed, 8 insertions, 1 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index bd8677e..821dfe5 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,8 @@ +2014-08-08 Paolo Carlini <paolo.carlini@oracle.com> + + * include/ext/pod_char_traits.h (char_traits<__gnu_cxx:: + character<_Value, _Int, _St> >::eof): Fix vs narrowing conversion. + 2014-08-09 François Dumont <fdumont@gcc.gnu.org> PR libstdc++/61667 diff --git a/libstdc++-v3/include/ext/pod_char_traits.h b/libstdc++-v3/include/ext/pod_char_traits.h index e027585..d6de298 100644 --- a/libstdc++-v3/include/ext/pod_char_traits.h +++ b/libstdc++-v3/include/ext/pod_char_traits.h @@ -177,7 +177,9 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION static int_type eof() { - int_type __r = { -1 }; + int_type __r = { static_cast<typename __gnu_cxx::__conditional_type + <std::__is_integer<int_type>::__value, + int_type, int>::__type>(-1) }; return __r; } |