Commit 8d987deb by Steven G. Kargl

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
parent 426042f5
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> 2016-09-15 Louis Krupp <louis.krupp@zoho.com>
PR fortran/69963 PR fortran/69963
* parse.c (reject_statement): Clear charlen pointers in implicit * parse.c (reject_statement): Clear charlen pointers in implicit
character typespecs before those charlen structures are freed. character typespecs before those charlen structures are freed.
......
...@@ -920,9 +920,10 @@ char_len_param_value (gfc_expr **expr, bool *deferred) ...@@ -920,9 +920,10 @@ char_len_param_value (gfc_expr **expr, bool *deferred)
t = gfc_reduce_init_expr (e); t = gfc_reduce_init_expr (e);
if (!t && (e->ts.type == BT_UNKNOWN if (!t && e->ts.type == BT_UNKNOWN
&& e->symtree->n.sym->attr.untyped == 1 && e->symtree->n.sym->attr.untyped == 1
&& e->symtree->n.sym->ns->seen_implicit_none == 1)) && (e->symtree->n.sym->ns->seen_implicit_none == 1
|| e->symtree->n.sym->ns->parent->seen_implicit_none == 1))
{ {
gfc_free_expr (e); gfc_free_expr (e);
goto syntax; goto syntax;
......
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> 2016-09-16 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com>
* gcc.dg/torture/pr70421.c: Require int32plus. * gcc.dg/torture/pr70421.c: Require int32plus.
......
! { dg-do compile }
program bad_len
implicit none
contains
subroutine sub
character(len = ICE) :: line ! { dg-error "INTEGER expression expected" }
end subroutine
end program
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment