<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/59033>59033</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            Assertion Failure: llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp:509: void getCopyToParts(llvm::SelectionDAG&, const llvm::SDLoc&, llvm::SDValue, llvm::SDValue*, unsigned int, llvm::MVT, const llvm::Value*, llvm::Optional<unsigned int>, llvm::ISD::NodeType): Assertion `NumParts == 1 && "No-op copy with multiple parts!"' failed.
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          compnerd
      </td>
    </tr>
</table>

<pre>
    ```c++
template <typename F_>
decltype(&F_::operator()) g(F_ f) {
    void (F_::*pmf)() const = &F_::operator();
    __asm__ __volatile__("" ::"r"(pmf));
    return pmf;
}

auto pmf = g([](){});
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJx1Uk2P2jAQ_TXOxVqUOCSBQw5AyqpSSyvtaq-REw_gyokt26Hi33dsoEDVjUa2Mx_Pz2-m0-JckzK9WE_YOljakHTlYTCKe6Ak3_izgZEPQLctyb9c4gJ6FfyELQgrQ2CFpg1Y7rWN3iUaPeBx29J9OJPqCk7xO2kpaAxeSglbmWEfq0It7fXoPN7e0M_x8we8tuVuaFvcTxqJSwVtG9MYGr3dwWx0LG5XPWNY8JMdaQje3KRqroe48snrEI_EwttIsSZFc-WD78P0B9C_2iZQZ2W5KHFJF4moc7HMlzzx0iuoV86B9VKPdMulmiwgVarUaSBsq2SH60YLeIURT2-goA-5zer1n9_1JJUAO-uNQYAiXQaYKPMB_Eab87v-ya13SDaCR0me8UrCNlflH1Kab7q_xh69H1xN8IlzFfzT6ORhBEHl6J_zvn-8_--mx-K794cJ_LjCSXxCxFF8yvv61lwOO1TrPc5mlOAuLzZiNw1RhNDA0MOMxpeVuLGdftEGSZkz_S39kQ6T8tIooOYiWxZnp6J77BKIWTJZVR-9Ny6O1hbtgGVTN-t1bN21g7i9GKt_oc74K52bAMG2xTLN8-RYz3klYF9WSxBl383ZPoUCel5k866HrioTxTtQrr5MWiJrljKWZRnOUl7Oq9linld5xtJu0fFCQEnmKQzIcBYunml7SGwdOXTTwWFQSefdPchdlBRu-DjhR21rfIIZwYok8q0j2T-jBTov">