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: [Fortran-Experiments]: patch


Hi Chris,

Christopher D. Rickett wrote:
>> - nested interfaces do not work yet,
>> http://gcc.gnu.org/ml/fortran/2007-02/msg00535.html
> did you apply your proposed patch for bind(c) dummy procedures?
Yes, I applied the big patch.

> if so, my next patch (which i'm holding on to until the one from
> Saturday gets committed) should finish fixing these.
Thanks.


>> - gfortran rejects bind(c,name=""),
>> http://gcc.gnu.org/ml/fortran/2007-02/msg00505.html (b)
> should work with the patch i'm waiting to submit.  now i simply let
> gfortran mangle the symbol as normal if the binding label was "".
This should be enough.

> we could further improve this by adding some sort of character that is
> invalid for C names just to ensure the C programmer can't call it by
> it's mangled name either. 
I don't think that is needed.

> i also issue a warning for private symbols that have been given a
> binding label (this was proposed in one of Tobias' emails and seemed
> like a good idea).
Thanks.

>>
>> - gfortran allows functions to return an array,
>> http://gcc.gnu.org/ml/fortran/2007-02/msg00505.html (c)
> this is fixed in the patch i'm holding.  i also added a check to
> ensure character strings aren't returned, since i hadn't checked for
> that either. apologies for the obvious oversites.
No problem, nobody is perfect and the standard is not written in a way
that one can quickly see what is allowed and what forbidden.

>> - Same error is printed twice,
>> http://gcc.gnu.org/ml/fortran/2007-02/msg00496.html
> this should be also be fixed in the patch i'm holding.  the problem
> was that i had not moved all of the error checking for BIND(C) to the
> resolve stage.  i was still verifying the derived types after matching
> them. however, i now do it during resolution only.
Great!


> hmm, i thought that this should have been fixed with my last patch.
> either way, my current local gfortran reports the following:
Did you put the whole source in a single file or did you split the
modules into different files? If I put everything into a single file, I
get a nice error. However, if I put the first module in a file by its
own, compile it and compile than the file with the second module and the
main file, I don't get an error.

Tobias


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