[PATCH] D99696: [clang] NRVO: Improvements and handling of more cases.

Arthur O'Dwyer via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Wed Jun 16 12:11:04 PDT 2021


Quuxplusone added a comment.

Some tiny nits. I can't think of any interesting block-related cases (but my knowledge of blocks is apparently very rusty at this point).



================
Comment at: clang/lib/Sema/SemaTemplateInstantiateDecl.cpp:1100
+    // This is the last chance we have of checking copy elision eligibility
+    // for functions in depdendent contexts. The sema actions for building
+    // the return statement during template instantiation will have no effect
----------------
/depdendent/dependent/


================
Comment at: clang/test/CodeGen/nrvo-tracking.cpp:206
+void b_attr() {
+  auto t = []<class T = X>() { return ^ X () [[clang::vectorcall]] {
+      T t;
----------------
Formatting nit: I'd think
```
    auto t = []<class T = X>() {
        return ^X() [[clang::vectorcall]] {
            T t;
            return t;
        };
    }()();
```
would be less confusing to the eyes.



================
Comment at: clang/test/SemaObjCXX/block-capture.mm:43
+  ConvertingRVRef(X &&);
+  operator X() const & = delete;;
+  operator X() &&;
----------------
Nit: `;;` here


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D99696



More information about the cfe-commits mailing list