Hi, Patch from Michael Matz (http://gcc.gnu.org/ml/fortran/2005-07/msg00331.html) may partly fixes the multiple decls problems.
I've tested and tuned this patch. It works, small functions can be inlined after DECL_INLINE flags (build_function_decl in trans-decl.c) have been set for them. The only regression is FORTRAN 95 testcase function_modulo_1.f90, it produces a wong result. Canqun Yang Creative Compiler Research Group. National University of Defense Technology, China.