Jonathan M Davis Wrote: > On Friday, November 19, 2010 11:37:16 Sean Kelly wrote: > > Jonathan M Davis Wrote: > > > In particular, needing to pass LineInfo() to assertExcThrown!() to know > > > the file and line number was disliked (though it was by far the best > > > solution that I'd been able to come up with). > > > > Not sure if this helps, but if you default-initialize template function > > parameters with __LINE__ and __FILE__ they get the line and file of where > > the template was instantiated. > > Yes. The problem was that the function was a _variadic_ template. So, you > couldn't have default arguments.
This should work: void func(string x = __FILE__, T...)(T args); D allows defaulted template arguments to occur before non-defaulted ones.