Fixes fortran/PR35154, fortran/PR23057. Modified from earlier submission based on comments received; sorry for any repetition. It consists of three parts, two already approved, one new. They are grouped at FX Coudert's request; see http://gcc.gnu.org/ml/gcc-patches/2008-02/msg01011.html Component parts are: 1) to fortran/trans-common.c to emit .stabs debug information in the proper scope for COMMON block variables by linking them to the function scope rather than the global scope. This is approved; see above link. 2) to dbxout.c and the testsuite to change how .stabs debug information is emitted for COMMON block variables. This was submitted and approved in Aug. 2004 but never committed. History is here: (Approval): http://gcc.gnu.org/ml/gcc-patches/2004-08/msg02475.html (Submission): http://gcc.gnu.org/ml/gcc-patches/2004-06/msg02096.html Now modified based on comments received. 3) to dwarf2out.c and the testsuite to change the way DWARF-2 debug information is emitted for COMMON block variables in an analogous way as .stabs, using DW_TAG_common_block. This is new. Now modified based on comments received. New testsuite component updated to GCC3 license. Bootstraps gcc, g++, objc and gfortran on powerpc-apple-darwin8.8.0, i386-apple-darwin8.10.1, sparc64-unknown-freebsd6.0. There are no testsuite regressions against this patch for gfortran, gcc, objc or g++. Verified gdb functionality on i386-apple-darwin8.10.1 (-gstabs), powerpc-apple-darwin8.8.0 (-gstabs) and sparc64-unknown-freebsd6.0 (-gstabs and -gdwarf-2). OK to commit to trunk? George Helffrich