Поскольку имена функций являются псевдонимами для указателей функций на те функции, которые сами являются значениями, очень похожими на целые числа. Это семантически очень похоже на
#include <stdio.h>
int main(void) {
42;
}
Это действительно, но бессмысленно.