blob: e1189d0b5bd975f80bd4a01eaf8937dd3a406490 [file] [log] [blame]
Louis Dionne5a5e9972020-11-02 10:30:29 -05001//===----------------------------------------------------------------------===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8
9#include "__config"
Louis Dionne8a79be62020-10-21 11:11:45 -040010#include "fstream"
Louis Dionne5a5e9972020-11-02 10:30:29 -050011#include "ios"
12#include "istream"
13#include "ostream"
Louis Dionne8a79be62020-10-21 11:11:45 -040014#include "sstream"
Louis Dionne5a5e9972020-11-02 10:30:29 -050015#include "streambuf"
16
17
18_LIBCPP_BEGIN_NAMESPACE_STD
19
20// Original explicit instantiations provided in the library
21template class _LIBCPP_CLASS_TEMPLATE_INSTANTIATION_VIS basic_ios<char>;
Louis Dionne5a5e9972020-11-02 10:30:29 -050022template class _LIBCPP_CLASS_TEMPLATE_INSTANTIATION_VIS basic_streambuf<char>;
Louis Dionne5a5e9972020-11-02 10:30:29 -050023template class _LIBCPP_CLASS_TEMPLATE_INSTANTIATION_VIS basic_istream<char>;
Louis Dionne5a5e9972020-11-02 10:30:29 -050024template class _LIBCPP_CLASS_TEMPLATE_INSTANTIATION_VIS basic_ostream<char>;
Louis Dionne5a5e9972020-11-02 10:30:29 -050025template class _LIBCPP_CLASS_TEMPLATE_INSTANTIATION_VIS basic_iostream<char>;
26
Louis Dionne89258142021-08-23 15:32:36 -040027#ifndef _LIBCPP_HAS_NO_WIDE_CHARACTERS
28template class _LIBCPP_CLASS_TEMPLATE_INSTANTIATION_VIS basic_ios<wchar_t>;
29template class _LIBCPP_CLASS_TEMPLATE_INSTANTIATION_VIS basic_streambuf<wchar_t>;
30template class _LIBCPP_CLASS_TEMPLATE_INSTANTIATION_VIS basic_istream<wchar_t>;
31template class _LIBCPP_CLASS_TEMPLATE_INSTANTIATION_VIS basic_ostream<wchar_t>;
32#endif
33
Louis Dionne8a79be62020-10-21 11:11:45 -040034// Additional instantiations added later. Whether programs rely on these being
35// available is protected by _LIBCPP_ABI_ENABLE_ADDITIONAL_IOSTREAM_EXPLICIT_INSTANTIATIONS_1.
36template class _LIBCPP_CLASS_TEMPLATE_INSTANTIATION_VIS basic_stringbuf<char>;
37template class _LIBCPP_CLASS_TEMPLATE_INSTANTIATION_VIS basic_stringstream<char>;
38template class _LIBCPP_CLASS_TEMPLATE_INSTANTIATION_VIS basic_ostringstream<char>;
39template class _LIBCPP_CLASS_TEMPLATE_INSTANTIATION_VIS basic_istringstream<char>;
40template class _LIBCPP_CLASS_TEMPLATE_INSTANTIATION_VIS basic_ifstream<char>;
41template class _LIBCPP_CLASS_TEMPLATE_INSTANTIATION_VIS basic_ofstream<char>;
42template class _LIBCPP_CLASS_TEMPLATE_INSTANTIATION_VIS basic_filebuf<char>;
43
Louis Dionne5a5e9972020-11-02 10:30:29 -050044// Add more here if needed...
45
46_LIBCPP_END_NAMESPACE_STD