On Fri, Jul 29, 2011 at 5:06 PM, Sean Hunt <[email protected]> wrote: > Author: coppro > Date: Fri Jul 29 19:06:52 2011 > New Revision: 136545 > > URL: http://llvm.org/viewvc/llvm-project?rev=136545&view=rev > Log: > Oops. That last commit was from an earlier revision of the file and was > more than just a bit broken. This one should compile and run without > infinite loops. > > Modified: > libcxx/trunk/include/ext/slist > > Modified: libcxx/trunk/include/ext/slist > URL: > http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/ext/slist?rev=136545&r1=136544&r2=136545&view=diff > ============================================================================== > --- libcxx/trunk/include/ext/slist (original) > +++ libcxx/trunk/include/ext/slist Fri Jul 29 19:06:52 2011 > @@ -58,15 +58,15 @@ > slist(size_type __n) : __base_type(__n) { } > _LIBCPP_INLINE_VISIBILITY > slist(size_type __n, const _Tp& __t) : __base_type(__n, __t) { } > - _LIBCPP_INLINE_VISIBILITY > template <typename _InputIterator> > + _LIBCPP_INLINE_VISIBILITY > slist(_InputIterator __f, _InputIterator __l) : __base_type(__f, __l) { } > > _LIBCPP_INLINE_VISIBILITY > - void swap (slist& __s) { __base_type::swap(s); } > + void swap (slist& __s) { __base_type::swap(__s); } > > _LIBCPP_INLINE_VISIBILITY > - void merge (slist& __s) { __base_type::merge(s); } > + void merge (slist& __s) { __base_type::merge(__s); } > > _LIBCPP_INLINE_VISIBILITY > friend bool operator==(const slist& __l, const slist& __r) > @@ -88,22 +88,22 @@ > const_iterator previous(const_iterator __pos); > > _LIBCPP_INLINE_VISIBILITY > - iterator insert(iterator __pos, const _Tp& __x) { return > insert(previous(__pos), __x); } > - _LIBCPP_INLINE_VISIBILITY > + iterator insert(iterator __pos, const _Tp& __x) { return > insert_after(previous(__pos), __x); } > template <class _InputIterator> > - void insert(iterator __pos, _InputIterator __f, _InputIterator __l) { > return insert(previous(__pos), __f, __l); } > _LIBCPP_INLINE_VISIBILITY > - void insert(iterator __pos, size_type __n, const _Tp& __x) { return > insert(previous(__pos), __n, __x); } > + void insert(iterator __pos, _InputIterator __f, _InputIterator __l) { > return insert_after(previous(__pos), __f, __l); } > + _LIBCPP_INLINE_VISIBILITY > + void insert(iterator __pos, size_type __n, const _Tp& __x) { return > insert_after(previous(__pos), __n, __x); } > > _LIBCPP_INLINE_VISIBILITY > - iterator erase(iterator __pos) { return erase(previous(__pos)); } > + iterator erase(iterator __pos) { return erase_after(previous(__pos)); } > _LIBCPP_INLINE_VISIBILITY > - iterator erase(iterator __f, iterator __l) { return erase(previous(__f), > previous(__l)); } > + iterator erase(iterator __f, iterator __l) { return > erase_after(previous(__f), previous(__l)); } > }; > > template <class _Tp, class _Alloc> > inline _LIBCPP_INLINE_VISIBILITY > -slist<_Tp, _Alloc>::iterator slist<_Tp, _Alloc>::previous(iterator __pos) > +typename slist<_Tp, _Alloc>::iterator slist<_Tp, _Alloc>::previous(iterator > __pos) > { > iterator __a = begin(), __b = end(); > while (__a != __pos) > @@ -116,7 +116,7 @@ > > template <class _Tp, class _Alloc> > inline _LIBCPP_INLINE_VISIBILITY > -slist<_Tp, _Alloc>::const_iterator slist<_Tp, > _Alloc>::previous(const_iterator __pos) > +typename slist<_Tp, _Alloc>::const_iterator slist<_Tp, > _Alloc>::previous(const_iterator __pos) > { > iterator __a = begin(), __b = end();
"iterator __a = begin(), __b = before_begin();"? -Eli _______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
