mirror of
https://gcc.gnu.org/git/gcc.git
synced 2025-01-20 19:33:58 +08:00
std_streambuf.h (uflow()): It's used only by basic_stringbuf (i.e....
2003-04-21 Paolo Carlini <pcarlini@unitus.it> * include/std/std_streambuf.h (uflow()): It's used only by basic_stringbuf (i.e., basic_filebuf provide its own uflow()), therefore do not consider the _M_buf_unified == true case. * include/std/std_streambuf.h (sgetc()): Restore __ret variable. From-SVN: r65891
This commit is contained in:
parent
337f4314e6
commit
9d3e38ec59
@ -1,3 +1,11 @@
|
||||
2003-04-21 Paolo Carlini <pcarlini@unitus.it>
|
||||
|
||||
* include/std/std_streambuf.h (uflow()): It's used only by
|
||||
basic_stringbuf (i.e., basic_filebuf provide its own uflow()),
|
||||
therefore do not consider the _M_buf_unified == true case.
|
||||
|
||||
* include/std/std_streambuf.h (sgetc()): Restore __ret variable.
|
||||
|
||||
2003-04-20 Paolo Carlini <pcarlini@unitus.it>
|
||||
|
||||
* docs/html/ext/howto.html ('LWG Issues'):
|
||||
|
@ -234,8 +234,7 @@ namespace std
|
||||
* @if maint
|
||||
* Necessary bits for putback buffer management. Only used in
|
||||
* the basic_filebuf class, as necessary for the standard
|
||||
* requirements. The only basic_streambuf member function that
|
||||
* needs access to these data members is in_avail...
|
||||
* requirements.
|
||||
*
|
||||
* @note pbacks of over one character are not currently supported.
|
||||
* @endif
|
||||
@ -452,10 +451,12 @@ namespace std
|
||||
int_type
|
||||
sgetc()
|
||||
{
|
||||
int_type __ret;
|
||||
if (_M_in_cur < _M_in_end)
|
||||
return traits_type::to_int_type(*(this->gptr()));
|
||||
__ret = traits_type::to_int_type(*(this->gptr()));
|
||||
else
|
||||
return this->underflow();
|
||||
__ret = this->underflow();
|
||||
return __ret;
|
||||
}
|
||||
|
||||
/**
|
||||
@ -787,13 +788,10 @@ namespace std
|
||||
int_type __ret = traits_type::eof();
|
||||
const bool __testeof =
|
||||
traits_type::eq_int_type(this->underflow(), __ret);
|
||||
const bool __testpending = _M_in_cur < _M_in_end;
|
||||
if (!__testeof && __testpending)
|
||||
if (!__testeof && _M_in_cur < _M_in_end)
|
||||
{
|
||||
__ret = traits_type::to_int_type(*_M_in_cur);
|
||||
++_M_in_cur;
|
||||
if (_M_buf_unified && _M_mode & ios_base::out)
|
||||
++_M_out_cur;
|
||||
}
|
||||
return __ret;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user