[PATCH] D119051: Extend the C++03 definition of POD to include defaulted functions
Erich Keane via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Mon Aug 15 06:03:52 PDT 2022
erichkeane added inline comments.
================
Comment at: clang/lib/AST/DeclCXX.cpp:892
+ LangOptions::ClangABI::Ver15)) {
+ // C++03 [class]p4:
+ // A POD-struct is an aggregate class that has [...] no user-defined
----------------
dblaikie wrote:
> erichkeane wrote:
> > Does this language change much if there are constraints on this method? We might need to consider that if we are breaking ABI here.
> Oh, sorry, I should've used more words - but this is intended as an ABI break/fix. It's a place where Clang's ABI implementation is inconsistent with GCC and MSVC - so this is intended to fix/make Clang compatible with those ABIs where we are trying to be compatible with them. (& why we're checking the ClangABI version here - so if you're asking for the old ABI you still get it)
>
> Perhaps I'm misunderstanding your questions/concerns?
Yeah, my concern is whether this behavior is different with a constraint on it. That is, does the eligibility of the constructor matter for this case?
This ctor/copy assign/etc might not pass a constraint check/never be callable.
So the question is whether we need to consider that here.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D119051/new/
https://reviews.llvm.org/D119051
More information about the cfe-commits
mailing list