public inbox for gcc-bugs@sourceware.org help / color / mirror / Atom feed
From: "redi at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org> To: gcc-bugs@gcc.gnu.org Subject: [Bug libstdc++/108619] Compilation error if the construct method of the allocator isn't implemented and the detructor of value_type is private Date: Tue, 31 Jan 2023 21:59:08 +0000 [thread overview] Message-ID: <bug-108619-4-AdJZ7lWlj1@http.gcc.gnu.org/bugzilla/> (raw) In-Reply-To: <bug-108619-4@http.gcc.gnu.org/bugzilla/> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108619 Jonathan Wakely <redi at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Ever confirmed|0 |1 Last reconfirmed| |2023-01-31 --- Comment #9 from Jonathan Wakely <redi at gcc dot gnu.org> --- (In reply to Andrew Pinski from comment #5) > I missed -std=c++20 part before. The rebind fixes the compiliation issue > without -std=c++20 .... Right, but the bug report is about c++20 mode, and the rebind isn't needed in C++20 (because std::allocator<T>::rebind doesn't exist, so the default implementation of rebinding does the right thing for alloc<T>). (In reply to Andrew Pinski from comment #6) > With clang and libc++ we get: > > /opt/compiler-explorer/clang-trunk-20230131/bin/../include/c++/v1/__memory/ > uninitialized_algorithms.h:597:3: error: static assertion failed due to > requirement '__is_cpp17_move_insertable<b::alloc<a>, void>::value': The > specified type does not meet the requirements of Cpp17MoveInsertable > static_assert(__is_cpp17_move_insertable<_Alloc>::value, > ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > > Which I think is the best error message really. libstdc++v3 should add a > similar static assert I think. I think this is a libc++ bug in their __cpp17_move_insertable trait, which just uses is_move_constructible here, which is false because of the private destructor. I agree there's a bug here, but I'm not sure where yet.
next prev parent reply other threads:[~2023-01-31 21:59 UTC|newest] Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top 2023-01-31 20:21 [Bug libstdc++/108619] New: " gccbugzilla at thepirate42 dot org 2023-01-31 20:27 ` [Bug libstdc++/108619] " pinskia at gcc dot gnu.org 2023-01-31 20:30 ` pinskia at gcc dot gnu.org 2023-01-31 21:16 ` gccbugzilla at thepirate42 dot org 2023-01-31 21:19 ` gccbugzilla at thepirate42 dot org 2023-01-31 21:21 ` pinskia at gcc dot gnu.org 2023-01-31 21:22 ` pinskia at gcc dot gnu.org 2023-01-31 21:28 ` gccbugzilla at thepirate42 dot org 2023-01-31 21:38 ` gccbugzilla at thepirate42 dot org 2023-01-31 21:59 ` redi at gcc dot gnu.org [this message] 2023-01-31 22:07 ` redi at gcc dot gnu.org 2023-01-31 22:08 ` redi at gcc dot gnu.org 2024-07-10 22:07 ` redi at gcc dot gnu.org 2024-08-01 21:42 ` redi at gcc dot gnu.org 2024-08-23 12:40 ` cvs-commit at gcc dot gnu.org 2024-08-23 12:47 ` redi at gcc dot gnu.org 2024-09-23 19:24 ` cvs-commit at gcc dot gnu.org
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=bug-108619-4-AdJZ7lWlj1@http.gcc.gnu.org/bugzilla/ \ --to=gcc-bugzilla@gcc.gnu.org \ --cc=gcc-bugs@gcc.gnu.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).