https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78686

kargl at gcc dot gnu.org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |kargl at gcc dot gnu.org

--- Comment #3 from kargl at gcc dot gnu.org ---
(In reply to Gerhard Steinmetz from comment #0)
> With invalid code, down to at least 4.8 :
> 
> 
> $ cat z1.f90
> program p
>    type t
>       character :: c(1) = [t()]
>    end type
> end
> 
> 
> $ gfortran-7-20161204 z1.f90
> f951: internal compiler error: in gfc_apply_init, at fortran/expr.c:4124
> 0x6911be gfc_apply_init(gfc_typespec*, symbol_attribute*, gfc_expr*)
>         ../../gcc/fortran/expr.c:4124
> 0x684d98 build_struct
>         ../../gcc/fortran/decl.c:1942
> 0x684d98 variable_decl
>         ../../gcc/fortran/decl.c:2437
> 0x684d98 gfc_match_data_decl()
>         ../../gcc/fortran/decl.c:4892
> 0x6dca79 match_word_omp_simd
>         ../../gcc/fortran/parse.c:93
> 0x6e002e match_word
>         ../../gcc/fortran/parse.c:377
> 0x6e002e decode_statement
>         ../../gcc/fortran/parse.c:377
> 0x6e1e34 next_free
>         ../../gcc/fortran/parse.c:1180
> 0x6e1e34 next_statement
>         ../../gcc/fortran/parse.c:1413
> 0x6e337a parse_derived
>         ../../gcc/fortran/parse.c:3233
> 0x6e337a parse_spec
>         ../../gcc/fortran/parse.c:3773
> 0x6e5bb3 parse_progunit
>         ../../gcc/fortran/parse.c:5615
> 0x6e71a4 gfc_parse_file()
>         ../../gcc/fortran/parse.c:6124
> 0x72b182 gfc_be_parse_file
>         ../../gcc/fortran/f95-lang.c:202


With up to date trunk (GNU Fortran (GCC) 8.0.0 20171109),
I see

% gfcx -c a.f90
a.f90:3:31:

       character :: c(1) = [t()]
                               1
Error: Derived type 't' at (1) is being used before it is defined

I see the same error for the code in comment #2.  I'll prepare
testcases and commit those later today or tomorrow.

Reply via email to