I agree with Ben that this looks good. Marshall and Eric, do you want Akira to hold off, or are you happy deferring to Ben and me?
> On 2016-May-26, at 18:31, Akira Hatanaka via cfe-commits > <cfe-commits@lists.llvm.org> wrote: > > ahatanak updated this revision to Diff 58740. > ahatanak added a comment. > > Remove unused variable and add test case. > > > http://reviews.llvm.org/D20334 > > Files: > src/strstream.cpp > > test/std/depr/depr.str.strstreams/depr.strstreambuf/depr.strstreambuf.members/overflow.pass.cpp > > Index: > test/std/depr/depr.str.strstreams/depr.strstreambuf/depr.strstreambuf.members/overflow.pass.cpp > =================================================================== > --- /dev/null > +++ > test/std/depr/depr.str.strstreams/depr.strstreambuf/depr.strstreambuf.members/overflow.pass.cpp > @@ -0,0 +1,32 @@ > +//===----------------------------------------------------------------------===// > +// > +// The LLVM Compiler Infrastructure > +// > +// This file is dual licensed under the MIT and the University of Illinois > Open > +// Source Licenses. See LICENSE.TXT for details. > +// > +//===----------------------------------------------------------------------===// > + > +// <strstream> > + > +// class strstreambuf > + > +// int overflow(int c); > + > +#include <iostream> > +#include <string> > +#include <strstream> > + > +int main(int, char const **argv) { > + std::ostrstream oss; > + std::string s; > + > + for (int i = 0; i < 4096; ++i) > + s.push_back((i % 16) + 'a'); > + > + oss << s << std::ends; > + std::cout << oss.str(); > + oss.freeze(false); > + > + return 0; > +} > Index: src/strstream.cpp > =================================================================== > --- src/strstream.cpp > +++ src/strstream.cpp > @@ -171,16 +171,15 @@ > ptrdiff_t ninp = gptr() - eback(); > ptrdiff_t einp = egptr() - eback(); > ptrdiff_t nout = pptr() - pbase(); > - ptrdiff_t eout = epptr() - pbase(); > if (__strmode_ & __allocated) > { > if (__pfree_) > __pfree_(eback()); > else > delete [] eback(); > } > setg(buf, buf + ninp, buf + einp); > - setp(buf + einp, buf + einp + eout); > + setp(buf + einp, buf + new_size); > pbump(static_cast<int>(nout)); > __strmode_ |= __allocated; > } > > > <D20334.58740.patch>_______________________________________________ > cfe-commits mailing list > cfe-commits@lists.llvm.org > http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits