Message ID | CAKwh3qiOL8dRxew0sQ9sV=zmGt4DRYzoZFZ0vrZiQCo4rnjRVg@mail.gmail.com |
---|---|
State | New |
Headers | show |
On Fri, Dec 02, 2016 at 02:37:24PM +0100, Janus Weil wrote: > > the attached patch fixes the PR in the subject line by introducing a > new check to reject invalid code. It's a slight update of an old patch > that I posted in the PR quite some time ago, using somewhat tighter > checking to avoid side effects on the testsuite. > > Regtests cleanly on x86_64-linux-gnu. Ok for trunk? > OK
2016-12-03 18:03 GMT+01:00 Steve Kargl <sgk@troutmask.apl.washington.edu>: > On Fri, Dec 02, 2016 at 02:37:24PM +0100, Janus Weil wrote: >> >> the attached patch fixes the PR in the subject line by introducing a >> new check to reject invalid code. It's a slight update of an old patch >> that I posted in the PR quite some time ago, using somewhat tighter >> checking to avoid side effects on the testsuite. >> >> Regtests cleanly on x86_64-linux-gnu. Ok for trunk? >> > > OK Thanks, committed as r243224. Cheers, Janus
Index: gcc/fortran/primary.c =================================================================== --- gcc/fortran/primary.c (revision 243176) +++ gcc/fortran/primary.c (working copy) @@ -2222,7 +2222,15 @@ check_substring: } } - /* F2008, C727. */ + /* F08:C611. */ + if (primary->ts.type == BT_DERIVED && primary->ref + && primary->ts.u.derived && primary->ts.u.derived->attr.abstract) + { + gfc_error ("Nonpolymorphic reference to abstract type at %C"); + return MATCH_ERROR; + } + + /* F08:C727. */ if (primary->expr_type == EXPR_PPC && gfc_is_coindexed (primary)) { gfc_error ("Coindexed procedure-pointer component at %C");