Author: Timm Bäder Date: 2023-10-18T14:23:29+02:00 New Revision: 66c99154a130553a50e499d898ef1fba5b755dcf
URL: https://github.com/llvm/llvm-project/commit/66c99154a130553a50e499d898ef1fba5b755dcf DIFF: https://github.com/llvm/llvm-project/commit/66c99154a130553a50e499d898ef1fba5b755dcf.diff LOG: [clang][Interp][NFC] Remove from(Boolean) overload This code is unused now that we have special casts from/to IntAP(S). Added: Modified: clang/lib/AST/Interp/IntegralAP.h clang/test/AST/Interp/intap.cpp Removed: ################################################################################ diff --git a/clang/lib/AST/Interp/IntegralAP.h b/clang/lib/AST/Interp/IntegralAP.h index f17fb8e484415d2..fd120944a25043e 100644 --- a/clang/lib/AST/Interp/IntegralAP.h +++ b/clang/lib/AST/Interp/IntegralAP.h @@ -29,7 +29,6 @@ namespace interp { using APInt = llvm::APInt; using APSInt = llvm::APSInt; template <unsigned Bits, bool Signed> class Integral; -class Boolean; template <bool Signed> class IntegralAP final { private: @@ -104,10 +103,6 @@ template <bool Signed> class IntegralAP final { assert(Copy.isSigned() == Signed); return IntegralAP<Signed>(Copy); } - static IntegralAP from(const Boolean &B) { - assert(false); - return IntegralAP::zero(); - } static IntegralAP zero() { assert(false); diff --git a/clang/test/AST/Interp/intap.cpp b/clang/test/AST/Interp/intap.cpp index f9cbc698a3290d8..ef7a0d4f0dfdab0 100644 --- a/clang/test/AST/Interp/intap.cpp +++ b/clang/test/AST/Interp/intap.cpp @@ -42,6 +42,9 @@ namespace i128 { // ref-note {{outside the range}} constexpr int128_t Two = (int128_t)1 << 1ul; static_assert(Two == 2, ""); + static_assert(Two, ""); + constexpr bool CastedToBool = Two; + static_assert(CastedToBool, ""); constexpr uint128_t AllOnes = ~static_cast<uint128_t>(0); static_assert(AllOnes == UINT128_MAX, ""); _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits