On 20 October 2012 02:35, Jonathan Wakely wrote: > On 19 October 2012 21:28, Hans-Peter Nilsson wrote: >> Looks like _U is one of those identifiers that should be >> avoided: Grep yields: >> src/newlib/libc/include/ctype.h:#define _U 01 > > Argh! my bad, sorry - fix on the way ...
Sorry about that, _U is in the badnames list and I really should know better. Fixed by this patch: * include/std/scoped_allocator: Avoid badname. Tested x86_64-linux, committed to trunk.
commit dc33ce8c77b3c7d6a39cdf28359cbc2afae9d1da Author: Jonathan Wakely <jwakely....@gmail.com> Date: Sat Oct 20 02:40:43 2012 +0100 * include/std/scoped_allocator: Avoid badname. diff --git a/libstdc++-v3/include/std/scoped_allocator b/libstdc++-v3/include/std/scoped_allocator index 81365b6..07a2e5e 100644 --- a/libstdc++-v3/include/std/scoped_allocator +++ b/libstdc++-v3/include/std/scoped_allocator @@ -365,31 +365,31 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION construct(pair<_T1, _T2>* __p) { construct(__p, piecewise_construct, tuple<>(), tuple<>()); } - template<typename _T1, typename _T2, typename _U, typename _V> + template<typename _T1, typename _T2, typename _Up, typename _Vp> void - construct(pair<_T1, _T2>* __p, _U&& __u, _V&& __v) + construct(pair<_T1, _T2>* __p, _Up&& __u, _Vp&& __v) { construct(__p, piecewise_construct, - std::forward_as_tuple(std::forward<_U>(__u)), - std::forward_as_tuple(std::forward<_V>(__v))); + std::forward_as_tuple(std::forward<_Up>(__u)), + std::forward_as_tuple(std::forward<_Vp>(__v))); } - template<typename _T1, typename _T2, typename _U, typename _V> + template<typename _T1, typename _T2, typename _Up, typename _Vp> void - construct(pair<_T1, _T2>* __p, const pair<_U, _V>& __x) + construct(pair<_T1, _T2>* __p, const pair<_Up, _Vp>& __x) { construct(__p, piecewise_construct, std::forward_as_tuple(__x.first), std::forward_as_tuple(__x.second)); } - template<typename _T1, typename _T2, typename _U, typename _V> + template<typename _T1, typename _T2, typename _Up, typename _Vp> void - construct(pair<_T1, _T2>* __p, pair<_U, _V>&& __x) + construct(pair<_T1, _T2>* __p, pair<_Up, _Vp>&& __x) { construct(__p, piecewise_construct, - std::forward_as_tuple(std::forward<_U>(__x.first)), - std::forward_as_tuple(std::forward<_V>(__x.second))); + std::forward_as_tuple(std::forward<_Up>(__x.first)), + std::forward_as_tuple(std::forward<_Vp>(__x.second))); } template<typename _Tp>