//===----------------------------------------------------------------------===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// // // template struct pair // pair(const pair&) = default; #include #include #include "test_macros.h" int main(int, char**) { { typedef std::pair P1; P1 p1(3, static_cast(4)); P1 p2 = p1; assert(p2.first == 3); assert(p2.second == 4); } #if TEST_STD_VER > 11 { typedef std::pair P1; constexpr P1 p1(3, static_cast(4)); constexpr P1 p2 = p1; static_assert(p2.first == 3, ""); static_assert(p2.second == 4, ""); } #endif return 0; }