This is the mail archive of the fortran@gcc.gnu.org mailing list for the GNU Fortran 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]

Re: [Patch, fortran] PR78737 - [OOP] linking error with deferred, undefined user-defined derived-type I/O


2016-12-13 10:58 GMT+01:00 Janus Weil <janus@gcc.gnu.org>:
> 2016-12-13 10:42 GMT+01:00 Janus Weil <janus@gcc.gnu.org>:
>>> please find attached a version of your patch that runs all the dtio
>>> testcases successfully.
>>
>> Great, thanks a lot. Your addition of
>> gfc_find_and_cut_at_last_class_ref is just what I was looking for
>> right now ...
>>
>> If you don't mind I'll write a ChangeLog, add the proper tests and
>> commit to trunk. Or do you prefer to take care of it yourself?
>
> Btw, to continue the brainstorming, I think I found a slightly better
> solution for the dtio_13 problem, which even removes the spurious
> error on that test case via a small fix in resolve_transfer. The
> attached patch is what I'd like to commit if you're ok with it.

Finally, here is a complete patch, including testcase and ChangeLog
entries. Ok for trunk?

Cheers,
Janus


2016-12-13  Janus Weil  <janus@gcc.gnu.org>
        Paul Thomas  <pault@gcc.gnu.org>

    PR fortran/78737
    * gfortran.h (gfc_find_typebound_dtio_proc): New prototype.
    * interface.c (gfc_compare_interfaces): Whitespace fix.
    (gfc_find_typebound_dtio_proc): New function.
    (gfc_find_specific_dtio_proc): Use it.
    * resolve.c (resolve_transfer): Improve error recovery.
    * trans-io.c (get_dtio_proc): Implement polymorphic calls to DTIO
    procedures.

2016-12-13  Janus Weil  <janus@gcc.gnu.org>
        Paul Thomas  <pault@gcc.gnu.org>

    PR fortran/78737
    * gfortran.dg/dtio_13.f90: Remove spurious error.
    * gfortran.dg/dtio_19.f90: New test case.

Attachment: pr78737_v3.diff
Description: Text document


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