[PATCH] D151720: [clang][ExprConstant] Fix display of syntactically-invalid note for member function calls

Takuya Shimizu via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Tue May 30 22:15:50 PDT 2023


hazohelet added a comment.

In D151720#4383098 <https://reviews.llvm.org/D151720#4383098>, @tbaeder wrote:

> Can you show the output for an example where the `->` notation is correct, e.h. https://godbolt.org/z/6a5oExjME ?
>
> I suppose the patch doesn't change this much, but the current way that's displayed (`&{*new Foo#0}->zomg()`) is... questionable.

The output for that code becomes

  source.cpp:20:12: note: in call to '{*new Foo#0}.zomg()'
          F->zomg();
             ^
  source.cpp:28:17: note: in call to 's.heh()'
  static_assert(s.heh());
                  ^

, which I think is still not good.
But, at least `(*new Foo).zomg()` would be syntactically valid. I'll check the reason for the use of curly bracket and `#number` notations.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D151720



More information about the cfe-commits mailing list