[libcxx-commits] [PATCH] D115291: [libc++] `= delete` member functions with // = delete;
Louis Dionne via Phabricator via libcxx-commits
libcxx-commits at lists.llvm.org
Tue Dec 7 15:27:17 PST 2021
ldionne accepted this revision.
ldionne added a comment.
This revision is now accepted and ready to land.
LGTM -- this one definitely has no ABI impact :)
I believe this might in some cases turn link errors into compile-time errors, but that's fine.
For some reason, I also have a feeling that this might make code that used to compile not compile anymore. From https://en.cppreference.com/w/cpp/language/function#Deleted_functions:
> If the function is overloaded, overload resolution takes place first, and the program is only ill-formed if the deleted function was selected.
I believe I've seen some cases where deleted functions would cause hard errors to happen instead of SFINAE, because the deleted function would be viable, but when the compiler would select and try to instantiate it, it would say "you can't do that, the function is deleted". But I'm failing to reproduce that, so I guess it's not a real issue: https://godbolt.org/z/YjMK9G6qs
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D115291/new/
https://reviews.llvm.org/D115291
More information about the libcxx-commits
mailing list