機械語レベルの前方参照なら>>64の言う通り、何も難しい事は無いし
ソースレベルの前方参照は、C言語はそもそも不可能だろ、普通forward宣言が必要なのを前方参照とは言わんしな
(C++でクラス内ではまだソースコードに出現してないメンバ変数名を使えたりするようなのがそれ)

>>59 ひとつのコンパイラがプリプロセスから構文解析、意味解析をトークンごとに一気に行ってるからできるわけでパスは増えてないよ
ていうかこれが1パスでないなら1パスって何なんだ