1*4bdff4beSrobert //===----------------------------------------------------------------------===// 246035553Spatrick // 346035553Spatrick // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 446035553Spatrick // See https://llvm.org/LICENSE.txt for license information. 546035553Spatrick // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 646035553Spatrick // 746035553Spatrick //===----------------------------------------------------------------------===// 846035553Spatrick 9*4bdff4beSrobert #include <vector> 1046035553Spatrick 1146035553Spatrick _LIBCPP_BEGIN_NAMESPACE_STD 1246035553Spatrick 13*4bdff4beSrobert #ifndef _LIBCPP_ABI_DO_NOT_EXPORT_VECTOR_BASE_COMMON 14*4bdff4beSrobert 15*4bdff4beSrobert template <bool> 16*4bdff4beSrobert struct __vector_base_common; 17*4bdff4beSrobert 18*4bdff4beSrobert template <> 19*4bdff4beSrobert struct __vector_base_common<true> { 20*4bdff4beSrobert _LIBCPP_NORETURN _LIBCPP_EXPORTED_FROM_ABI void __throw_length_error() const; 21*4bdff4beSrobert _LIBCPP_NORETURN _LIBCPP_EXPORTED_FROM_ABI void __throw_out_of_range() const; 22*4bdff4beSrobert }; 23*4bdff4beSrobert __throw_length_error() const24*4bdff4beSrobertvoid __vector_base_common<true>::__throw_length_error() const { 25*4bdff4beSrobert _VSTD::__throw_length_error("vector"); 26*4bdff4beSrobert } 27*4bdff4beSrobert __throw_out_of_range() const28*4bdff4beSrobertvoid __vector_base_common<true>::__throw_out_of_range() const { 29*4bdff4beSrobert _VSTD::__throw_out_of_range("vector"); 30*4bdff4beSrobert } 31*4bdff4beSrobert 32*4bdff4beSrobert #endif // _LIBCPP_ABI_DO_NOT_EXPORT_VECTOR_BASE_COMMON 3346035553Spatrick 3446035553Spatrick _LIBCPP_END_NAMESPACE_STD 35