re PR fortran/87734 (ICE in is_illegal_recursion check for character len= parameter)

2019-03-10  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/87734
	* symbol.c (gfc_add_procedure): Only throw an error if the
	procedure has not been declared either PUBLIC or PRIVATE.

2019-03-10  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/87734
	* gfortran.dg/public_private_module_10.f90: New test.

From-SVN: r269547
This commit is contained in:
Thomas Koenig 2019-03-10 09:34:46 +00:00
parent c02a57a0bb
commit 2263c69edc
4 changed files with 29 additions and 1 deletions

View file

@ -1,3 +1,9 @@
2019-03-10 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/87734
* symbol.c (gfc_add_procedure): Only throw an error if the
procedure has not been declared either PUBLIC or PRIVATE.
2019-03-09 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/71544

View file

@ -1805,7 +1805,8 @@ gfc_add_procedure (symbol_attribute *attr, procedure_type t,
if (where == NULL)
where = &gfc_current_locus;
if (attr->proc != PROC_UNKNOWN && !attr->module_procedure)
if (attr->proc != PROC_UNKNOWN && !attr->module_procedure
&& attr->access == ACCESS_UNKNOWN)
{
if (attr->proc == PROC_ST_FUNCTION && t == PROC_INTERNAL
&& !gfc_notification_std (GFC_STD_F2008))

View file

@ -1,3 +1,8 @@
2019-03-10 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/87734
* gfortran.dg/public_private_module_10.f90: New test.
2019-03-09 John David Anglin <dave.anglin@bell.net>
PR c++/70349

View file

@ -0,0 +1,16 @@
! PR 87734
module m_vstring
implicit none
public :: vstring_length
contains
subroutine vstring_cast()
character ( len = vstring_length() ) :: char_string
end subroutine
pure integer function vstring_length ()
end function
end module