[PATCH] D25817: [Sema] Improve the error diagnostic for dot destructor calls on pointer objects

Richard Smith via cfe-commits cfe-commits at lists.llvm.org
Mon Oct 24 16:35:41 PDT 2016


rsmith added a comment.

In https://reviews.llvm.org/D25817#576276, @arphaman wrote:

> This code does perform recovery, but the constructed AST for the destructor calls is different from the AST that would have been constructed if the code was correct: we still end up building the pseudo destructor expression. I'm not sure how important is that though, so please let me know if I should try and make the ASTs the same.


The intent is that the following diagnostics produced by the compile-with-fixit should be the same as the diagnostics that would be produced by the fixed code (specifically: we should not issue any "follow-on" diagnostics if the fix was correct, and if all errors have fixits then the code with fixits applied should compile cleanly). On that basis, it seems like it should be OK to produce a pseudo-destructor expression here, but you should check that the destructor of the base type is callable if it's a class type, and that it's a type for which it's valid to use a pseudo-dtor otherwise (see line 6258).


Repository:
  rL LLVM

https://reviews.llvm.org/D25817





More information about the cfe-commits mailing list