summaryrefslogtreecommitdiffstats
path: root/contrib/libc++/include/istream
diff options
context:
space:
mode:
authortheraven <theraven@FreeBSD.org>2012-11-13 03:27:43 +0000
committertheraven <theraven@FreeBSD.org>2012-11-13 03:27:43 +0000
commit8af97236b44c01761e1294025653d7f19dac7dd9 (patch)
treeb0b795ada355b89fa0679851158e12e7b0af551d /contrib/libc++/include/istream
parentaf2fb35f8e88c3065ae59da7ac18d1bd2a3aca56 (diff)
downloadFreeBSD-src-8af97236b44c01761e1294025653d7f19dac7dd9.zip
FreeBSD-src-8af97236b44c01761e1294025653d7f19dac7dd9.tar.gz
Import new version of libc++ into base.
Diffstat (limited to 'contrib/libc++/include/istream')
-rw-r--r--contrib/libc++/include/istream10
1 files changed, 7 insertions, 3 deletions
diff --git a/contrib/libc++/include/istream b/contrib/libc++/include/istream
index 72b2004..dc1c52b 100644
--- a/contrib/libc++/include/istream
+++ b/contrib/libc++/include/istream
@@ -1189,7 +1189,11 @@ basic_istream<_CharT, _Traits>::peek()
#endif // _LIBCPP_NO_EXCEPTIONS
sentry __sen(*this, true);
if (__sen)
+ {
__r = this->rdbuf()->sgetc();
+ if (traits_type::eq_int_type(__r, traits_type::eof()))
+ this->setstate(ios_base::eofbit);
+ }
#ifndef _LIBCPP_NO_EXCEPTIONS
}
catch (...)
@@ -1706,9 +1710,9 @@ operator>>(basic_istream<_CharT, _Traits>& __is, bitset<_Size>& __x)
return __is;
}
-extern template class basic_istream<char>;
-extern template class basic_istream<wchar_t>;
-extern template class basic_iostream<char>;
+_LIBCPP_EXTERN_TEMPLATE(class basic_istream<char>)
+_LIBCPP_EXTERN_TEMPLATE(class basic_istream<wchar_t>)
+_LIBCPP_EXTERN_TEMPLATE(class basic_iostream<char>)
_LIBCPP_END_NAMESPACE_STD
OpenPOWER on IntegriCloud