[Patch, Fortran, 66927, v2.1] [6 Regression] ICE in gfc_conf_procedure_call

Andre Vehreschild vehre@gmx.de
Mon Oct 26 10:03:00 GMT 2015


Hi all,

unfortunately did my last patch create a segfault on some 32-bit
system. This happens because in the scalarizer the lower bound of the
deferred length array of the source= expression was taken to be
constant zero instead of taking that information from the array
descriptor. This patch fixes the segfault by taking the lower -- and to
keep it in sync also the upper -- bound from the array descriptor when
doing the array assign in the allocate (). 

Bootstrapped and regtested on x86_64-linux-gnu/f21.

Ok for trunk?

Sorry for the regression.

Regards,
	Andre

On Sun, 25 Oct 2015 13:31:02 +0100
Andre Vehreschild <vehre@gmx.de> wrote:

> Hi Paul, hi all,
> 
> thanks for the review. Submitted as r229294.
> 
> Regards,
> 	Andre
> 
> On Sun, 25 Oct 2015 08:43:24 +0100
> Paul Richard Thomas <paul.richard.thomas@gmail.com> wrote:
> 
> > Dear Andre,
> > 
> > As far as I can see, the problems with PR57117 are specific to RESHAPE
> > and need not affect committing your patch. To my surprise, the
> > combination of your patch and mine for PR67171 fixes PR67044 in that
> > the ICE no longer occurs. I have to get my head around how to write a
> > testcase for it that tests the functionality though!
> > 
> > You can commit this patch to trunk. As I said elsewhere, I will rename
> > the testcase for PR67171.
> > 
> > Many thanks for the patch.
> > 
> > Paul
> > 
> > On 23 October 2015 at 09:44, Paul Richard Thomas
> > <paul.richard.thomas@gmail.com> wrote:
> > > Dear Andre,
> > >
> > > I will wait until you fix the problems that Dominique has pointed out.
> > > However, if by Sunday afternoon (rain forecast!) you haven't found the
> > > time, I will see if I can locate the source of these new problems.
> > >
> > > With best regards
> > >
> > > Paul
> > >
> > > On 7 October 2015 at 19:51, Dominique d'Humières <dominiq@lps.ens.fr> wrote:
> > >> This patch also fixes pr57117 comment 2, the original test and the test in comment 3 now give an ICE
> > >>
> > >> pr57117.f90:82:0:
> > >>
> > >>    allocate(z(9), source=reshape(x, (/ 9 /)))
> > >> 1
> > >> internal compiler error: Segmentation fault: 11
> > >>
> > >> and pr67044.
> > >>
> > >> Thanks,
> > >>
> > >> Dominique
> > >>
> > >
> > >
> > >
> > > --
> > > Outside of a dog, a book is a man's best friend. Inside of a dog it's
> > > too dark to read.
> > >
> > > Groucho Marx
> > 
> > 
> > 
> 
> 


-- 
Andre Vehreschild * Email: vehre ad gmx dot de 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: pr66927_3.clog
Type: application/octet-stream
Size: 389 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/fortran/attachments/20151026/bc50ae12/attachment.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: pr66927_3.patch
Type: text/x-patch
Size: 2416 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/fortran/attachments/20151026/bc50ae12/attachment.bin>


More information about the Fortran mailing list