[Bug fortran/43747] [4.6 Regression] ICE in find_array_section, at fortran/expr.c:1551

2010-04-14 Thread dominiq at lps dot ens dot fr


--- Comment #7 from dominiq at lps dot ens dot fr  2010-04-14 13:26 ---
After revision 158291 I get

[macbook] f90/bug% time gfc pr19925_1.f90 
pr19925_1.f90:2.27:

INTEGER, PARAMETER :: I(N)=(/(MOD(K,2),K=1,N)/)
   1
Error: The number of elements in the array constructor at (1) requires an
increase of the allowed 65535 upper limit.   See -fmax-array-constructor option
1.576u 0.019s 0:01.60 98.7% 0+0k 0+19io 0pf+0w
[macbook] f90/bug% time gfc pr19925_1_db.f90
pr19925_1_db.f90:2.27:

INTEGER, PARAMETER :: I(N)=(/(MOD(K,2),K=1,N)/)
   1
Error: The number of elements in the array constructor at (1) requires an
increase of the allowed 65535 upper limit.   See -fmax-array-constructor option
1.587u 0.023s 0:01.94 82.4% 0+0k 0+17io 0pf+0w
[macbook] f90/bug% time gfc pr19925_1.f90 -fmax-array-constructor=10
3.330u 0.177s 0:03.51 99.7% 0+0k 0+25io 0pf+0w
[macbook] f90/bug% time gfc pr19925_1_db.f90 -fmax-array-constructor=10
3.432u 0.191s 0:03.87 93.5% 0+0k 0+9io 0pf+0w
[macbook] f90/bug% a.out 
   1   0   0   1

So no more ICE, and the compilation with -fmax-array-constructor=10 is now
more than two order of magnitude faster (nice!-). So closing as fixed.


-- 

dominiq at lps dot ens dot fr changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43747



[Bug fortran/43747] [4.6 Regression] ICE in find_array_section, at fortran/expr.c:1551

2010-04-13 Thread jvdelisle at gcc dot gnu dot org


--- Comment #1 from jvdelisle at gcc dot gnu dot org  2010-04-13 19:03 
---
I don't see the failure on linux-x86-64. I am building on Cygwin to see whta
shows up there.  I seem to recall a patch that changed a fatal error to a
non-fatal somewhere.  I will have a look tonight.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43747



[Bug fortran/43747] [4.6 Regression] ICE in find_array_section, at fortran/expr.c:1551

2010-04-13 Thread burnus at gcc dot gnu dot org


--- Comment #2 from burnus at gcc dot gnu dot org  2010-04-13 20:56 ---
(In reply to comment #1)
 I don't see the failure on linux-x86-64. I am building on Cygwin to see whta
 shows up there.  I seem to recall a patch that changed a fatal error to a
 non-fatal somewhere.  I will have a look tonight.

I can reproduce the problem on linux-x86-64:
f951: internal compiler error: in find_array_section, at fortran/expr.c:1551


-- 

burnus at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
  GCC build triplet|x86_64-apple-darwin10   |
   GCC host triplet|x86_64-apple-darwin10   |
 GCC target triplet|x86_64-apple-darwin10   |
   Keywords||ice-on-valid-code
   Last reconfirmed|-00-00 00:00:00 |2010-04-13 20:56:57
   date||
   Target Milestone|--- |4.6.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43747



[Bug fortran/43747] [4.6 Regression] ICE in find_array_section, at fortran/expr.c:1551

2010-04-13 Thread jvdelisle at gcc dot gnu dot org


--- Comment #3 from jvdelisle at gcc dot gnu dot org  2010-04-14 01:32 
---
OK, I see it now.  This is a little different from our previous encounters with
overly big constructors. In fact, the code we had in place is still there, so
we have whacked something.  The test case does not fail at 65535 and does fail
at 65536.  I will study it a bit, but this may not be a quick one. (Unless I
get lucky)


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43747



[Bug fortran/43747] [4.6 Regression] ICE in find_array_section, at fortran/expr.c:1551

2010-04-13 Thread jvdelisle at gcc dot gnu dot org


--- Comment #4 from jvdelisle at gcc dot gnu dot org  2010-04-14 05:08 
---
Easier then I thought.  Patch submitted for approval.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43747



[Bug fortran/43747] [4.6 Regression] ICE in find_array_section, at fortran/expr.c:1551

2010-04-13 Thread jvdelisle at gcc dot gnu dot org


--- Comment #5 from jvdelisle at gcc dot gnu dot org  2010-04-14 05:17 
---
Subject: Bug 43747

Author: jvdelisle
Date: Wed Apr 14 05:16:59 2010
New Revision: 158290

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=158290
Log:
2010-04-14  Jerry DeLisle  jvdeli...@gcc.gnu.org

PR fortran/43747
* constructor.c: Fix typo in comment.
* expr.c (find_array_section): Add check for max array limit.

Modified:
trunk/gcc/fortran/ChangeLog
trunk/gcc/fortran/constructor.c
trunk/gcc/fortran/expr.c


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43747



[Bug fortran/43747] [4.6 Regression] ICE in find_array_section, at fortran/expr.c:1551

2010-04-13 Thread jvdelisle at gcc dot gnu dot org


--- Comment #6 from jvdelisle at gcc dot gnu dot org  2010-04-14 05:27 
---
Subject: Bug 43747

Author: jvdelisle
Date: Wed Apr 14 05:27:29 2010
New Revision: 158291

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=158291
Log:
2010-04-14  Jerry DeLisle  jvdeli...@gcc.gnu.org

PR fortran/43747
gfortran.dg/initialization_24.f90: New test.

Added:
trunk/gcc/testsuite/gfortran.dg/initialization_24.f90
Modified:
trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43747