This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug fortran/50981] [4.4/4.5/4.6 Regression] Wrong-code for scalarizing ELEMENTAL call with absent OPTIONAL argument
- From: "dominiq at lps dot ens.fr" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Thu, 26 Jan 2012 16:12:13 +0000
- Subject: [Bug fortran/50981] [4.4/4.5/4.6 Regression] Wrong-code for scalarizing ELEMENTAL call with absent OPTIONAL argument
- Auto-submitted: auto-generated
- References: <bug-50981-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50981
--- Comment #30 from Dominique d'Humieres <dominiq at lps dot ens.fr> 2012-01-26 16:12:13 UTC ---
(In reply to comment #28)
> Created attachment 26468 [details]
> better patch
>
> This one should work.
It does;-)
I have applied the patch on revision 183541 on top of the Paul's patch at
http://gcc.gnu.org/ml/fortran/2012-01/msg00214.html (pr51870) and Tobias' ones
for pr51970 and pr51434 comment #12.
It regtested without regression and all the failures reported in comments #25
and #26 are gone. It passes the full comment #13 test fixed as in comment #22
(I blindly trust that it is the "right thing to do") and it fixes pr51514 and
the test in pr41587 comment #1 (at least part of it: it now prints " 0
0 42" while I'ld expect " 42 42
42"(?); without the patch I get an ICE
pr41587_db.f90:10:0: internal compiler error: in gfc_conv_descriptor_data_get,
at fortran/trans-array.c:147).
The test in comment #23 gives an ICE with/without the patch:
pr50981_4.f90: In function 'MAIN__':
pr50981_4.f90:16:0: internal compiler error: in fold_convert_loc, at
fold-const.c:2016
i.e., the same ICE as for pr51977 (I did not tested the patchlet in comment
#27).
Thanks for the work!