loladiro added inline comments.
================
Comment at: lib/Sema/SemaDecl.cpp:10535-10538
@@ -10534,1 +10534,6 @@
<< attr->getRange();
+ APValue Value;
+ SmallVector<PartialDiagnosticAt, 8> Notes;
+ cast<Expr>(var->ensureEvaluatedStmt()->Value)->EvaluateAsInitializer(
+ Value, getASTContext(), var, Notes);
+ for (auto &it : Notes)
----------------
rsmith wrote:
> Can you capture the diagnostics from `checkInitIsICE` instead of recomputing
> them here? (It looks straightforward to add an overload that takes a vector
> of notes.) In the non-C++11 case, you can produce a note pointing to
> `CacheCulprit` instead.
The problem is that the result of checking is cached internally and the
diagnostics are only produced the first time. I don't think it's necessarily
guaranteed that the above `checkInitIsICE` is the first such call (unless you
can see such a reason).
Repository:
rL LLVM
https://reviews.llvm.org/D24371
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits