From b8a0d3cfd704fe84371ea9cb149ff58496383fc9 Mon Sep 17 00:00:00 2001 From: Tobias Burnus Date: Wed, 1 Aug 2007 19:55:24 +0200 Subject: re PR fortran/32936 (ALLOCATE: "STAT expression ... must be a variable" - but it is one) 2007-08-01 Tobias Burnus PR fortran/32936 * match.c (gfc_match_allocate): Better check that STAT is a variable. * check.c (gfc_check_allocated): Reorder checks to improve error message. 2007-08-01 Tobias Burnus PR fortran/32936 * gfortran.dg/allocate_stat.f90: New. From-SVN: r127135 --- gcc/fortran/check.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'gcc/fortran/check.c') diff --git a/gcc/fortran/check.c b/gcc/fortran/check.c index d111d0f..b615f73 100644 --- a/gcc/fortran/check.c +++ b/gcc/fortran/check.c @@ -488,9 +488,6 @@ gfc_check_allocated (gfc_expr *array) if (variable_check (array, 0) == FAILURE) return FAILURE; - if (array_check (array, 0) == FAILURE) - return FAILURE; - attr = gfc_variable_attr (array, NULL); if (!attr.allocatable) { @@ -500,6 +497,9 @@ gfc_check_allocated (gfc_expr *array) return FAILURE; } + if (array_check (array, 0) == FAILURE) + return FAILURE; + return SUCCESS; } -- cgit v1.1