re PR fortran/77612 (ICE on invalid character len in contained procedure)
2016-09-16 Steven G. Kargl <kargl@gcc.gnu.org> PR fortran/77612 * decl.c (char_len_param_value): Check parent namespace for seen_implicit_none. 2016-09-16 Steven G. Kargl <kargl@gcc.gnu.org> PR fortran/77612 * gfortran.dg/pr77612.f90: New test. From-SVN: r240191
This commit is contained in:
parent
426042f5f2
commit
8d987deb5b
4 changed files with 29 additions and 3 deletions
|
@ -1,4 +1,11 @@
|
|||
2016-09-16 Steven G. Kargl <kargl@gcc.gnu.org>
|
||||
|
||||
PR fortran/77612
|
||||
* decl.c (char_len_param_value): Check parent namespace for
|
||||
seen_implicit_none.
|
||||
|
||||
2016-09-15 Louis Krupp <louis.krupp@zoho.com>
|
||||
|
||||
PR fortran/69963
|
||||
* parse.c (reject_statement): Clear charlen pointers in implicit
|
||||
character typespecs before those charlen structures are freed.
|
||||
|
|
|
@ -920,9 +920,10 @@ char_len_param_value (gfc_expr **expr, bool *deferred)
|
|||
|
||||
t = gfc_reduce_init_expr (e);
|
||||
|
||||
if (!t && (e->ts.type == BT_UNKNOWN
|
||||
&& e->symtree->n.sym->attr.untyped == 1
|
||||
&& e->symtree->n.sym->ns->seen_implicit_none == 1))
|
||||
if (!t && e->ts.type == BT_UNKNOWN
|
||||
&& e->symtree->n.sym->attr.untyped == 1
|
||||
&& (e->symtree->n.sym->ns->seen_implicit_none == 1
|
||||
|| e->symtree->n.sym->ns->parent->seen_implicit_none == 1))
|
||||
{
|
||||
gfc_free_expr (e);
|
||||
goto syntax;
|
||||
|
|
|
@ -1,3 +1,8 @@
|
|||
2016-09-16 Steven G. Kargl <kargl@gcc.gnu.org>
|
||||
|
||||
PR fortran/77612
|
||||
* gfortran.dg/pr77612.f90: New test.
|
||||
|
||||
2016-09-16 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com>
|
||||
|
||||
* gcc.dg/torture/pr70421.c: Require int32plus.
|
||||
|
|
13
gcc/testsuite/gfortran.dg/pr77612.f90
Normal file
13
gcc/testsuite/gfortran.dg/pr77612.f90
Normal file
|
@ -0,0 +1,13 @@
|
|||
! { dg-do compile }
|
||||
|
||||
program bad_len
|
||||
|
||||
implicit none
|
||||
|
||||
contains
|
||||
|
||||
subroutine sub
|
||||
character(len = ICE) :: line ! { dg-error "INTEGER expression expected" }
|
||||
end subroutine
|
||||
|
||||
end program
|
Loading…
Add table
Reference in a new issue