mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-03-22 03:40:26 +08:00
re PR fortran/39334 (Recusive parameter kind produces segfault)
2009-07-10 Paul Thomas <pault@gcc.gnu.org> PR fortran/39334 * primary.c (match_kind_param): Return MATCH_NO if the symbol has no value. 2009-07-10 Paul Thomas <pault@gcc.gnu.org> PR fortran/39334 * gfortran.dg/recursive_parameter_1.f90: New test. From-SVN: r149456
This commit is contained in:
parent
b9263ae590
commit
1d8e1d5d9f
@ -1,3 +1,9 @@
|
||||
2009-07-10 Paul Thomas <pault@gcc.gnu.org>
|
||||
|
||||
PR fortran/39334
|
||||
* primary.c (match_kind_param): Return MATCH_NO if the symbol
|
||||
has no value.
|
||||
|
||||
2008-07-09 Paul Thomas <pault@gcc.gnu.org>
|
||||
|
||||
PR fortran/40629
|
||||
|
@ -57,6 +57,9 @@ match_kind_param (int *kind)
|
||||
if (sym->attr.flavor != FL_PARAMETER)
|
||||
return MATCH_NO;
|
||||
|
||||
if (sym->value == NULL)
|
||||
return MATCH_NO;
|
||||
|
||||
p = gfc_extract_int (sym->value, kind);
|
||||
if (p != NULL)
|
||||
return MATCH_NO;
|
||||
|
@ -1,3 +1,8 @@
|
||||
2009-07-10 Paul Thomas <pault@gcc.gnu.org>
|
||||
|
||||
PR fortran/39334
|
||||
* gfortran.dg/recursive_parameter_1.f90: New test.
|
||||
|
||||
2009-07-09 Steven G. Kargl <kargl@gcc.gnu.org>
|
||||
|
||||
* gfortran.dg/c_kind_tests_2.f03: clean-up leftover module(s).
|
||||
|
11
gcc/testsuite/gfortran.dg/recursive_parameter_1.f90
Normal file
11
gcc/testsuite/gfortran.dg/recursive_parameter_1.f90
Normal file
@ -0,0 +1,11 @@
|
||||
! { dg-do compile }
|
||||
! Tests the fix for PR39334 in which the recursive parameter declaration
|
||||
! caused a sgfault.
|
||||
!
|
||||
! Reported by James van Buskirk on comp.lang.fortran
|
||||
!
|
||||
program recursive_parameter
|
||||
implicit none
|
||||
integer, parameter :: dp = kind(1.0_dp) ! { dg-error "Missing kind-parameter" }
|
||||
write(*,*) dp ! { dg-error "has no IMPLICIT type" }
|
||||
end program recursive_parameter
|
Loading…
x
Reference in New Issue
Block a user