$> cat ice.f90
MODULE stmt
f(x) = x**2        ! invalid
END MODULE

PROGRAM xx
  USE stmt
  print *, f(3)
END PROGRAM

$> gfortran-svn -g -Wall stmt.f90
stmt.f90:7.13:

  print *, f(3)
            1
Error: Type/rank mismatch in argument 'x' at (1)
stmt.f90:7.10:

  print *, f(3)
         1
stmt.f90:0: internal compiler error: Segmentation fault


Backtrace:
Program received signal SIGSEGV, Segmentation fault.
error_string (p=0x0) at ../../../gcc/gcc/fortran/error.c:110
110       while (*p)
(gdb) bt
#0  error_string (p=0x0) at ../../../gcc/gcc/fortran/error.c:110
#1  0x08063909 in error_print (type=0x8722662 "Error:", format0=0x872f870
"Function '%s' at %L cannot call itself, as it is not RECURSIVE",
    argp=<value optimized out>) at ../../../gcc/gcc/fortran/error.c:565
#2  0x08063ed4 in gfc_error (nocmsgid=0x872f870 "Function '%s' at %L cannot
call itself, as it is not RECURSIVE") at ../../../gcc/gcc/fortran/error.c:759
#3  0x0809be96 in gfc_resolve_expr (e=0x8934a88) at
../../../gcc/gcc/fortran/resolve.c:2074
#4  0x0809f326 in resolve_code (code=0x8934af8, ns=0x8934200) at
../../../gcc/gcc/fortran/resolve.c:5711
#5  0x080a290a in gfc_resolve_blocks (b=0x8934b38, ns=0x8934200) at
../../../gcc/gcc/fortran/resolve.c:5644
#6  0x0809f30c in resolve_code (code=0x8934bb8, ns=0x8934200) at
../../../gcc/gcc/fortran/resolve.c:5703
#7  0x080a0e1c in resolve_codes (ns=0x8934200) at
../../../gcc/gcc/fortran/resolve.c:8399
#8  0x080a0e53 in gfc_resolve (ns=0x8934200) at
../../../gcc/gcc/fortran/resolve.c:8418
#9  0x080932d0 in gfc_parse_file () at ../../../gcc/gcc/fortran/parse.c:3263
#10 0x080b879d in gfc_be_parse_file (set_yydebug=0) at
../../../gcc/gcc/fortran/f95-lang.c:301
#11 0x0832a5b8 in toplev_main (argc=2, argv=0xbff8ad44) at
../../../gcc/gcc/toplev.c:1051
#12 0x080ffdcf in main (argc=1869771333, argv=0x46203a72) at
../../../gcc/gcc/main.c:35


$> gfortran-svn -v
gcc version 4.3.0 20070710 (experimental)


-- 
           Summary: ICE on statement function in specfication part of module
           Product: gcc
           Version: 4.3.0
            Status: UNCONFIRMED
          Keywords: ice-on-invalid-code
          Severity: normal
          Priority: P3
         Component: fortran
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: dfranke at gcc dot gnu dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32724

Reply via email to