Рассмотрим
template<typename T> inline void f(T) {} // "inline" can be safely removed.
и
inline void f(auto) {} // Can "inline" also be safely removed?
Согласно стандарту C ++, можно ли безопасно удалить inline в последнем случае?
inline
С [dcl.fct] / 18 :
Сокращенный шаблон функции - это объявление функции, имеющее один или несколько обобщенных c заполнителей типа параметра ([dcl .spe c .auto]). Сокращенный шаблон функции эквивалентен шаблону функции ([temp.fct]), чей список параметров-шаблонов включает в себя один шаблонный параметр изобретенного типа для каждого заполнителя типа шаблона c в объявлении функции, в порядке появления.
Акцент добавлен. Это не оставляет много места для маневра, поскольку inline не является значением по умолчанию.