http://llvm.org/bugs/show_bug.cgi?id=16449
Richard Smith <[email protected]> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED CC| |[email protected] Resolution|--- |INVALID --- Comment #1 from Richard Smith <[email protected]> --- Templates seem to be a red herring here. Clang accepts this too: class Base { private: friend void foo(); void bar(); }; class Derived : public Base {}; void foo() { Derived().bar(); } And indeed this all appears to be correct. Per [class.access.spec]p5, the member 'bar' is accessible within 'foo' when named in class 'Derived', because there exists a base class 'Base' of 'Derived' that is accessible within 'foo', and 'bar' is accessible within 'foo' when named in class 'Base'. -- You are receiving this mail because: You are on the CC list for the bug.
_______________________________________________ LLVMbugs mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/llvmbugs
