diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index bcad19f20db..0b3d11755f4 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,8 @@ +2005-06-18 Steven G. Kargl + + * intrinsic.c (gfc_intrinsic_func_interface): Enable errors for generic + functions whose simplification routine return FAILURE. + 2005-06-13 Geoffrey Keating * Make-lang.in (fortran.install-man): Doesn't depend on installdirs. diff --git a/gcc/fortran/intrinsic.c b/gcc/fortran/intrinsic.c index 66cf1902689..4d535287825 100644 --- a/gcc/fortran/intrinsic.c +++ b/gcc/fortran/intrinsic.c @@ -3007,16 +3007,13 @@ got_specific: expr->value.function.isym = specific; gfc_intrinsic_symbol (expr->symtree->n.sym); + gfc_suppress_error = 0; if (do_simplify (specific, expr) == FAILURE) - { - gfc_suppress_error = 0; - return MATCH_ERROR; - } + return MATCH_ERROR; /* TODO: We should probably only allow elemental functions here. */ flag |= (expr->ts.type != BT_INTEGER && expr->ts.type != BT_CHARACTER); - gfc_suppress_error = 0; if (pedantic && gfc_init_expr && flag && gfc_init_expr_extensions (specific)) {