public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug fortran/66035] New: [5.1 Regression] gfortran ICE segfault
@ 2015-05-06 11:21 Melven.Roehrig-Zoellner at DLR dot de
  2015-05-06 11:24 ` [Bug fortran/66035] " Melven.Roehrig-Zoellner at DLR dot de
                   ` (6 more replies)
  0 siblings, 7 replies; 8+ messages in thread
From: Melven.Roehrig-Zoellner at DLR dot de @ 2015-05-06 11:21 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66035

            Bug ID: 66035
           Summary: [5.1 Regression] gfortran ICE segfault
           Product: gcc
           Version: 5.1.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: fortran
          Assignee: unassigned at gcc dot gnu.org
          Reporter: Melven.Roehrig-Zoellner at DLR dot de
  Target Milestone: ---

Created attachment 35474
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=35474&action=edit
Failing pFUnit framework version from http://sourceforge.net/projects/pfunit/

When trying to compile the Fortran unit test framework pFUnit with gfortran
5.1.0 I obtain an internal compiler error - it just works fine with gfortran
4.9.2.

Steps to reproduce in a Linux shell:
Unpack the attached version of pFUnit (or checkout rev. efa55c3c of
http://git.code.sf.net/p/pfunit/code)
> mkdir build_gcc5.1.0 && cd build_gcc5.1.0
> cmake ..
> make
Output:
[...]
Building Fortran object source/CMakeFiles/pfunit.dir/RobustRunner.F90.o
cd /home_local/zoel_ml/pFUnit_tests/pfunit-code/build_gcc5.1/source &&
/tools/modulesystem/tools/gcc/gcc-5.1.0/install/sled11.x86_64.gcc-4.3.4.release/bin/gfortran
 -DBUILD_ROBUST -DGNU -g -O0 -fbounds-check -J../mod
-I/home_local/zoel_ml/pFUnit_tests/pfunit-code/build_gcc5.1/mod
-I/home_local/zoel_ml/pFUnit_tests/pfunit-code/build_gcc5.1/source    -c
/home_local/zoel_ml/pFUnit_tests/pfunit-code/source/RobustRunner.F90 -o
CMakeFiles/pfunit.dir/RobustRunner.F90.o
/home_local/zoel_ml/pFUnit_tests/pfunit-code/source/RobustRunner.F90:149:0:

          testCases = [TestCaseReference(aTest)]
 1
internal compiler error: Speicherzugriffsfehler
0xa818bf crash_signal
        /tools/modulesystem/tools/gcc/gcc-5.1.0/src/gcc/toplev.c:383
0x85e5b9 fold_convert_loc(unsigned int, tree_node*, tree_node*)
        /tools/modulesystem/tools/gcc/gcc-5.1.0/src/gcc/fold-const.c:2204
0x6fe3e3 gfc_trans_subcomponent_assign
       
/tools/modulesystem/tools/gcc/gcc-5.1.0/src/gcc/fortran/trans-expr.c:6907
0x6fe18b gfc_trans_structure_assign
       
/tools/modulesystem/tools/gcc/gcc-5.1.0/src/gcc/fortran/trans-expr.c:7036
0x6ff6d4 gfc_conv_structure(gfc_se*, gfc_expr*, int)
       
/tools/modulesystem/tools/gcc/gcc-5.1.0/src/gcc/fortran/trans-expr.c:7065
0x6d1ec7 gfc_trans_array_ctor_element
       
/tools/modulesystem/tools/gcc/gcc-5.1.0/src/gcc/fortran/trans-array.c:1389
0x6e119a gfc_trans_array_constructor_value
       
/tools/modulesystem/tools/gcc/gcc-5.1.0/src/gcc/fortran/trans-array.c:1634
0x6dfccb trans_array_constructor
       
/tools/modulesystem/tools/gcc/gcc-5.1.0/src/gcc/fortran/trans-array.c:2339
0x6dfccb gfc_add_loop_ss_code
       
/tools/modulesystem/tools/gcc/gcc-5.1.0/src/gcc/fortran/trans-array.c:2580
0x6e04f5 gfc_conv_loop_setup(gfc_loopinfo*, locus*)
       
/tools/modulesystem/tools/gcc/gcc-5.1.0/src/gcc/fortran/trans-array.c:4750
0x7005f0 gfc_trans_assignment_1
       
/tools/modulesystem/tools/gcc/gcc-5.1.0/src/gcc/fortran/trans-expr.c:8914
0x6cdc05 trans_code
        /tools/modulesystem/tools/gcc/gcc-5.1.0/src/gcc/fortran/trans.c:1665
0x72a88c gfc_trans_block_construct(gfc_code*)
       
/tools/modulesystem/tools/gcc/gcc-5.1.0/src/gcc/fortran/trans-stmt.c:1571
0x6cd9f7 trans_code
        /tools/modulesystem/tools/gcc/gcc-5.1.0/src/gcc/fortran/trans.c:1770
0x724163 gfc_trans_if_1
       
/tools/modulesystem/tools/gcc/gcc-5.1.0/src/gcc/fortran/trans-stmt.c:1115
0x724174 gfc_trans_if_1
       
/tools/modulesystem/tools/gcc/gcc-5.1.0/src/gcc/fortran/trans-stmt.c:1119
0x72a49a gfc_trans_if(gfc_code*)
       
/tools/modulesystem/tools/gcc/gcc-5.1.0/src/gcc/fortran/trans-stmt.c:1146
0x6cda67 trans_code
        /tools/modulesystem/tools/gcc/gcc-5.1.0/src/gcc/fortran/trans.c:1762
0x72c275 gfc_trans_integer_select
       
/tools/modulesystem/tools/gcc/gcc-5.1.0/src/gcc/fortran/trans-stmt.c:2221
0x72c275 gfc_trans_select(gfc_code*)
       
/tools/modulesystem/tools/gcc/gcc-5.1.0/src/gcc/fortran/trans-stmt.c:2715



System information:
self-build gcc 5.1.0
cmake: 2.8.12.1
OS: SUSE Linux Enterprise Desktop 11 service pack 2
libc: 2.11.3 (20110527)
native gcc: gcc (SUSE Linux) 4.3.4 [gcc-4_3-branch revision 152973]
kernel: Linux 3.0.13-0.27-default x86_64 GNU/Linux


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Bug fortran/66035] [5.1 Regression] gfortran ICE segfault
  2015-05-06 11:21 [Bug fortran/66035] New: [5.1 Regression] gfortran ICE segfault Melven.Roehrig-Zoellner at DLR dot de
@ 2015-05-06 11:24 ` Melven.Roehrig-Zoellner at DLR dot de
  2015-05-06 13:23 ` [Bug fortran/66035] [5/6 " dominiq at lps dot ens.fr
                   ` (5 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: Melven.Roehrig-Zoellner at DLR dot de @ 2015-05-06 11:24 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66035

--- Comment #1 from Melven.Roehrig-Zoellner at DLR dot de ---
Created attachment 35475
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=35475&action=edit
Full build log with failure


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Bug fortran/66035] [5/6 Regression] gfortran ICE segfault
  2015-05-06 11:21 [Bug fortran/66035] New: [5.1 Regression] gfortran ICE segfault Melven.Roehrig-Zoellner at DLR dot de
  2015-05-06 11:24 ` [Bug fortran/66035] " Melven.Roehrig-Zoellner at DLR dot de
@ 2015-05-06 13:23 ` dominiq at lps dot ens.fr
  2015-05-06 14:38 ` vehre at gcc dot gnu.org
                   ` (4 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: dominiq at lps dot ens.fr @ 2015-05-06 13:23 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66035

Dominique d'Humieres <dominiq at lps dot ens.fr> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2015-05-06
                 CC|                            |pault at gcc dot gnu.org,
                   |                            |vehre at gcc dot gnu.org
            Summary|[5.1 Regression] gfortran   |[5/6 Regression] gfortran
                   |ICE segfault                |ICE segfault
     Ever confirmed|0                           |1

--- Comment #2 from Dominique d'Humieres <dominiq at lps dot ens.fr> ---
The make completes without error with r219763 (2015-01-16). I get the ICE with
r219823 (2015-01-18), likely revision r219801 (pr55932, pr60357, and pr61275).
The ICE is still present on trunk (6.0 r222768).

I'll try to reduce later today if nobody beats me.


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Bug fortran/66035] [5/6 Regression] gfortran ICE segfault
  2015-05-06 11:21 [Bug fortran/66035] New: [5.1 Regression] gfortran ICE segfault Melven.Roehrig-Zoellner at DLR dot de
  2015-05-06 11:24 ` [Bug fortran/66035] " Melven.Roehrig-Zoellner at DLR dot de
  2015-05-06 13:23 ` [Bug fortran/66035] [5/6 " dominiq at lps dot ens.fr
@ 2015-05-06 14:38 ` vehre at gcc dot gnu.org
  2015-05-06 17:01 ` vehre at gcc dot gnu.org
                   ` (3 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: vehre at gcc dot gnu.org @ 2015-05-06 14:38 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66035

vehre at gcc dot gnu.org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |ASSIGNED
           Assignee|unassigned at gcc dot gnu.org      |vehre at gcc dot gnu.org

--- Comment #3 from vehre at gcc dot gnu.org ---
A shorter testcase is:

program test_pr66035
  type t

  end type t
  type w
    class(t), allocatable :: c
  end type w

  type(t) :: o

  call test(o)
contains
  subroutine test(o)
    class(t), intent(inout) :: o
    type(w), dimension(:), allocatable :: list

    select type (o)
      class is (t)
        list = [w(o)]
      class default
        call abort()
    end select
  end subroutine
end program


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Bug fortran/66035] [5/6 Regression] gfortran ICE segfault
  2015-05-06 11:21 [Bug fortran/66035] New: [5.1 Regression] gfortran ICE segfault Melven.Roehrig-Zoellner at DLR dot de
                   ` (2 preceding siblings ...)
  2015-05-06 14:38 ` vehre at gcc dot gnu.org
@ 2015-05-06 17:01 ` vehre at gcc dot gnu.org
  2015-05-09  9:35 ` evangelos at foutrelis dot com
                   ` (2 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: vehre at gcc dot gnu.org @ 2015-05-06 17:01 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66035

--- Comment #4 from vehre at gcc dot gnu.org ---
Created attachment 35482
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=35482&action=edit
Candidate patch for latest regressions.

This is a candidate patch for trunk, aka 6.0, including all my candidate
patches. I don't have the compute power to test this on a clean trunk, or on
5.1.

Dominique, would you mind?


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Bug fortran/66035] [5/6 Regression] gfortran ICE segfault
  2015-05-06 11:21 [Bug fortran/66035] New: [5.1 Regression] gfortran ICE segfault Melven.Roehrig-Zoellner at DLR dot de
                   ` (3 preceding siblings ...)
  2015-05-06 17:01 ` vehre at gcc dot gnu.org
@ 2015-05-09  9:35 ` evangelos at foutrelis dot com
  2015-07-17 10:16 ` vehre at gcc dot gnu.org
  2015-07-21 10:36 ` vehre at gcc dot gnu.org
  6 siblings, 0 replies; 8+ messages in thread
From: evangelos at foutrelis dot com @ 2015-05-09  9:35 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66035

Evangelos Foutras <evangelos at foutrelis dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |evangelos at foutrelis dot com

--- Comment #5 from Evangelos Foutras <evangelos at foutrelis dot com> ---
(In reply to vehre from comment #4)
> Created attachment 35482 [details]
> Candidate patch for latest regressions.

This patch applied on top of the 5-20150505 snapshot fixes the ICE on x86_64.


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Bug fortran/66035] [5/6 Regression] gfortran ICE segfault
  2015-05-06 11:21 [Bug fortran/66035] New: [5.1 Regression] gfortran ICE segfault Melven.Roehrig-Zoellner at DLR dot de
                   ` (4 preceding siblings ...)
  2015-05-09  9:35 ` evangelos at foutrelis dot com
@ 2015-07-17 10:16 ` vehre at gcc dot gnu.org
  2015-07-21 10:36 ` vehre at gcc dot gnu.org
  6 siblings, 0 replies; 8+ messages in thread
From: vehre at gcc dot gnu.org @ 2015-07-17 10:16 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66035

--- Comment #6 from vehre at gcc dot gnu.org ---
Author: vehre
Date: Fri Jul 17 10:16:21 2015
New Revision: 225928

URL: https://gcc.gnu.org/viewcvs?rev=225928&root=gcc&view=rev
Log:
gcc/fortran/ChangeLog:

2015-07-17  Andre Vehreschild  <vehre@gcc.gnu.org>

        PR fortran/66035
        * trans-expr.c (alloc_scalar_allocatable_for_subcomponent_assignment):
        Compute the size to allocate for class and derived type objects
        correclty.
        (gfc_trans_subcomponent_assign): Only allocate memory for a
        component when the object to assign is not an allocatable class
        object (the memory is already present for allocatable class objects).
        Furthermore use copy_class_to_class for assigning the rhs to the
        component (may happen for dummy class objects on the rhs).


gcc/testsuite/ChangeLog:

2015-07-17  Andre Vehreschild  <vehre@gcc.gnu.org>

        PR fortran/66035
        * gfortran.dg/structure_constructor_13.f03: New test.



Added:
    trunk/gcc/testsuite/gfortran.dg/structure_constructor_13.f03
Modified:
    trunk/gcc/fortran/ChangeLog
    trunk/gcc/fortran/trans-expr.c
    trunk/gcc/testsuite/ChangeLog


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Bug fortran/66035] [5/6 Regression] gfortran ICE segfault
  2015-05-06 11:21 [Bug fortran/66035] New: [5.1 Regression] gfortran ICE segfault Melven.Roehrig-Zoellner at DLR dot de
                   ` (5 preceding siblings ...)
  2015-07-17 10:16 ` vehre at gcc dot gnu.org
@ 2015-07-21 10:36 ` vehre at gcc dot gnu.org
  6 siblings, 0 replies; 8+ messages in thread
From: vehre at gcc dot gnu.org @ 2015-07-21 10:36 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66035

--- Comment #8 from vehre at gcc dot gnu.org ---
Author: vehre
Date: Tue Jul 21 10:36:06 2015
New Revision: 226037

URL: https://gcc.gnu.org/viewcvs?rev=226037&root=gcc&view=rev
Log:
gcc/fortran/ChangeLog:

2015-07-21  Andre Vehreschild  <vehre@gcc.gnu.org>

        PR fortran/66035
        * trans-expr.c (alloc_scalar_allocatable_for_subcomponent_assignment):
        Compute the size to allocate for class and derived type objects
        correclty.
        (gfc_trans_subcomponent_assign): Only allocate memory for a
        component when the object to assign is not an allocatable class
        object (the memory is already present for allocatable class objects).
        Furthermore use copy_class_to_class for assigning the rhs to the
        component (may happen for dummy class objects on the rhs).


gcc/testsuite/ChangeLog:

2015-07-21  Andre Vehreschild  <vehre@gcc.gnu.org>

        PR fortran/66035
        * gfortran.dg/structure_constructor_13.f03: New test.



Added:
   
branches/gcc-5-branch/gcc/testsuite/gfortran.dg/structure_constructor_13.f03
Modified:
    branches/gcc-5-branch/gcc/fortran/ChangeLog
    branches/gcc-5-branch/gcc/fortran/trans-expr.c
    branches/gcc-5-branch/gcc/testsuite/ChangeLog


^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2015-07-21 10:36 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-05-06 11:21 [Bug fortran/66035] New: [5.1 Regression] gfortran ICE segfault Melven.Roehrig-Zoellner at DLR dot de
2015-05-06 11:24 ` [Bug fortran/66035] " Melven.Roehrig-Zoellner at DLR dot de
2015-05-06 13:23 ` [Bug fortran/66035] [5/6 " dominiq at lps dot ens.fr
2015-05-06 14:38 ` vehre at gcc dot gnu.org
2015-05-06 17:01 ` vehre at gcc dot gnu.org
2015-05-09  9:35 ` evangelos at foutrelis dot com
2015-07-17 10:16 ` vehre at gcc dot gnu.org
2015-07-21 10:36 ` vehre at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).