shafik accepted this revision. shafik added a comment. LGTM
================ Comment at: clang/test/AST/Interp/literals.cpp:553 + static_assert(IntRem(2, 1) == 0, ""); + static_assert(IntRem(9, 7) == 2, ""); + ---------------- aaron.ballman wrote: > tbaeder wrote: > > aaron.ballman wrote: > > > aaron.ballman wrote: > > > > ``` > > > > static_assert(IntRem(9, 0) == 12, ""); // Not constexpr > > > > static_assert(IntRem(__INT_MIN__, -1) == 12, ""); // Not constexpr > > > > ``` > > > Missed the test for __INT_MIN__ and -1? > > for rem, clang doesn't diagnose anything: https://godbolt.org/z/rhe5ezc54 > That's a bug per https://eel.is/c++draft/expr.mul#4.sentence-3 because the > resulting algebraic value is not representable in the type of the result. Ok, this bugged me enough I figured out what was going on and put up a PR: https://reviews.llvm.org/D140455 CHANGES SINCE LAST ACTION https://reviews.llvm.org/D137071/new/ https://reviews.llvm.org/D137071 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits