c.h 232 Bytes Raw Blame History Permalink 1 2 3 4 5 6 namespace N { template<typename T> struct A { friend int f(A); }; } // It would seem like this variable should be called 'c'. // But that makes the original problem disappear... int e = f(N::A<int>()); #include "a.h" #include "b.h"