Does an auto return type force a function template’s body to be fully evaluated at instantiation time?
When using friend injection in the body of a function template, the side-effects of processing the body’s code aren’t visible right after instantiating the function.