On 07/02/17 23:29 +0200, Ville Voutilainen wrote:
On 7 February 2017 at 22:00, Ville Voutilainen
<ville.voutilai...@gmail.com> wrote:
Currently, clang rejects all attempts to visit a libstdc++ variant:
https://godbolt.org/g/kSmBTg
While gcc doesn't reject such code, that seems like an access checking
bug. This patch makes the offending _M_u member accessible for the rest
of the code.
Hmh. There's already a friend declaration for the functions that
supposedly need it. clang doesn't
seem to grok that friend declaration. gcc requires that friend
declaration, so perhaps the bug
is indeed in how clang handles friend templates.
Definitely a clang bug, see
http://melpon.org/wandbox/permlink/PkbNSpvjPrLh8rov
If we remove the nested namespace we see that the friend declaration
is declaring a second, unrelated function, and so we get an ambiguity:
http://melpon.org/wandbox/permlink/wvmzgAzpLp5pOf86