This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug fortran/66578] [F2008] Invalid free on allocate(...,source=a(:)) in block


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66578

vehre at gcc dot gnu.org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
  Attachment #35806|0                           |1
        is obsolete|                            |

--- Comment #17 from vehre at gcc dot gnu.org ---
Created attachment 35887
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=35887&action=edit
Extended version of Mikael's patch

I have encountered some other issues with the patch for 44672 that are not
fixed by Mikael's patch. Using Mikael's patch as a base I could resolve these
issues:

- when the rank in an assignment was decreased (i.e., the rank of the object(!)
on the rhs was greater then the one needed for the assignment, e.q. selecting a
row from a matrix, testcases are allocate_with_source_7/8), 
- twice indirect element addressing (e.q. using a section of a vector of
indices to address elements in a second array, as in the new testcase
allocate_with_source_9.f08 provided by the patch), and
- fixing char_length_8.

In most cases the issues occurred because the offset was not set correctly when
rebasing to one for the lower bound. 

Please have look whether the things to accomplish can be done easier. This
patch bootstraps and regtests fine x86_64-linux-gnu/f21.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]