[Patch, fortran] PR28908 - [4.1/4.2 Regression]: fold_convert fails for Fortran operator
H. J. Lu
hjl@lucon.org
Fri Sep 1 16:15:00 GMT 2006
On Fri, Sep 01, 2006 at 11:07:52AM +0200, THOMAS Paul Richard 169137 wrote:
> :ADDPATCH fortran:
>
> Well, I have finally had to admit defeat! I have wrestled all week
> with derived types in interfaces and have wasted more time than I
> care to think about. The moment that I abandoned having a single,
> one-stop-does-all call in symbol.c and started fixing things up in
> resolve.c, I knew the game was up....
>
> To fix both of the problems in this PR, I have restored the backstop
> association of derived types in trans-types.c. I have retained all
> the improvements to symbol.c(gfc_use_derived) because they greatly
> reduce the number of fixups that trans-types.c has to do. In fact,
> I think that it is only interfaces that require this treatment now.
>
> Ideally, the final association process should be shifted from
> trans-decl.c to resolve.c but I could not immediately identify a
> single point where all the references arrived for checking. The
> PR has attached a kludge that partially addressed the problem of
> interfaces but it still suffered a residual regression(used_types_8).
>
> Another improvement that would be worthwhile and, possibly in the
> long run essential, would be a symtree of derived types in the top
> level namespace, keyed on name and module. I will persist in trying
> to get this right!
>
> The two testcases were provide by HJ Lu and are extracted from
> failing bits of one of the SPEC CPU 2006 tests. They exercise the
> use of derived types in interfaces.
>
> In fact, one good thing to come out of this business is that the
> testing of the association of derived types is now enormously
> enhanced. Thank you to the two Martins and to HJ for bearing with
> me and helping out with this series of regressions.
>
> Regtested on Cygwin_NT/PIV.
>
> I will commit tomorrow morning, upon getting a green light from HJ
> that the SPEC CPU 2006 suite runs once more.
>
Unfortunately, I found another bug. See PR 28908 for the new testcase.
Thanks.
H.J.
More information about the Fortran
mailing list