[Patch, Fortran] PR37504 Fix special case of PROTECTED pointer assignment

Tobias Burnus burnus@net-b.de
Sun Sep 14 01:00:00 GMT 2008


Hi all,

the attached patch fixes

  some_pointer => protected_pointer

which is valid. (Protected pointers' associations may not be changed,
but their target's value may.) Before gfortran (and sunf95) rejected
it. See PR and c.l.f for details.

As I saw that the error message looks strange, I debugged it but I have
not found yet a working patch and thus deferred it to PR37513.
While debugging I found out that the checks in match.c can never be
reached as the  match("%v =>") fails earlier. (In match_variable
is the protected pointer check.) I thus decided to clean up the code
by removing these checks.

Build and currently regtesting on x86-64-linux.
OK for the trunk if regtesting suceeds?
Shall I also apply the expr.c part of the patch to 4.3?

Tobias
-------------- next part --------------
A non-text attachment was scrubbed...
Name: protected.diff
Type: text/x-patch
Size: 2889 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20080914/35daeb70/attachment.bin>


More information about the Gcc-patches mailing list