Thanks for the report Damian! And sorry for the breakage.
Fixed with the following obvious patch (committed as Rev. 193429) after an all-language bootstrap/regtesting
Tobias
Index: gcc/fortran/ChangeLog =================================================================== --- gcc/fortran/ChangeLog (Revision 193427) +++ gcc/fortran/ChangeLog (Arbeitskopie) @@ -1,3 +1,9 @@ +2012-11-12 Tobias Burnus <bur...@net-b.de> + + PR fortran/55272 + * module.c (mio_array_spec): Correctly handle coarray + scalars. + 2012-11-07 Tobias Schlüter <t...@gcc.gnu.org> PR fortran/51727 Index: gcc/fortran/module.c =================================================================== --- gcc/fortran/module.c (Revision 193427) +++ gcc/fortran/module.c (Arbeitskopie) @@ -2395,7 +2395,7 @@ mio_array_spec (gfc_array_spec **asp) if (iomode == IO_INPUT && as->corank) as->cotype = (as->type == AS_DEFERRED) ? AS_DEFERRED : AS_EXPLICIT; - if (as->rank > 0) + if (as->rank + as->corank > 0) for (i = 0; i < as->rank + as->corank; i++) { mio_expr (&as->lower[i]); Index: gcc/testsuite/ChangeLog =================================================================== --- gcc/testsuite/ChangeLog (Revision 193427) +++ gcc/testsuite/ChangeLog (Arbeitskopie) @@ -1,3 +1,9 @@ +2012-11-12 Tobias Burnus <bur...@net-b.de> + + PR fortran/55272 + * gfortran.dg/coarray_29_1.f90: New. + * gfortran.dg/coarray_29_2.f90: New. + 2012-11-12 Bin Cheng <bin.ch...@arm.com> * gcc.dg/hoist-register-pressure-3.c: New test. Index: gcc/testsuite/gfortran.dg/coarray_29_1.f90 =================================================================== --- gcc/testsuite/gfortran.dg/coarray_29_1.f90 (Revision 0) +++ gcc/testsuite/gfortran.dg/coarray_29_1.f90 (Arbeitskopie) @@ -0,0 +1,16 @@ +! { dg-do compile } +! { dg-options "-fcoarray=single" } + +! To be used by coarray_29_2.f90 +! PR fortran/55272 + +module co_sum_module + implicit none +contains + subroutine co_sum(scalar) + integer scalar[*] + end subroutine +end module + +! DO NOT CLEAN UP THE MODULE FILE - coarray_29_2.f90 does it. +! { dg-final { keep-modules "" } } Index: gcc/testsuite/gfortran.dg/coarray_29_2.f90 =================================================================== --- gcc/testsuite/gfortran.dg/coarray_29_2.f90 (Revision 0) +++ gcc/testsuite/gfortran.dg/coarray_29_2.f90 (Arbeitskopie) @@ -0,0 +1,18 @@ +! { dg-compile } +! { dg-options "-fcoarray=single" } + +! Requires that coarray_29.f90 has been compiled before +! and that, thus, co_sum_module is available + +! PR fortran/55272 +! +! Contributed by Damian Rouson + +program main + use co_sum_module + implicit none + integer score[*] + call co_sum(score) +end program + +! { dg-final { cleanup-modules "co_sum_module" } }