[Patch, fortran, PR44672, v9] [F08] ALLOCATE with SOURCE and no array-spec

Andre Vehreschild vehre@gmx.de
Fri Jun 5 11:04:00 GMT 2015


Hi all,

attached is the most recent version of the patch. It addresses the standard
violation of allocate(foo, source=[bar(something)]), where foo after the
allocate was a zero-based array instead of a one-based. Furthermore does this
patch fix calling _vptr->_copy () routines, which come without an interface
specification leading to pass all arguments by reference. When copying a
deferred length string this is hazardous, because a __copy_character_* ()
routines third and fourth arguments are passed by value. This is fixed by
simply counting the actual arguments and using pass by value for third and
fourth to _copy routine.

Bootstraps and regtests ok on x86_64-linux-gnu/f21.

Ok for trunk?

- Andre
-- 
Andre Vehreschild * Email: vehre ad gmx dot de 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: pr44672_9.clog
Type: application/octet-stream
Size: 1679 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/fortran/attachments/20150605/35aa3d74/attachment.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: pr44672_9.patch
Type: text/x-patch
Size: 28734 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/fortran/attachments/20150605/35aa3d74/attachment.bin>


More information about the Fortran mailing list