[PATCH] D135238: [clang] adds copy-constructible type-trait builtins
Christopher Di Bella via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Thu Oct 6 10:14:43 PDT 2022
cjdb added inline comments.
================
Comment at: clang/include/clang/Basic/TokenKinds.def:528
+TYPE_TRAIT_1(__is_nothrow_copy_constructible, IsNothrowCopyConstructible, KEYCXX)
+TYPE_TRAIT_1(__is_trivially_copy_constructible, IsTriviallyCopyConstructible, KEYCXX)
TYPE_TRAIT_2(__reference_binds_to_temporary, ReferenceBindsToTemporary, KEYCXX)
----------------
erichkeane wrote:
> royjacobson wrote:
> > erichkeane wrote:
> > > cjdb wrote:
> > > > erichkeane wrote:
> > > > > So this one is a whole 'thing'. The Clang definition of 'trivially copy constructible' is a few DRs behind. We should probably discuss this with libcxx to make sure use of this wouldn't be broken.
> > > > I'd prefer to get those DRs in before finalising D135238 and subsequent ones. Do you know the DR numbers I should be looking at, or should I just poke npaperbot?
> > > Not off the top of my head, Aaron and I both poked at it at one point trying to get trivially constructible right at one point, but I think we both gave up due to the ABI/versioning concerns.
> > Maybe DR1734? Although it's about the trivially copyable trait, not trivially copy constructible.
> >
> Yeah, I think that was the DR, that number sounds familiar.
The `__is_trivially_*` traits were, in part, what inspired the Great Split of D116208. I could remove them for now and revisit once I rip my hair out over these DRs, if that would substantially improve the chances of these commits landing (other commentary notwithstanding).
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D135238/new/
https://reviews.llvm.org/D135238
More information about the cfe-commits
mailing list