nickdesaulniers added inline comments.
================
Comment at: clang/lib/AST/ExprConstant.cpp:8384-8385
const MaterializeTemporaryExpr *E) {
+ if (Info.EvalMode == EvalInfo::EM_ConstantFold)
+ return false;
+
----------------
removing these two lines fixes the following regressions:
Failed Tests (6):
llvm-libc++-shared.cfg.in ::
std/algorithms/alg.modifying.operations/alg.fill/ranges.fill.pass.cpp
llvm-libc++-shared.cfg.in ::
std/algorithms/alg.modifying.operations/alg.fill/ranges.fill_n.pass.cpp
llvm-libc++-shared.cfg.in ::
std/strings/basic.string/string.cons/dtor.pass.cpp
llvm-libc++-shared.cfg.in ::
std/strings/basic.string/string.cons/pointer_assignment.pass.cpp
llvm-libc++-shared.cfg.in ::
std/strings/basic.string/string.modifiers/string_assign/pointer.pass.cpp
llvm-libc++-shared.cfg.in ::
std/utilities/utility/pairs/pairs.pair/assign.pair_like_rv.pass.cpp
The condition probably needs further specification. Let me see if I can work
out what's missing.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D151587/new/
https://reviews.llvm.org/D151587
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits