Почему определение типа функции нельзя использовать для определения функции?

От § 8.3.5.11 ИСО / МЭК 14882: 2011 (E):

Определение типа типа функции может использоваться для объявления функции, но не должно использоваться для определенияне функция

Стандарт продолжает приводить этот пример:

typedef void F();
F fv; // OK: equivalent to void fv();
F fv { } // ill-formed
void fv() { } // OK: definition of fv

Что мотивирует это правило? Кажется, он ограничивает потенциальную выразительную полезность функции typedefs.

Ответы на вопрос(4)

Ваш ответ на вопрос