Reverted in r257193.
On Fri, Jan 8, 2016 at 11:12 AM, Evgenii Stepanov <eugeni.stepa...@gmail.com> wrote: > On Fri, Jan 8, 2016 at 11:02 AM, Duncan P. N. Exon Smith > <dexonsm...@apple.com> wrote: >> >>> On 2016-Jan-08, at 10:49, Nico Weber via cfe-commits >>> <cfe-commits@lists.llvm.org> wrote: >>> >>> On OS X 10.8, __ZNSt3__115basic_streambufIcNS_11char_traitsIcEEE5sputcEc >>> (and others) are a hidden symbol in libc++.1.dylib. This means: >>> >>> * If I use streambuf::sputc() and link against the 10.8 SDK, and the >>> compiler decides to not inline the call, I will get linker errors. >>> * If I do the same with the 10.10 SDK when targeting 10.8, then (even >>> worse) the link will silently succeed (since it links against the 10.10 >>> libc++ which does have a public symbol for this -- the SDK assumes that >>> libc++ is abi-compatible with itself) but it will then fail to run on a >>> 10.8 system. >>> >>> I don't see a way to save this change -- I think this needs to be reverted. >> >> FWIW, we're working on a plan to add availability markup to libc++ >> (it shouldn't be too intrusive (since you can annotate blocks of >> API); had some initial talks with Marshall at the dev meeting). I >> plan to send out an RFC soon. >> >> I didn't think there'd be interest in having the availability >> attributes themselves in open source (just some placeholder macros), >> but it would be an option. >> >> Anyway, until that's done, I agree this needs to be reverted. >> >>> Have you made similar changes elsewhere? These probably need to be reverted >>> too. >> >> I agree. > > This is the only one of my changes that removes attributes. I'll revert. > >>> On Wed, Dec 9, 2015 at 6:42 PM, Evgeniy Stepanov via cfe-commits >>> <cfe-commits@lists.llvm.org> wrote: >>> Author: eugenis >>> Date: Wed Dec 9 17:42:30 2015 >>> New Revision: 255177 >>> >>> URL: http://llvm.org/viewvc/llvm-project?rev=255177&view=rev >>> Log: >>> Remove visibility attributes from out-of-class method definitions in >>> iostreams. >>> >>> No point in pretending that these methods are hidden - they are >>> actually exported from libc++.so. Extern template declarations make >>> them part of libc++ ABI. >>> >>> This patch does not change libc++.so export list (at least on Linux). >>> >>> Modified: >>> libcxx/trunk/include/istream >>> libcxx/trunk/include/ostream >>> libcxx/trunk/include/sstream >>> libcxx/trunk/include/streambuf >>> >>> Modified: libcxx/trunk/include/istream >>> URL: >>> http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/istream?rev=255177&r1=255176&r2=255177&view=diff >>> ============================================================================== >>> --- libcxx/trunk/include/istream (original) >>> +++ libcxx/trunk/include/istream Wed Dec 9 17:42:30 2015 >>> @@ -304,7 +304,7 @@ basic_istream<_CharT, _Traits>::sentry:: >>> } >>> >>> template <class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_istream<_CharT, _Traits>::basic_istream(basic_streambuf<char_type, >>> traits_type>* __sb) >>> : __gc_(0) >>> { >>> @@ -314,7 +314,7 @@ basic_istream<_CharT, _Traits>::basic_is >>> #ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES >>> >>> template <class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_istream<_CharT, _Traits>::basic_istream(basic_istream&& __rhs) >>> : __gc_(__rhs.__gc_) >>> { >>> @@ -323,7 +323,7 @@ basic_istream<_CharT, _Traits>::basic_is >>> } >>> >>> template <class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_istream<_CharT, _Traits>& >>> basic_istream<_CharT, _Traits>::operator=(basic_istream&& __rhs) >>> { >>> @@ -339,7 +339,7 @@ basic_istream<_CharT, _Traits>::~basic_i >>> } >>> >>> template <class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> void >>> basic_istream<_CharT, _Traits>::swap(basic_istream& __rhs) >>> { >>> @@ -725,7 +725,7 @@ basic_istream<_CharT, _Traits>::operator >>> } >>> >>> template <class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_istream<_CharT, _Traits>& >>> basic_istream<_CharT, _Traits>::operator>>(basic_istream& >>> (*__pf)(basic_istream&)) >>> { >>> @@ -733,7 +733,7 @@ basic_istream<_CharT, _Traits>::operator >>> } >>> >>> template <class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_istream<_CharT, _Traits>& >>> basic_istream<_CharT, _Traits>::operator>>(basic_ios<char_type, >>> traits_type>& >>> (*__pf)(basic_ios<char_type, >>> traits_type>&)) >>> @@ -743,7 +743,7 @@ basic_istream<_CharT, _Traits>::operator >>> } >>> >>> template <class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_istream<_CharT, _Traits>& >>> basic_istream<_CharT, _Traits>::operator>>(ios_base& (*__pf)(ios_base&)) >>> { >>> @@ -800,7 +800,7 @@ operator>>(basic_istream<_CharT, _Traits >>> } >>> >>> template<class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_istream<char, _Traits>& >>> operator>>(basic_istream<char, _Traits>& __is, unsigned char* __s) >>> { >>> @@ -808,7 +808,7 @@ operator>>(basic_istream<char, _Traits>& >>> } >>> >>> template<class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_istream<char, _Traits>& >>> operator>>(basic_istream<char, _Traits>& __is, signed char* __s) >>> { >>> @@ -843,7 +843,7 @@ operator>>(basic_istream<_CharT, _Traits >>> } >>> >>> template<class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_istream<char, _Traits>& >>> operator>>(basic_istream<char, _Traits>& __is, unsigned char& __c) >>> { >>> @@ -851,7 +851,7 @@ operator>>(basic_istream<char, _Traits>& >>> } >>> >>> template<class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_istream<char, _Traits>& >>> operator>>(basic_istream<char, _Traits>& __is, signed char& __c) >>> { >>> @@ -947,7 +947,7 @@ basic_istream<_CharT, _Traits>::get() >>> } >>> >>> template<class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_istream<_CharT, _Traits>& >>> basic_istream<_CharT, _Traits>::get(char_type& __c) >>> { >>> @@ -1006,7 +1006,7 @@ basic_istream<_CharT, _Traits>::get(char >>> } >>> >>> template<class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_istream<_CharT, _Traits>& >>> basic_istream<_CharT, _Traits>::get(char_type* __s, streamsize __n) >>> { >>> @@ -1068,7 +1068,7 @@ basic_istream<_CharT, _Traits>::get(basi >>> } >>> >>> template<class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_istream<_CharT, _Traits>& >>> basic_istream<_CharT, _Traits>::get(basic_streambuf<char_type, >>> traits_type>& __sb) >>> { >>> @@ -1129,7 +1129,7 @@ basic_istream<_CharT, _Traits>::getline( >>> } >>> >>> template<class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_istream<_CharT, _Traits>& >>> basic_istream<_CharT, _Traits>::getline(char_type* __s, streamsize __n) >>> { >>> @@ -1462,7 +1462,7 @@ ws(basic_istream<_CharT, _Traits>& __is) >>> #ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES >>> >>> template <class _CharT, class _Traits, class _Tp> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_istream<_CharT, _Traits>& >>> operator>>(basic_istream<_CharT, _Traits>&& __is, _Tp& __x) >>> { >>> @@ -1504,7 +1504,7 @@ public: >>> }; >>> >>> template <class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_iostream<_CharT, _Traits>::basic_iostream(basic_streambuf<char_type, >>> traits_type>* __sb) >>> : basic_istream<_CharT, _Traits>(__sb) >>> { >>> @@ -1513,14 +1513,14 @@ basic_iostream<_CharT, _Traits>::basic_i >>> #ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES >>> >>> template <class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_iostream<_CharT, _Traits>::basic_iostream(basic_iostream&& __rhs) >>> : basic_istream<_CharT, _Traits>(_VSTD::move(__rhs)) >>> { >>> } >>> >>> template <class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_iostream<_CharT, _Traits>& >>> basic_iostream<_CharT, _Traits>::operator=(basic_iostream&& __rhs) >>> { >>> @@ -1536,7 +1536,7 @@ basic_iostream<_CharT, _Traits>::~basic_ >>> } >>> >>> template <class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> void >>> basic_iostream<_CharT, _Traits>::swap(basic_iostream& __rhs) >>> { >>> @@ -1645,7 +1645,7 @@ getline(basic_istream<_CharT, _Traits>& >>> } >>> >>> template<class _CharT, class _Traits, class _Allocator> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_istream<_CharT, _Traits>& >>> getline(basic_istream<_CharT, _Traits>& __is, >>> basic_string<_CharT, _Traits, _Allocator>& __str) >>> @@ -1656,7 +1656,7 @@ getline(basic_istream<_CharT, _Traits>& >>> #ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES >>> >>> template<class _CharT, class _Traits, class _Allocator> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_istream<_CharT, _Traits>& >>> getline(basic_istream<_CharT, _Traits>&& __is, >>> basic_string<_CharT, _Traits, _Allocator>& __str, _CharT __dlm) >>> @@ -1665,7 +1665,7 @@ getline(basic_istream<_CharT, _Traits>&& >>> } >>> >>> template<class _CharT, class _Traits, class _Allocator> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_istream<_CharT, _Traits>& >>> getline(basic_istream<_CharT, _Traits>&& __is, >>> basic_string<_CharT, _Traits, _Allocator>& __str) >>> >>> Modified: libcxx/trunk/include/ostream >>> URL: >>> http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/ostream?rev=255177&r1=255176&r2=255177&view=diff >>> ============================================================================== >>> --- libcxx/trunk/include/ostream (original) >>> +++ libcxx/trunk/include/ostream Wed Dec 9 17:42:30 2015 >>> @@ -275,7 +275,7 @@ basic_ostream<_CharT, _Traits>::sentry:: >>> } >>> >>> template <class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_ostream<_CharT, _Traits>::basic_ostream(basic_streambuf<char_type, >>> traits_type>* __sb) >>> { >>> this->init(__sb); >>> @@ -284,14 +284,14 @@ basic_ostream<_CharT, _Traits>::basic_os >>> #ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES >>> >>> template <class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_ostream<_CharT, _Traits>::basic_ostream(basic_ostream&& __rhs) >>> { >>> this->move(__rhs); >>> } >>> >>> template <class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_ostream<_CharT, _Traits>& >>> basic_ostream<_CharT, _Traits>::operator=(basic_ostream&& __rhs) >>> { >>> @@ -307,7 +307,7 @@ basic_ostream<_CharT, _Traits>::~basic_o >>> } >>> >>> template <class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> void >>> basic_ostream<_CharT, _Traits>::swap(basic_ostream& __rhs) >>> { >>> @@ -315,7 +315,7 @@ basic_ostream<_CharT, _Traits>::swap(bas >>> } >>> >>> template <class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_ostream<_CharT, _Traits>& >>> basic_ostream<_CharT, _Traits>::operator<<(basic_ostream& >>> (*__pf)(basic_ostream&)) >>> { >>> @@ -323,7 +323,7 @@ basic_ostream<_CharT, _Traits>::operator >>> } >>> >>> template <class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_ostream<_CharT, _Traits>& >>> basic_ostream<_CharT, _Traits>::operator<<(basic_ios<char_type, >>> traits_type>& >>> >>> (*__pf)(basic_ios<char_type,traits_type>&)) >>> @@ -333,7 +333,7 @@ basic_ostream<_CharT, _Traits>::operator >>> } >>> >>> template <class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_ostream<_CharT, _Traits>& >>> basic_ostream<_CharT, _Traits>::operator<<(ios_base& (*__pf)(ios_base&)) >>> { >>> @@ -989,7 +989,7 @@ basic_ostream<_CharT, _Traits>::flush() >>> } >>> >>> template <class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> typename basic_ostream<_CharT, _Traits>::pos_type >>> basic_ostream<_CharT, _Traits>::tellp() >>> { >>> @@ -999,7 +999,7 @@ basic_ostream<_CharT, _Traits>::tellp() >>> } >>> >>> template <class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_ostream<_CharT, _Traits>& >>> basic_ostream<_CharT, _Traits>::seekp(pos_type __pos) >>> { >>> @@ -1013,7 +1013,7 @@ basic_ostream<_CharT, _Traits>::seekp(po >>> } >>> >>> template <class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_ostream<_CharT, _Traits>& >>> basic_ostream<_CharT, _Traits>::seekp(off_type __off, ios_base::seekdir >>> __dir) >>> { >>> @@ -1027,7 +1027,7 @@ basic_ostream<_CharT, _Traits>::seekp(of >>> } >>> >>> template <class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_ostream<_CharT, _Traits>& >>> endl(basic_ostream<_CharT, _Traits>& __os) >>> { >>> @@ -1037,7 +1037,7 @@ endl(basic_ostream<_CharT, _Traits>& __o >>> } >>> >>> template <class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_ostream<_CharT, _Traits>& >>> ends(basic_ostream<_CharT, _Traits>& __os) >>> { >>> @@ -1046,7 +1046,7 @@ ends(basic_ostream<_CharT, _Traits>& __o >>> } >>> >>> template <class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_ostream<_CharT, _Traits>& >>> flush(basic_ostream<_CharT, _Traits>& __os) >>> { >>> @@ -1057,7 +1057,7 @@ flush(basic_ostream<_CharT, _Traits>& __ >>> #ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES >>> >>> template <class _Stream, class _Tp> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> typename enable_if >>> < >>> !is_lvalue_reference<_Stream>::value && >>> @@ -1081,7 +1081,7 @@ operator<<(basic_ostream<_CharT, _Traits >>> } >>> >>> template <class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_ostream<_CharT, _Traits>& >>> operator<<(basic_ostream<_CharT, _Traits>& __os, const error_code& __ec) >>> { >>> @@ -1089,7 +1089,7 @@ operator<<(basic_ostream<_CharT, _Traits >>> } >>> >>> template<class _CharT, class _Traits, class _Yp> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_ostream<_CharT, _Traits>& >>> operator<<(basic_ostream<_CharT, _Traits>& __os, shared_ptr<_Yp> const& >>> __p) >>> { >>> >>> Modified: libcxx/trunk/include/sstream >>> URL: >>> http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/sstream?rev=255177&r1=255176&r2=255177&view=diff >>> ============================================================================== >>> --- libcxx/trunk/include/sstream (original) >>> +++ libcxx/trunk/include/sstream Wed Dec 9 17:42:30 2015 >>> @@ -236,7 +236,7 @@ protected: >>> }; >>> >>> template <class _CharT, class _Traits, class _Allocator> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_stringbuf<_CharT, _Traits, >>> _Allocator>::basic_stringbuf(ios_base::openmode __wch) >>> : __hm_(0), >>> __mode_(__wch) >>> @@ -245,7 +245,7 @@ basic_stringbuf<_CharT, _Traits, _Alloca >>> } >>> >>> template <class _CharT, class _Traits, class _Allocator> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_stringbuf<_CharT, _Traits, _Allocator>::basic_stringbuf(const >>> string_type& __s, >>> ios_base::openmode __wch) >>> : __hm_(0), >>> @@ -425,7 +425,7 @@ basic_stringbuf<_CharT, _Traits, _Alloca >>> } >>> >>> template <class _CharT, class _Traits, class _Allocator> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> void >>> swap(basic_stringbuf<_CharT, _Traits, _Allocator>& __x, >>> basic_stringbuf<_CharT, _Traits, _Allocator>& __y) >>> @@ -607,7 +607,7 @@ basic_stringbuf<_CharT, _Traits, _Alloca >>> } >>> >>> template <class _CharT, class _Traits, class _Allocator> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> typename basic_stringbuf<_CharT, _Traits, _Allocator>::pos_type >>> basic_stringbuf<_CharT, _Traits, _Allocator>::seekpos(pos_type __sp, >>> ios_base::openmode >>> __wch) >>> @@ -654,7 +654,7 @@ public: >>> }; >>> >>> template <class _CharT, class _Traits, class _Allocator> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_istringstream<_CharT, _Traits, >>> _Allocator>::basic_istringstream(ios_base::openmode __wch) >>> : basic_istream<_CharT, _Traits>(&__sb_), >>> __sb_(__wch | ios_base::in) >>> @@ -662,7 +662,7 @@ basic_istringstream<_CharT, _Traits, _Al >>> } >>> >>> template <class _CharT, class _Traits, class _Allocator> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_istringstream<_CharT, _Traits, >>> _Allocator>::basic_istringstream(const string_type& __s, >>> >>> ios_base::openmode __wch) >>> : basic_istream<_CharT, _Traits>(&__sb_), >>> @@ -673,7 +673,7 @@ basic_istringstream<_CharT, _Traits, _Al >>> #ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES >>> >>> template <class _CharT, class _Traits, class _Allocator> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_istringstream<_CharT, _Traits, >>> _Allocator>::basic_istringstream(basic_istringstream&& __rhs) >>> : basic_istream<_CharT, _Traits>(_VSTD::move(__rhs)), >>> __sb_(_VSTD::move(__rhs.__sb_)) >>> @@ -693,7 +693,7 @@ basic_istringstream<_CharT, _Traits, _Al >>> #endif // _LIBCPP_HAS_NO_RVALUE_REFERENCES >>> >>> template <class _CharT, class _Traits, class _Allocator> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> void >>> basic_istringstream<_CharT, _Traits, >>> _Allocator>::swap(basic_istringstream& __rhs) >>> { >>> @@ -702,7 +702,7 @@ basic_istringstream<_CharT, _Traits, _Al >>> } >>> >>> template <class _CharT, class _Traits, class _Allocator> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> void >>> swap(basic_istringstream<_CharT, _Traits, _Allocator>& __x, >>> basic_istringstream<_CharT, _Traits, _Allocator>& __y) >>> @@ -711,7 +711,7 @@ swap(basic_istringstream<_CharT, _Traits >>> } >>> >>> template <class _CharT, class _Traits, class _Allocator> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_stringbuf<_CharT, _Traits, _Allocator>* >>> basic_istringstream<_CharT, _Traits, _Allocator>::rdbuf() const >>> { >>> @@ -719,7 +719,7 @@ basic_istringstream<_CharT, _Traits, _Al >>> } >>> >>> template <class _CharT, class _Traits, class _Allocator> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_string<_CharT, _Traits, _Allocator> >>> basic_istringstream<_CharT, _Traits, _Allocator>::str() const >>> { >>> @@ -727,7 +727,7 @@ basic_istringstream<_CharT, _Traits, _Al >>> } >>> >>> template <class _CharT, class _Traits, class _Allocator> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> void >>> basic_istringstream<_CharT, _Traits, _Allocator>::str(const string_type& >>> __s) >>> { >>> @@ -773,7 +773,7 @@ public: >>> }; >>> >>> template <class _CharT, class _Traits, class _Allocator> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_ostringstream<_CharT, _Traits, >>> _Allocator>::basic_ostringstream(ios_base::openmode __wch) >>> : basic_ostream<_CharT, _Traits>(&__sb_), >>> __sb_(__wch | ios_base::out) >>> @@ -781,7 +781,7 @@ basic_ostringstream<_CharT, _Traits, _Al >>> } >>> >>> template <class _CharT, class _Traits, class _Allocator> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_ostringstream<_CharT, _Traits, >>> _Allocator>::basic_ostringstream(const string_type& __s, >>> >>> ios_base::openmode __wch) >>> : basic_ostream<_CharT, _Traits>(&__sb_), >>> @@ -792,7 +792,7 @@ basic_ostringstream<_CharT, _Traits, _Al >>> #ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES >>> >>> template <class _CharT, class _Traits, class _Allocator> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_ostringstream<_CharT, _Traits, >>> _Allocator>::basic_ostringstream(basic_ostringstream&& __rhs) >>> : basic_ostream<_CharT, _Traits>(_VSTD::move(__rhs)), >>> __sb_(_VSTD::move(__rhs.__sb_)) >>> @@ -812,7 +812,7 @@ basic_ostringstream<_CharT, _Traits, _Al >>> #endif // _LIBCPP_HAS_NO_RVALUE_REFERENCES >>> >>> template <class _CharT, class _Traits, class _Allocator> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> void >>> basic_ostringstream<_CharT, _Traits, >>> _Allocator>::swap(basic_ostringstream& __rhs) >>> { >>> @@ -821,7 +821,7 @@ basic_ostringstream<_CharT, _Traits, _Al >>> } >>> >>> template <class _CharT, class _Traits, class _Allocator> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> void >>> swap(basic_ostringstream<_CharT, _Traits, _Allocator>& __x, >>> basic_ostringstream<_CharT, _Traits, _Allocator>& __y) >>> @@ -830,7 +830,7 @@ swap(basic_ostringstream<_CharT, _Traits >>> } >>> >>> template <class _CharT, class _Traits, class _Allocator> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_stringbuf<_CharT, _Traits, _Allocator>* >>> basic_ostringstream<_CharT, _Traits, _Allocator>::rdbuf() const >>> { >>> @@ -838,7 +838,7 @@ basic_ostringstream<_CharT, _Traits, _Al >>> } >>> >>> template <class _CharT, class _Traits, class _Allocator> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_string<_CharT, _Traits, _Allocator> >>> basic_ostringstream<_CharT, _Traits, _Allocator>::str() const >>> { >>> @@ -846,7 +846,7 @@ basic_ostringstream<_CharT, _Traits, _Al >>> } >>> >>> template <class _CharT, class _Traits, class _Allocator> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> void >>> basic_ostringstream<_CharT, _Traits, _Allocator>::str(const string_type& >>> __s) >>> { >>> @@ -892,7 +892,7 @@ public: >>> }; >>> >>> template <class _CharT, class _Traits, class _Allocator> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_stringstream<_CharT, _Traits, >>> _Allocator>::basic_stringstream(ios_base::openmode __wch) >>> : basic_iostream<_CharT, _Traits>(&__sb_), >>> __sb_(__wch) >>> @@ -900,7 +900,7 @@ basic_stringstream<_CharT, _Traits, _All >>> } >>> >>> template <class _CharT, class _Traits, class _Allocator> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_stringstream<_CharT, _Traits, _Allocator>::basic_stringstream(const >>> string_type& __s, >>> >>> ios_base::openmode __wch) >>> : basic_iostream<_CharT, _Traits>(&__sb_), >>> @@ -911,7 +911,7 @@ basic_stringstream<_CharT, _Traits, _All >>> #ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES >>> >>> template <class _CharT, class _Traits, class _Allocator> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_stringstream<_CharT, _Traits, >>> _Allocator>::basic_stringstream(basic_stringstream&& __rhs) >>> : basic_iostream<_CharT, _Traits>(_VSTD::move(__rhs)), >>> __sb_(_VSTD::move(__rhs.__sb_)) >>> @@ -931,7 +931,7 @@ basic_stringstream<_CharT, _Traits, _All >>> #endif // _LIBCPP_HAS_NO_RVALUE_REFERENCES >>> >>> template <class _CharT, class _Traits, class _Allocator> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> void >>> basic_stringstream<_CharT, _Traits, _Allocator>::swap(basic_stringstream& >>> __rhs) >>> { >>> @@ -940,7 +940,7 @@ basic_stringstream<_CharT, _Traits, _All >>> } >>> >>> template <class _CharT, class _Traits, class _Allocator> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> void >>> swap(basic_stringstream<_CharT, _Traits, _Allocator>& __x, >>> basic_stringstream<_CharT, _Traits, _Allocator>& __y) >>> @@ -949,7 +949,7 @@ swap(basic_stringstream<_CharT, _Traits, >>> } >>> >>> template <class _CharT, class _Traits, class _Allocator> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_stringbuf<_CharT, _Traits, _Allocator>* >>> basic_stringstream<_CharT, _Traits, _Allocator>::rdbuf() const >>> { >>> @@ -957,7 +957,7 @@ basic_stringstream<_CharT, _Traits, _All >>> } >>> >>> template <class _CharT, class _Traits, class _Allocator> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_string<_CharT, _Traits, _Allocator> >>> basic_stringstream<_CharT, _Traits, _Allocator>::str() const >>> { >>> @@ -965,7 +965,7 @@ basic_stringstream<_CharT, _Traits, _All >>> } >>> >>> template <class _CharT, class _Traits, class _Allocator> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> void >>> basic_stringstream<_CharT, _Traits, _Allocator>::str(const string_type& >>> __s) >>> { >>> >>> Modified: libcxx/trunk/include/streambuf >>> URL: >>> http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/streambuf?rev=255177&r1=255176&r2=255177&view=diff >>> ============================================================================== >>> --- libcxx/trunk/include/streambuf (original) >>> +++ libcxx/trunk/include/streambuf Wed Dec 9 17:42:30 2015 >>> @@ -220,7 +220,7 @@ basic_streambuf<_CharT, _Traits>::~basic >>> } >>> >>> template <class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> locale >>> basic_streambuf<_CharT, _Traits>::pubimbue(const locale& __loc) >>> { >>> @@ -231,7 +231,7 @@ basic_streambuf<_CharT, _Traits>::pubimb >>> } >>> >>> template <class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> locale >>> basic_streambuf<_CharT, _Traits>::getloc() const >>> { >>> @@ -239,7 +239,7 @@ basic_streambuf<_CharT, _Traits>::getloc >>> } >>> >>> template <class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> basic_streambuf<_CharT, _Traits>* >>> basic_streambuf<_CharT, _Traits>::pubsetbuf(char_type* __s, streamsize __n) >>> { >>> @@ -247,7 +247,7 @@ basic_streambuf<_CharT, _Traits>::pubset >>> } >>> >>> template <class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> typename basic_streambuf<_CharT, _Traits>::pos_type >>> basic_streambuf<_CharT, _Traits>::pubseekoff(off_type __off, >>> ios_base::seekdir __way, >>> @@ -257,7 +257,7 @@ basic_streambuf<_CharT, _Traits>::pubsee >>> } >>> >>> template <class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> typename basic_streambuf<_CharT, _Traits>::pos_type >>> basic_streambuf<_CharT, _Traits>::pubseekpos(pos_type __sp, >>> ios_base::openmode __which) >>> @@ -266,7 +266,7 @@ basic_streambuf<_CharT, _Traits>::pubsee >>> } >>> >>> template <class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> int >>> basic_streambuf<_CharT, _Traits>::pubsync() >>> { >>> @@ -274,7 +274,7 @@ basic_streambuf<_CharT, _Traits>::pubsyn >>> } >>> >>> template <class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> streamsize >>> basic_streambuf<_CharT, _Traits>::in_avail() >>> { >>> @@ -284,7 +284,7 @@ basic_streambuf<_CharT, _Traits>::in_ava >>> } >>> >>> template <class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> typename basic_streambuf<_CharT, _Traits>::int_type >>> basic_streambuf<_CharT, _Traits>::snextc() >>> { >>> @@ -294,7 +294,7 @@ basic_streambuf<_CharT, _Traits>::snextc >>> } >>> >>> template <class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> typename basic_streambuf<_CharT, _Traits>::int_type >>> basic_streambuf<_CharT, _Traits>::sbumpc() >>> { >>> @@ -304,7 +304,7 @@ basic_streambuf<_CharT, _Traits>::sbumpc >>> } >>> >>> template <class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> typename basic_streambuf<_CharT, _Traits>::int_type >>> basic_streambuf<_CharT, _Traits>::sgetc() >>> { >>> @@ -314,7 +314,7 @@ basic_streambuf<_CharT, _Traits>::sgetc( >>> } >>> >>> template <class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> streamsize >>> basic_streambuf<_CharT, _Traits>::sgetn(char_type* __s, streamsize __n) >>> { >>> @@ -322,7 +322,7 @@ basic_streambuf<_CharT, _Traits>::sgetn( >>> } >>> >>> template <class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> typename basic_streambuf<_CharT, _Traits>::int_type >>> basic_streambuf<_CharT, _Traits>::sputbackc(char_type __c) >>> { >>> @@ -332,7 +332,7 @@ basic_streambuf<_CharT, _Traits>::sputba >>> } >>> >>> template <class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> typename basic_streambuf<_CharT, _Traits>::int_type >>> basic_streambuf<_CharT, _Traits>::sungetc() >>> { >>> @@ -342,7 +342,7 @@ basic_streambuf<_CharT, _Traits>::sunget >>> } >>> >>> template <class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> typename basic_streambuf<_CharT, _Traits>::int_type >>> basic_streambuf<_CharT, _Traits>::sputc(char_type __c) >>> { >>> @@ -353,7 +353,7 @@ basic_streambuf<_CharT, _Traits>::sputc( >>> } >>> >>> template <class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> streamsize >>> basic_streambuf<_CharT, _Traits>::sputn(const char_type* __s, streamsize >>> __n) >>> { >>> @@ -411,7 +411,7 @@ basic_streambuf<_CharT, _Traits>::swap(b >>> } >>> >>> template <class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> void >>> basic_streambuf<_CharT, _Traits>::gbump(int __n) >>> { >>> @@ -419,7 +419,7 @@ basic_streambuf<_CharT, _Traits>::gbump( >>> } >>> >>> template <class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> void >>> basic_streambuf<_CharT, _Traits>::setg(char_type* __gbeg, char_type* >>> __gnext, >>> char_type* >>> __gend) >>> @@ -430,7 +430,7 @@ basic_streambuf<_CharT, _Traits>::setg(c >>> } >>> >>> template <class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> void >>> basic_streambuf<_CharT, _Traits>::pbump(int __n) >>> { >>> @@ -438,7 +438,7 @@ basic_streambuf<_CharT, _Traits>::pbump( >>> } >>> >>> template <class _CharT, class _Traits> >>> -inline _LIBCPP_INLINE_VISIBILITY >>> +inline >>> void >>> basic_streambuf<_CharT, _Traits>::setp(char_type* __pbeg, char_type* >>> __pend) >>> { >>> >>> >>> _______________________________________________ >>> 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 >> _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits