Move explicit instantiation definitions for string I/O functions into their own files so that iostream and locale definitions are not needed for uses of strings without I/O. Move functions for throwing C++11 exceptions into the individual files defining the exception types, so that using any of the functions from functexcept.cc doesn't pull in large pieces of the C++11 library. Finally, avoid using __int_to_char in snprintf_lite.cc to avoid pulling in locale-inst.cc for one function. PR libstdc++/60936 * src/c++11/Makefile.am: Add new files. * src/c++11/Makefile.in: Regenerate. * src/c++11/cow-string-inst.cc [!_GLIBCXX_USE_CXX11_ABI] (operator<<, operator>>, getline): Move explicit instantiations to ... * src/c++11/cow-string-io-inst.cc: ... new file. * src/c++11/cow-wstring-inst.cc [!_GLIBCXX_USE_CXX11_ABI] (operator<<, operator>>, getline): Move explicit instantiations to ... * src/c++11/cow-wstring-io-inst.cc: ... new file. * src/c++11/functexcept.cc (__throw_ios_failure, __throw_system_error) (__throw_future_error, __throw_bad_function_call): (__throw_regex_error): Move functions for C++11 exceptions to the files that define the exception types. * src/c++11/functional.cc (__throw_bad_function_call): Move here. * src/c++11/future.cc (__throw_future_error): Likewise. * src/c++11/ios.cc (__throw_ios_failure): Likewise. * src/c++11/regex.cc (__throw_regex_error): Likewise. * src/c++11/snprintf_lite.cc (__concat_size_t): Print decimal representation directly instead of calling __int_to_char. * src/c++11/sso_string.cc (__sso_string): New file for definition of __sso_string type. * src/c++11/string-io-inst.cc [_GLIBCXX_USE_CXX11_ABI]: New file for explicit instantiations of narrow string I/O functions. * src/c++11/system_error.cc (__throw_system_error): Move here. (__sso_string): Move to new file. * src/c++11/wstring-io-inst.cc [_GLIBCXX_USE_CXX11_ABI]: New file for explicit instantiations of wide string I/O functions. * src/c++98/misc-inst.cc [_GLIBCXX_USE_CXX11_ABI] (operator<<) (operator>>, getline): Remove explicit instantiations from here. From-SVN: r245162
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| Makefile.am | Loading commit data... | |
| Makefile.in | Loading commit data... | |
| allocator-inst.cc | Loading commit data... | |
| bitmap_allocator.cc | Loading commit data... | |
| codecvt.cc | Loading commit data... | |
| compatibility-debug_list-2.cc | Loading commit data... | |
| compatibility-debug_list.cc | Loading commit data... | |
| compatibility-ldbl.cc | Loading commit data... | |
| compatibility.cc | Loading commit data... | |
| complex_io.cc | Loading commit data... | |
| concept-inst.cc | Loading commit data... | |
| cow-istream-string.cc | Loading commit data... | |
| ext-inst.cc | Loading commit data... | |
| globals_io.cc | Loading commit data... | |
| hash-long-double-tr1-aux.cc | Loading commit data... | |
| hash_tr1.cc | Loading commit data... | |
| hashtable_tr1.cc | Loading commit data... | |
| ios_failure.cc | Loading commit data... | |
| ios_init.cc | Loading commit data... | |
| ios_locale.cc | Loading commit data... | |
| istream-string.cc | Loading commit data... | |
| istream.cc | Loading commit data... | |
| list-aux-2.cc | Loading commit data... | |
| list-aux.cc | Loading commit data... | |
| list.cc | Loading commit data... | |
| list_associated-2.cc | Loading commit data... | |
| list_associated.cc | Loading commit data... | |
| locale.cc | Loading commit data... | |
| locale_facets.cc | Loading commit data... | |
| locale_init.cc | Loading commit data... | |
| localename.cc | Loading commit data... | |
| math_stubs_float.cc | Loading commit data... | |
| math_stubs_long_double.cc | Loading commit data... | |
| misc-inst.cc | Loading commit data... | |
| mt_allocator.cc | Loading commit data... | |
| parallel_settings.cc | Loading commit data... | |
| pool_allocator.cc | Loading commit data... | |
| stdexcept.cc | Loading commit data... | |
| streambuf.cc | Loading commit data... | |
| strstream.cc | Loading commit data... | |
| tree.cc | Loading commit data... | |
| valarray.cc | Loading commit data... |