brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1004 B · b47d945 Raw
41 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// <complex>10 11// template<> class complex<long double>12// {13// public:14//     constexpr complex(const complex<double>&);15// };16 17#include <complex>18#include <cassert>19 20#include "test_macros.h"21 22int main(int, char**)23{24    {25    const std::complex<double> cd(2.5, 3.5);26    std::complex<long double> cf = cd;27    assert(cf.real() == cd.real());28    assert(cf.imag() == cd.imag());29    }30#if TEST_STD_VER >= 1131    {32    constexpr std::complex<double> cd(2.5, 3.5);33    constexpr std::complex<long double> cf = cd;34    static_assert(cf.real() == cd.real(), "");35    static_assert(cf.imag() == cd.imag(), "");36    }37#endif38 39  return 0;40}41