Posted a pull. Walter, please merge it. https://github.com/D-Programming-Language/dmd/pull/709
2012/2/11 Martin Nowak <[email protected]>: > While this will solve the current problem, the following code will remain > broken. > The root cause is contradicting preferences for variadic templates > in deduceFunctionTemplateMatch and leastAsSpecialized. > > void foo(V)(in V v) // A > { > } > > void foo(Args...)(auto ref const Args args) // B > { > foo(cast(const(int))args[0]); > } > > void main() > { > foo(10); > } What is "remain broken"? With my pull, foo(10) calls non variadic version (A) as expected. Kenji Hara _______________________________________________ dmd-beta mailing list [email protected] http://lists.puremagic.com/mailman/listinfo/dmd-beta
