diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 621879b5b1b3..611f6d982b93 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,8 @@ +2010-07-05 Steven G. Kargl + + fortran/44797 + * fortran/io.c (resolve_tag): Check EXIST tag is a default logical. + 2010-07-05 Paul Thomas PR fortran/44596 diff --git a/gcc/fortran/io.c b/gcc/fortran/io.c index f9a6d7b12404..afbde0210b46 100644 --- a/gcc/fortran/io.c +++ b/gcc/fortran/io.c @@ -1497,6 +1497,14 @@ resolve_tag (const io_tag *tag, gfc_expr *e) return FAILURE; } + if (tag == &tag_exist && e->ts.kind != gfc_default_logical_kind) + { + if (gfc_notify_std (GFC_STD_F2008, "Fortran 2008: Nondefault LOGICAL " + "in %s tag at %L", tag->name, &e->where) + == FAILURE) + return FAILURE; + } + if (tag == &tag_convert) { if (gfc_notify_std (GFC_STD_GNU, "Extension: CONVERT tag at %L",