プロトタイプ宣言を関数スコープの内部に書くのは邪道ですか?

foo1.c:
int foo1() {
return 1;
}

foo2.c:
int foo2() {
int foo1();
return foo1();
}

この二つのファイルはコンパイルされ、リンクされるます。