what's the point of function template declarations if they can't be defined?
Timothee Cour
thelastmammoth at gmail.com
Wed Feb 7 21:39:55 UTC 2018
```
void fun_bad3(T)(T a); // declaration [1]
void fun_bad3(T)(T a){}; // definition [2]
void test(){
fun_bad3(1);
}
```
Error: test_all.fun_bad3 called with argument types (int) matches both:
main.d(11): test_all.fun_bad3!int.fun_bad3(int a)
and:
main.d(12): test_all.fun_bad3!int.fun_bad3(int a)
should [1] be allowed? compler doens't allow defining it afterwards in
[2] (unlike function definitions, and, well, modulo this regression
https://issues.dlang.org/show_bug.cgi?id=18393)
More information about the Digitalmars-d-learn
mailing list