On Sunday, 19 January 2014 at 15:03:13 UTC, monarch_dodra wrote:
So, my conclusion, "*" might be a workable solution. But simply taking by ref would be cleaner, and make more sense as a whole.
Or a special template constraint path for T*. foo(T)(T t) if (is(T = Q*)) && manyOtherChecks!(Q) foo(T)(T t) if (!is(T = Q*)) && manyOtherChecks!(T) Maybe that will break less code.
