Допустимы ли спецификаторы noexcept в функции typedefs?
как в:
typedef void (*fptr)() noexcept;
Интуитивно понятно, что никакие кроме спецификаторов, похоже, не имеют смысла, поскольку они позволили бы некоторые оптимизации на стороне вызывающего.
Я получил смешанный ответ от gcc 4.6.1.
typedef void (*fptr)() noexcept;
результат:
ошибка: 'fptr' объявлен со спецификацией исключения
но:
template<void (*FPtr)() noexcept>
struct A{};
компилируется без предупреждения.