summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjasonliu <jasonliu.development@gmail.com>2021-04-12 19:22:12 +0000
committerTom Stellard <tstellar@redhat.com>2021-06-22 14:28:38 -0400
commit0680e2b5a1182abc1d2fdb6730ef7d742a4d6345 (patch)
treec6ea39ee69535ef47c81c81215daa8f77cd6f9e9
parent884040db086936107ec81656aa5b4c607235fb9a (diff)
downloadllvm-0680e2b5a1182abc1d2fdb6730ef7d742a4d6345.tar.gz
[libc++] add `inline` for __open's definition in ifstream and ofstream
Summary: When building with gcc on AIX, it seems that gcc does not like the `always_inline` without the `inline` keyword. So adding the inline keywords in for __open in ifstream and ofstream. That will also make it consistent with __open in basic_filebuf (it seems we added `inline` there before for gcc build as well). Differential Revision: https://reviews.llvm.org/D99422 (cherry picked from commit 52e9d80d5db20f23979e409f958736d130387f9e)
-rw-r--r--libcxx/include/fstream6
1 files changed, 4 insertions, 2 deletions
diff --git a/libcxx/include/fstream b/libcxx/include/fstream
index d7d6b46c32d9..7b1bbfe16c01 100644
--- a/libcxx/include/fstream
+++ b/libcxx/include/fstream
@@ -244,7 +244,7 @@ public:
return open(__p.c_str(), __mode);
}
#endif
- inline _LIBCPP_INLINE_VISIBILITY
+ _LIBCPP_INLINE_VISIBILITY
basic_filebuf* __open(int __fd, ios_base::openmode __mode);
#endif
basic_filebuf* close();
@@ -574,7 +574,7 @@ basic_filebuf<_CharT, _Traits>::open(const char* __s, ios_base::openmode __mode)
}
template <class _CharT, class _Traits>
-inline _LIBCPP_INLINE_VISIBILITY
+inline
basic_filebuf<_CharT, _Traits>*
basic_filebuf<_CharT, _Traits>::__open(int __fd, ios_base::openmode __mode) {
basic_filebuf<_CharT, _Traits>* __rt = nullptr;
@@ -1326,6 +1326,7 @@ basic_ifstream<_CharT, _Traits>::open(const string& __s, ios_base::openmode __mo
}
template <class _CharT, class _Traits>
+inline
void basic_ifstream<_CharT, _Traits>::__open(int __fd,
ios_base::openmode __mode) {
if (__sb_.__open(__fd, __mode | ios_base::in))
@@ -1539,6 +1540,7 @@ basic_ofstream<_CharT, _Traits>::open(const string& __s, ios_base::openmode __mo
}
template <class _CharT, class _Traits>
+inline
void basic_ofstream<_CharT, _Traits>::__open(int __fd,
ios_base::openmode __mode) {
if (__sb_.__open(__fd, __mode | ios_base::out))