2017-10-04 Paul Thomas <pault@gcc.gnu.org>
commitbb2fe503bb136db039c159c2f2af46f0ace64298
authorpault <pault@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 4 Oct 2017 10:43:45 +0000 (4 10:43 +0000)
committerpault <pault@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 4 Oct 2017 10:43:45 +0000 (4 10:43 +0000)
tree766b6c1e28ec2bb871c6783225573d614c75b16a
parentf94f4183640e5292c3a91df8e0b03cc6bb4d4675
2017-10-04  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/60458
PR fortran/77296
* resolve.c (resolve_assoc_var): Deferred character type
associate names must not receive an integer conatant length.
* symbol.c (gfc_is_associate_pointer): Deferred character
length functions also require an associate pointer.
* trans-decl.c (gfc_get_symbol_decl): Deferred character
length functions or derived type components require the assoc
name to have variable string length.
* trans-stmt.c (trans_associate_var): Set the string length of
deferred string length associate names. The address expression
is not needed for allocatable, pointer or dummy targets. Change
the comment about defered string length targets.

2017-10-04  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/77296
* gfortran.dg/associate_32.f03 : New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@253400 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/fortran/ChangeLog
gcc/fortran/resolve.c
gcc/fortran/symbol.c
gcc/fortran/trans-decl.c
gcc/fortran/trans-stmt.c
gcc/testsuite/ChangeLog
gcc/testsuite/gfortran.dg/associate_32.f03 [new file with mode: 0644]