Re: [Patch, Fortran] PR64771 - Fix coarray ICE

2015-01-27 Thread Tobias Burnus
Tobias Burnus wrote: This one compiles just as well, of course. From my side, that patch (using MAX) is fine. Thanks for bearing the bootstrap failure and for the patch. I have now committed it (i.e. Rainer's patch) as Rev. 220182. I have also committed the fixed-up/combined patch to the 4.9

Re: [Patch, Fortran] PR64771 - Fix coarray ICE

2015-01-27 Thread Tobias Burnus
Rainer Orth wrote: > > Why don't you use MAX macro instead of std::max as everywhere else > > in the gcc sources? > > No idea, ask Tobias :-) No real reason - presumably, because I had MAX not in mind and thought of the general move towards standard features. > Anyway, the original patch would mo

Re: [Patch, Fortran] PR64771 - Fix coarray ICE

2015-01-27 Thread Rainer Orth
Jakub Jelinek writes: >> The problem is (as so often) that was included *before* >> config.h. Moving it after the other includes allows interface.c to >> compile without warnings. > > Why don't you use MAX macro instead of std::max as everywhere else > in the gcc sources? No idea, ask Tobias :

Re: [Patch, Fortran] PR64771 - Fix coarray ICE

2015-01-27 Thread Jakub Jelinek
On Tue, Jan 27, 2015 at 03:55:17PM +0100, Rainer Orth wrote: > Steve Kargl writes: > > > On Sat, Jan 24, 2015 at 06:13:04PM +0100, Tobias Burnus wrote: > >>if (s1->as->type == AS_EXPLICIT) > >> - for (i = 0; i < s1->as->rank + s1->as->corank; i++) > >> + for (i = 0; i < s1->as->rank + s

Re: [Patch, Fortran] PR64771 - Fix coarray ICE

2015-01-27 Thread Rainer Orth
Steve Kargl writes: > On Sat, Jan 24, 2015 at 06:13:04PM +0100, Tobias Burnus wrote: >>if (s1->as->type == AS_EXPLICIT) >> -for (i = 0; i < s1->as->rank + s1->as->corank; i++) >> +for (i = 0; i < s1->as->rank + std::max(0, s1->as->corank-1); i++) > > Doesn't this require '#include

Re: [Patch, Fortran] PR64771 - Fix coarray ICE

2015-01-24 Thread Steve Kargl
On Sat, Jan 24, 2015 at 06:13:04PM +0100, Tobias Burnus wrote: >if (s1->as->type == AS_EXPLICIT) > - for (i = 0; i < s1->as->rank + s1->as->corank; i++) > + for (i = 0; i < s1->as->rank + std::max(0, s1->as->corank-1); i++) Doesn't this require '#include '? I suspect that you are d

[Patch, Fortran] PR64771 - Fix coarray ICE

2015-01-24 Thread Tobias Burnus
Build and regtested on x86-64-gnu-linux. OK for the trunk and 4.9? (It's a regression.) Tobias 2015-01-24 Tobias Burnus PR fortran/64771 gcc/fortran/ * interface.c (check_dummy_characteristics): Fix coarray handling. testsuite/ * gfortran.dg/coarray_36.f: New. * gfortran.dg/coarray_37.f9