[clang] [llvm] [C++23] [CLANG] Adding C++23 constexpr math functions: fmin, fmax and frexp. (PR #88978)
Hubert Tong via cfe-commits
cfe-commits at lists.llvm.org
Fri May 17 22:05:31 PDT 2024
================
@@ -14683,6 +14710,23 @@ bool FloatExprEvaluator::VisitCallExpr(const CallExpr *E) {
default:
return false;
+ case Builtin::BI__builtin_frexp:
----------------
hubert-reinterpretcast wrote:
The non-`__builtin_`-prefixed cases need to be added in as per @philnik777's comment (https://github.com/llvm/llvm-project/pull/88978#discussion_r1582059951). Same for the other two function families.
Some more thought is needed on how to handle the non-`__builtin_`-prefixed cases under non-C++23-or-higher language modes. The specific implications of those functions being non-`constexpr` under said modes (as required, for C++, by https://wg21.link/constexpr.functions) may determine the solution to apply in this PR.
https://github.com/llvm/llvm-project/pull/88978
More information about the cfe-commits
mailing list