[all-commits] [llvm/llvm-project] 7223bc: [libc++] [C++20] [P0415] Constexpr for std::complex.

Marek Kurdej via All-commits all-commits at lists.llvm.org
Sun Jan 8 06:47:05 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 7223bcf04c4ce3c1585df9408c6a6663cc8364ea
      https://github.com/llvm/llvm-project/commit/7223bcf04c4ce3c1585df9408c6a6663cc8364ea
  Author: Marek Kurdej <marek.kurdej+llvm.org at gmail.com>
  Date:   2023-01-08 (Sun, 08 Jan 2023)

  Changed paths:
    M libcxx/docs/FeatureTestMacroTable.rst
    M libcxx/docs/ReleaseNotes.rst
    M libcxx/docs/Status/Cxx20Papers.csv
    M libcxx/include/__config
    M libcxx/include/cmath
    M libcxx/include/complex
    M libcxx/include/math.h
    M libcxx/include/version
    M libcxx/test/std/language.support/support.limits/support.limits.general/complex.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
    M libcxx/test/std/numerics/complex.number/cases.h
    M libcxx/test/std/numerics/complex.number/cmplx.over/conj.pass.cpp
    M libcxx/test/std/numerics/complex.number/cmplx.over/norm.pass.cpp
    M libcxx/test/std/numerics/complex.number/complex.member.ops/assignment_complex.pass.cpp
    M libcxx/test/std/numerics/complex.number/complex.member.ops/assignment_scalar.pass.cpp
    M libcxx/test/std/numerics/complex.number/complex.member.ops/divide_equal_complex.pass.cpp
    M libcxx/test/std/numerics/complex.number/complex.member.ops/divide_equal_scalar.pass.cpp
    M libcxx/test/std/numerics/complex.number/complex.member.ops/minus_equal_complex.pass.cpp
    M libcxx/test/std/numerics/complex.number/complex.member.ops/minus_equal_scalar.pass.cpp
    M libcxx/test/std/numerics/complex.number/complex.member.ops/plus_equal_complex.pass.cpp
    M libcxx/test/std/numerics/complex.number/complex.member.ops/plus_equal_scalar.pass.cpp
    M libcxx/test/std/numerics/complex.number/complex.member.ops/times_equal_complex.pass.cpp
    M libcxx/test/std/numerics/complex.number/complex.member.ops/times_equal_scalar.pass.cpp
    M libcxx/test/std/numerics/complex.number/complex.members/real_imag.pass.cpp
    M libcxx/test/std/numerics/complex.number/complex.ops/complex_divide_complex.pass.cpp
    M libcxx/test/std/numerics/complex.number/complex.ops/complex_divide_scalar.pass.cpp
    M libcxx/test/std/numerics/complex.number/complex.ops/complex_equals_complex.pass.cpp
    M libcxx/test/std/numerics/complex.number/complex.ops/complex_equals_scalar.pass.cpp
    M libcxx/test/std/numerics/complex.number/complex.ops/complex_minus_complex.pass.cpp
    M libcxx/test/std/numerics/complex.number/complex.ops/complex_minus_scalar.pass.cpp
    M libcxx/test/std/numerics/complex.number/complex.ops/complex_not_equals_complex.pass.cpp
    M libcxx/test/std/numerics/complex.number/complex.ops/complex_not_equals_scalar.pass.cpp
    M libcxx/test/std/numerics/complex.number/complex.ops/complex_plus_complex.pass.cpp
    M libcxx/test/std/numerics/complex.number/complex.ops/complex_plus_scalar.pass.cpp
    M libcxx/test/std/numerics/complex.number/complex.ops/complex_times_complex.pass.cpp
    M libcxx/test/std/numerics/complex.number/complex.ops/complex_times_scalar.pass.cpp
    M libcxx/test/std/numerics/complex.number/complex.ops/scalar_divide_complex.pass.cpp
    M libcxx/test/std/numerics/complex.number/complex.ops/scalar_equals_complex.pass.cpp
    M libcxx/test/std/numerics/complex.number/complex.ops/scalar_minus_complex.pass.cpp
    M libcxx/test/std/numerics/complex.number/complex.ops/scalar_not_equals_complex.pass.cpp
    M libcxx/test/std/numerics/complex.number/complex.ops/scalar_plus_complex.pass.cpp
    M libcxx/test/std/numerics/complex.number/complex.ops/scalar_times_complex.pass.cpp
    M libcxx/test/std/numerics/complex.number/complex.ops/unary_minus.pass.cpp
    M libcxx/test/std/numerics/complex.number/complex.ops/unary_plus.pass.cpp
    M libcxx/utils/generate_feature_test_macro_components.py

  Log Message:
  -----------
  [libc++] [C++20] [P0415] Constexpr for std::complex.

This patch adds constexpr to <complex> header: operators, member operators, and member functions (real, imag, norm, conj).

https://eel.is/c++draft/complex.numbers
https://wg21.link/p0415

Reviewed By: ldionne, #libc

Spies: philnik, danilaml, Quuxplusone, wmaxey, arichardson, libcxx-commits

Differential Revision: https://reviews.llvm.org/D79555




More information about the All-commits mailing list