diff options
Diffstat (limited to 'lib/libcxx/src/vector.cpp')
| -rw-r--r-- | lib/libcxx/src/vector.cpp | 23 |
1 files changed, 21 insertions, 2 deletions
diff --git a/lib/libcxx/src/vector.cpp b/lib/libcxx/src/vector.cpp index 3b65e558fd..201d4e3bf0 100644 --- a/lib/libcxx/src/vector.cpp +++ b/lib/libcxx/src/vector.cpp @@ -1,4 +1,4 @@ -//===------------------------- vector.cpp ---------------------------------===// +//===----------------------------------------------------------------------===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. @@ -10,6 +10,25 @@ _LIBCPP_BEGIN_NAMESPACE_STD -template class _LIBCPP_CLASS_TEMPLATE_INSTANTIATION_VIS __vector_base_common<true>; +#ifndef _LIBCPP_ABI_DO_NOT_EXPORT_VECTOR_BASE_COMMON + +template <bool> +struct __vector_base_common; + +template <> +struct __vector_base_common<true> { + _LIBCPP_NORETURN _LIBCPP_EXPORTED_FROM_ABI void __throw_length_error() const; + _LIBCPP_NORETURN _LIBCPP_EXPORTED_FROM_ABI void __throw_out_of_range() const; +}; + +void __vector_base_common<true>::__throw_length_error() const { + _VSTD::__throw_length_error("vector"); +} + +void __vector_base_common<true>::__throw_out_of_range() const { + _VSTD::__throw_out_of_range("vector"); +} + +#endif // _LIBCPP_ABI_DO_NOT_EXPORT_VECTOR_BASE_COMMON _LIBCPP_END_NAMESPACE_STD |
