[clang] [clang][Interp] Implement IntegralAP::{div, rem} (PR #72614)
Timm Baeder via cfe-commits
cfe-commits at lists.llvm.org
Fri Jan 12 00:27:54 PST 2024
================
@@ -44,6 +44,24 @@ static_assert(MulA * MulB == 50, ""); // ref-error {{not an integral constant ex
static_assert(MulA * 5 == 25, "");
static_assert(-1 * MulB == -7, "");
+
+constexpr _BitInt(4) DivA = 2;
+constexpr _BitInt(2) DivB = 1;
+static_assert(DivA / DivB == 2, "");
+
+constexpr _BitInt(4) DivC = DivA / 0; // ref-error {{must be initialized by a constant expression}} \
----------------
tbaederr wrote:
Using `int` means it won't use `IntegralAP` at all though. I've added those tests with `_BitInt(32)`.
https://github.com/llvm/llvm-project/pull/72614
More information about the cfe-commits
mailing list