Louis Dionne | 9bd9388 | 2021-11-17 16:25:01 -0500 | [diff] [blame] | 1 | //===----------------------------------------------------------------------===// |
Eric Fiselier | d23d459 | 2017-06-15 01:53:12 +0000 | [diff] [blame] | 2 | // |
Chandler Carruth | d201210 | 2019-01-19 10:56:40 +0000 | [diff] [blame] | 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 |
Eric Fiselier | d23d459 | 2017-06-15 01:53:12 +0000 | [diff] [blame] | 6 | // |
| 7 | //===----------------------------------------------------------------------===// |
| 8 | |
Arthur O'Dwyer | cf9bf39 | 2022-02-11 13:00:39 -0500 | [diff] [blame] | 9 | #include <vector> |
Eric Fiselier | d23d459 | 2017-06-15 01:53:12 +0000 | [diff] [blame] | 10 | |
| 11 | _LIBCPP_BEGIN_NAMESPACE_STD |
| 12 | |
Nikolas Klauser | 129974f | 2022-02-03 23:09:37 +0100 | [diff] [blame] | 13 | #ifndef _LIBCPP_ABI_DO_NOT_EXPORT_VECTOR_BASE_COMMON |
| 14 | |
| 15 | template <bool> |
| 16 | struct __vector_base_common; |
| 17 | |
| 18 | template <> |
| 19 | struct __vector_base_common<true> { |
| 20 | _LIBCPP_NORETURN _LIBCPP_EXPORTED_FROM_ABI void __throw_length_error() const; |
| 21 | _LIBCPP_NORETURN _LIBCPP_EXPORTED_FROM_ABI void __throw_out_of_range() const; |
| 22 | }; |
| 23 | |
Louis Dionne | b6aabd9 | 2021-08-19 12:21:06 -0400 | [diff] [blame] | 24 | void __vector_base_common<true>::__throw_length_error() const { |
Nikolas Klauser | 129974f | 2022-02-03 23:09:37 +0100 | [diff] [blame] | 25 | _VSTD::__throw_length_error("vector"); |
Louis Dionne | b6aabd9 | 2021-08-19 12:21:06 -0400 | [diff] [blame] | 26 | } |
| 27 | |
| 28 | void __vector_base_common<true>::__throw_out_of_range() const { |
Nikolas Klauser | 129974f | 2022-02-03 23:09:37 +0100 | [diff] [blame] | 29 | _VSTD::__throw_out_of_range("vector"); |
Louis Dionne | b6aabd9 | 2021-08-19 12:21:06 -0400 | [diff] [blame] | 30 | } |
Eric Fiselier | d23d459 | 2017-06-15 01:53:12 +0000 | [diff] [blame] | 31 | |
Nikolas Klauser | 129974f | 2022-02-03 23:09:37 +0100 | [diff] [blame] | 32 | #endif // _LIBCPP_ABI_DO_NOT_EXPORT_VECTOR_BASE_COMMON |
| 33 | |
Eric Fiselier | d23d459 | 2017-06-15 01:53:12 +0000 | [diff] [blame] | 34 | _LIBCPP_END_NAMESPACE_STD |