kadircet added a comment.

> This is helpful information but I am not sure this convinces me that 
> EvaluateVarDecl is the correct place to check. Why not in EvaluateDecl or 
> EvaluateStmt? Both locations we could also check.

I have done the check inside `EvaluateVarDecl` because the invalid evaluation 
happens when we try to analyze type of an invalid var decl.  
I don't know if it would be safe to say we shouldn't evaluate any invalid decl. 
e.g. `EvaluateDecl` returns true for any non-vardecl today, without checking 
for anything at all. I don't know if changing the contract there, let alone at 
the statement level, would be correct. but doing it inside the vardecl 
evaluation is **at least** correct, but might be redundant.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D132918/new/

https://reviews.llvm.org/D132918

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to