brintos

brintos / llvm-project-archived public Read only

0
0
Text · 897 B · 3a1008c Raw
35 lines · cpp
1//===----------------------------------------------------------------------===//2//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-exception6//7//===----------------------------------------------------------------------===//8 9// <utility>10 11// template <class T1, class T2> struct pair12 13// template <class T1, class T2> void swap(pair<T1, T2>& x, pair<T1, T2>& y);14 15#include <utility>16#include <cassert>17 18#include "test_macros.h"19 20int main(int, char**)21{22    {23        typedef std::pair<int, short> P1;24        P1 p1(3, static_cast<short>(4));25        P1 p2(5, static_cast<short>(6));26        swap(p1, p2);27        assert(p1.first == 5);28        assert(p1.second == 6);29        assert(p2.first == 3);30        assert(p2.second == 4);31    }32 33  return 0;34}35