This is the mail archive of the
libstdc++@gcc.gnu.org
mailing list for the libstdc++ project.
Re: [Patch] Implement std::experimental::variant
- From: Jonathan Wakely <jwakely dot gcc at gmail dot com>
- To: Tim Shen <timshen at google dot com>
- Cc: Ville Voutilainen <ville dot voutilainen at gmail dot com>, Jonathan Wakely <jwakely at redhat dot com>, "libstdc++" <libstdc++ at gcc dot gnu dot org>, Axel Naumann <Axel dot Naumann at cern dot ch>
- Date: Sat, 6 Aug 2016 01:17:45 +0100
- Subject: Re: [Patch] Implement std::experimental::variant
- Authentication-results: sourceware.org; auth=none
- References: <CAG4ZjNnKxAhg6nNjPFZjoFji50StG9LURa_Wt=OdejLJ=NkSUw@mail.gmail.com> <20160516130235.GX27545@redhat.com> <CAG4ZjNmtU8d82oJzkxBapy8jQf2Y2re5YEjqwVFNp+4OAA3p4w@mail.gmail.com> <20160609075308.GR2629@redhat.com> <CAG4ZjNmpUmbjAYDQfVut+b=xsokJBp3maf3Vn3KZ5A0j4vO=Vg@mail.gmail.com> <CAFk2RUbrb6VJAY0ujbXDPQ0y_p4JWN7HSJBKGn+bWbxBR1Vk8A@mail.gmail.com> <CAFk2RUaeAR5H4x_z_ZNDdEbbV7+n=qC+Xm91_9SVvq3+kMTF1A@mail.gmail.com> <CAG4ZjNn76ArgbX87kwTHZXgWnKSnjQ1fYpN5LLHhsLMpWF2+Nw@mail.gmail.com> <CAFk2RUYgDWYStVgsiaP809LmK7Kk0J6iX1tv9xvTRUr2RXVcYg@mail.gmail.com> <CAG4ZjNkvdCuJMmXzvJ2FejJLAtLyUzKf6=JDRKBM2Sd2va_YFQ@mail.gmail.com> <20160805110808.GY4264@redhat.com> <CAFk2RUZ8joLhRuR1zmz3hrLHxfTyNsL6gkDRWZHHDANJXbc4Kw@mail.gmail.com> <CAG4ZjN=LU1=v71unVpkHqQs9aX4TroGArrkRdq3WRjnE4ad8-Q@mail.gmail.com>
On 5 August 2016 at 18:39, Tim Shen wrote:
>> There are
>> other variant implementations
>> written in C++17 that provide full conformance, so I think our variant
>> should do so too.
>
> Can you share a pointer to that implementation? I have tried to use
> union but still have questions with it.
I think Anthony Williams's implementation uses a union, but I don't
know if it supports the constexpr requirements.
https://bitbucket.org/anthonyw/variant
I think Agustín Bergé has a conforming implementation too, but I don't
know where that is.