[all-commits] [llvm/llvm-project] e328d6: [C++20] Stop claiming full support for consteval (...

Aaron Ballman via All-commits all-commits at lists.llvm.org
Thu Feb 23 04:41:59 PST 2023

  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: e328d68d5ba1fe365c36655b8ae287928da6d3ed
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2023-02-23 (Thu, 23 Feb 2023)

  Changed paths:
    M clang/test/CXX/expr/expr.const/p6-2a.cpp
    A clang/test/CXX/expr/expr.const/p8-2a.cpp
    M clang/www/cxx_status.html

  Log Message:
  [C++20] Stop claiming full support for consteval (for the moment!)

During Clang 15, 3d2629dd3aab17098813c68b5b76bb864bc5e285 claimed we
achieved full support for consteval in C++20. However, further testing
shows that Clang doesn't correctly handle all of the examples from
https://wg21.link/P1073R3 and has several other known issues that are
preventing us from defining the `__cpp_consteval` macro.

I think we should only claim Partial support for the moment. Once we
correct the major outstanding issues, then I think we should change the
status back to full support and define __cpp_consteval at the same time
(even if it's only to the 201811L value instead of the latest value
from C++2b). This helps users understand the support situation more

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

More information about the All-commits mailing list