[4.5, Patch, Fortran] PR 36704: Procedure pointer as function result
Janus Weil
jaydub66@googlemail.com
Tue Jan 20 00:57:00 GMT 2009
Getting back to my patch for procptr return values ...
> However there is still one variant of this which is not
> working yet (see commented out line in the test case). Uncommenting
> this line results in:
>
> proc_ptr_13.f90: In function 'l':
> proc_ptr_13.f90:157: error: type mismatch in comparison expression
> logical(kind=4)
> integer(kind=4) (*<T39d>) (void)
> integer(kind=4)
> if (D.1645 != 11) goto <D.1646>; else goto <D.1647>;
>
> proc_ptr_13.f90:157: internal compiler error: verify_gimple failed
>
> I haven't managed yet to fix this without breaking something else.
> Seemingly something goes wrong somewhere in trans-*.c. I'm always
> having some trouble with the trans-* stuff, but I'll keep trying.
I have now finally solved this problem. Updated patch is attached.
All the examples in proc_ptr_14.f90 are working now. Only the
construct in proc_ptr_15.f90 still gives me headaches. Will try to
sort that out soon.
Cheers,
Janus
-------------- next part --------------
A non-text attachment was scrubbed...
Name: pr36704_2.diff
Type: text/x-patch
Size: 13893 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/fortran/attachments/20090120/03ea77e0/attachment.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: proc_ptr_14.f90
Type: application/octet-stream
Size: 2578 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/fortran/attachments/20090120/03ea77e0/attachment.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: proc_ptr_15.f90
Type: application/octet-stream
Size: 244 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/fortran/attachments/20090120/03ea77e0/attachment-0001.obj>
More information about the Fortran
mailing list