Summary: | [C++11] Not all copy-assignment operator forms are correctly detected | ||
---|---|---|---|
Product: | gcc | Reporter: | Daniel Krügler <daniel.kruegler> |
Component: | c++ | Assignee: | Not yet assigned to anyone <unassigned> |
Status: | RESOLVED INVALID | ||
Severity: | minor | Keywords: | rejects-valid |
Priority: | P3 | ||
Version: | 4.7.2 | ||
Target Milestone: | --- | ||
Host: | Target: | ||
Build: | Known to work: | ||
Known to fail: | 4.7.2, 4.8.0 | Last reconfirmed: | 2013-01-09 00:00:00 |
Description
Daniel Krügler
2013-01-09 18:27:33 UTC
Remark: The noexcept specifier was added unintentionally and is not relevant to reproduce the described problem. Clang thinks you need to add mine() = default; mine(const mine&) = default; for the code to be accepted and I agree, otherwise the operator=(mine) assignment operator calls the copy constructor which is deleted because of a user-declared move assignment operator. Oops, I didn't meant to change this to NEW, sorry Oops I failed to read the error description correctly. The compiler is correct, so please declare this as INVALID. Sorry for the noise. . |