My question is about a compiler for any language that supports circular function dependencies, it doesn't matter which language. The language is compiled to machine code/byte code, the compiler doesn't piggyback on a compiler for some other language.
What are the usual ways of dealing with circular dependencies?