This is the mail archive of the libstdc++@gcc.gnu.org mailing list for the libstdc++ project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
Thanks - I oversaw this sort of self-referencing... Maybe the function should just be template <class _Tp, class _Alloc> void deque<_Tp,_Alloc>::_M_push_front_aux(const value_type __t) without the '&'... -- optimizer kills that anyway.. \Christoph On Fri, 2003-02-07 at 10:37, Gabriel Dos Reis wrote: > Christoph Schlenker <Christoph.Schlenker@schlund.de> writes: > > | Hi all, > | > | I'm a bit puzzeled about line 1 in the function _M_push_front_aux in > | > | template <class _Tp, class _Alloc> > | void > | deque<_Tp,_Alloc>::_M_push_front_aux(const value_type& __t) > | { > | 1 value_type __t_copy = __t; // *** who needs that copy? *** > | 2 _M_reserve_map_at_front(); > | 3 *(_M_start._M_node - 1) = _M_allocate_node(); > | 4 try { > | 5 _M_start._M_set_node(_M_start._M_node - 1); > | 6 _M_start._M_cur = _M_start._M_last - 1; > | 7 _Construct(_M_start._M_cur, __t_copy); > | 8 } > | 9 catch(...) > | 0 { > | 1 ++_M_start; > | 2 _M_deallocate_node(*(_M_start._M_node - 1)); > | 3 __throw_exception_again; > | 4 } > | } > | > | Can anyone tell we there is a __t_copy needed? As far as I can see > > How would you handle this > > d.push_front(d.back()) > > ? > > -- Gaby -- Christoph Schlenker Schlund + Partner AG Erbprinzenstr. 4-12 Tel.0721/91374-388 76133 Karlsruhe Fax.0721/91374-212 http://www.schlund.de Christoph.Schlenker@schlund.de
Attachment:
signature.asc
Description: This is a digitally signed message part
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |