diff options
author | Janus Weil <janus@gcc.gnu.org> | 2016-12-03 19:37:57 +0100 |
---|---|---|
committer | Janus Weil <janus@gcc.gnu.org> | 2016-12-03 19:37:57 +0100 |
commit | 20fee4a901c0cf097df1f1ba00e226f1eb8e973c (patch) | |
tree | 014274d5a630a611d4c4797b400723bc6b25a9b0 /gcc/fortran/primary.c | |
parent | 54b84aa9456004ceee2bceb813843525ee11bd7d (diff) | |
download | gcc-20fee4a901c0cf097df1f1ba00e226f1eb8e973c.zip gcc-20fee4a901c0cf097df1f1ba00e226f1eb8e973c.tar.gz gcc-20fee4a901c0cf097df1f1ba00e226f1eb8e973c.tar.bz2 |
re PR fortran/42188 ([OOP] F03:C612. The leftmost part-name shall be the name of a data object.)
2016-12-03 Janus Weil <janus@gcc.gnu.org>
PR fortran/42188
* primary.c (gfc_match_rvalue): Add a new check that gives better error
messages.
2016-12-03 Janus Weil <janus@gcc.gnu.org>
PR fortran/42188
* gfortran.dg/derived_result_2.f90.f90: New test case.
From-SVN: r243223
Diffstat (limited to 'gcc/fortran/primary.c')
-rw-r--r-- | gcc/fortran/primary.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/gcc/fortran/primary.c b/gcc/fortran/primary.c index eb2d780..2cdc9a4 100644 --- a/gcc/fortran/primary.c +++ b/gcc/fortran/primary.c @@ -3298,6 +3298,15 @@ gfc_match_rvalue (gfc_expr **result) if (sym->result == NULL) sym->result = sym; + gfc_gobble_whitespace (); + /* F08:C612. */ + if (gfc_peek_ascii_char() == '%') + { + gfc_error ("The leftmost part-ref in a data-ref can not be a " + "function reference at %C"); + m = MATCH_ERROR; + } + m = MATCH_YES; break; |