aboutsummaryrefslogtreecommitdiff
path: root/libstdc++-v3/include/std/std_fstream.h
diff options
context:
space:
mode:
Diffstat (limited to 'libstdc++-v3/include/std/std_fstream.h')
-rw-r--r--libstdc++-v3/include/std/std_fstream.h18
1 files changed, 15 insertions, 3 deletions
diff --git a/libstdc++-v3/include/std/std_fstream.h b/libstdc++-v3/include/std/std_fstream.h
index 685a38dd944..bbb74c6c5eb 100644
--- a/libstdc++-v3/include/std/std_fstream.h
+++ b/libstdc++-v3/include/std/std_fstream.h
@@ -234,11 +234,11 @@ namespace std
// [documentation is inherited]
virtual int_type
- underflow() { return _M_underflow_common(false); }
+ underflow();
// [documentation is inherited]
virtual int_type
- uflow() { return _M_underflow_common(true); }
+ uflow();
// [documentation is inherited]
virtual int_type
@@ -431,7 +431,7 @@ namespace std
}
};
- // Explicit specializations, defined in src/fstream.cc.
+ // Explicit specialization declarations, defined in src/fstream.cc.
template<>
basic_filebuf<char>::int_type
basic_filebuf<char>::_M_underflow_common(bool __bump);
@@ -442,6 +442,18 @@ namespace std
basic_filebuf<wchar_t>::_M_underflow_common(bool __bump);
#endif
+ // Generic definitions.
+ template <typename _CharT, typename _Traits>
+ basic_filebuf<_CharT, _Traits>::int_type
+ basic_filebuf<_CharT, _Traits>::underflow()
+ { return _M_underflow_common(false); }
+
+ template <typename _CharT, typename _Traits>
+ basic_filebuf<_CharT, _Traits>::int_type
+ basic_filebuf<_CharT, _Traits>::uflow()
+ { return _M_underflow_common(true); }
+
+
// [27.8.1.5] Template class basic_ifstream
/**
* @brief Controlling input for files.