language: C++ 4.7.2 (gcc-4.7.2)
date: 384 days 18 hours ago
link:
visibility: public
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
 
namespace foo {
    struct Foo {};
    
    template <typename T>
    void func(T t) {
        std::cout << "namespace function\n";
    }
}
 
template <typename T>
void func(T t) {
    std::cout << "global function\n";
}
 
int main() {
    foo::Foo f;
    func(f);
}
 
prog.cpp: In function ‘int main()’:
prog.cpp:19: error: call of overloaded ‘func(foo::Foo&)’ is ambiguous
prog.cpp:13: note: candidates are: void func(T) [with T = foo::Foo]
prog.cpp:7: note:                 void foo::func(T) [with T = foo::Foo]