davrec added inline comments.

================
Comment at: clang/test/Sema/Resugar/resugar-expr.cpp:244
+// N-error@-2 {{with an rvalue of type 'int'}}
+} // namespace t21
----------------
Compositions of MemberExprs/CXXMemberCallExprs have an issue:
```
template <class A1> struct A {
  struct Inner {
    A1 m;
    A1 f();
  } inner;
  Inner g();
};
Z x1 = A<Int>().inner.m; //No resugar
Z x2 = A<Int>().inner.f(); //No resugar
Z x3 = A<Int>().g().m; //No resugar
Z x4 = A<Int>().g().f(); //No resugar
Z x5 = A<Int>::Inner().m; //ok
```

Composed `CallExprs` seem to work but probably warrant a test, e.g.
```
template <class B1> B1 h(B1);
Z x6 = h(Int());
Z x7 = h(h(Int()));
```

https://godbolt.org/z/cszrsvh8d



Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D127695

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
  • [PATCH] D127695: WIP: clan... David Rector via Phabricator via cfe-commits

Reply via email to