public inbox for gcc-bugs@sourceware.org help / color / mirror / Atom feed
* [Bug fortran/27895] New: problem with SPREAD and zero-sized arrays @ 2006-06-05 7:07 fxcoudert at gcc dot gnu dot org 2006-06-05 9:20 ` [Bug fortran/27895] " fxcoudert at gcc dot gnu dot org ` (19 more replies) 0 siblings, 20 replies; 21+ messages in thread From: fxcoudert at gcc dot gnu dot org @ 2006-06-05 7:07 UTC (permalink / raw) To: gcc-bugs The following code gives compile-time warnings that are wrong, and segfaults at runtime: module foo_mod implicit none contains pure function outerprod(a,b) real, intent(in) :: a(:),b(:) real :: outerprod(size(a),size(b)) outerprod = spread(a,dim=2,ncopies=size(b)) * spread(b,dim=1,ncopies=size(a)) end function outerprod end module foo_mod program xouterprod use foo_mod, only: outerprod implicit none integer, parameter :: i = 4, m = 4, n = 4, l = 5 real :: aa(m,i),tempn(n) call random_seed() aa = 1.0 tempn = 2.0 aa(i:m,l:n) = aa(i:m,l:n)+outerprod(aa(i:m,i),tempn(l:n)) ! tricky print*,aa end program xouterprod $ gfortran a.f90 In file a.f90:19 aa(i:m,l:n) = aa(i:m,l:n)+outerprod(aa(i:m,i),tempn(l:n)) ! tricky 1 Warning: Array reference at (1) is out of bounds In file a.f90:19 aa(i:m,l:n) = aa(i:m,l:n)+outerprod(aa(i:m,i),tempn(l:n)) ! tricky 1 Warning: Array reference at (1) is out of bounds In file a.f90:19 aa(i:m,l:n) = aa(i:m,l:n)+outerprod(aa(i:m,i),tempn(l:n)) ! tricky 1 Warning: Array reference at (1) is out of bounds $ ./a.out zsh: segmentation fault ./a.out -- Summary: problem with SPREAD and zero-sized arrays Product: gcc Version: 4.2.0 Status: UNCONFIRMED Keywords: wrong-code, diagnostic Severity: normal Priority: P3 Component: fortran AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: fxcoudert at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27895 ^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug fortran/27895] problem with SPREAD and zero-sized arrays 2006-06-05 7:07 [Bug fortran/27895] New: problem with SPREAD and zero-sized arrays fxcoudert at gcc dot gnu dot org @ 2006-06-05 9:20 ` fxcoudert at gcc dot gnu dot org 2006-06-05 9:25 ` [Bug libfortran/27895] " fxcoudert at gcc dot gnu dot org ` (18 subsequent siblings) 19 siblings, 0 replies; 21+ messages in thread From: fxcoudert at gcc dot gnu dot org @ 2006-06-05 9:20 UTC (permalink / raw) To: gcc-bugs ------- Comment #1 from fxcoudert at gcc dot gnu dot org 2006-06-05 09:09 ------- A minimal testcase exhibiting both problems (warning and segfault) is: real :: tempn(1) tempn = 2.0 print *, spread(tempn(2:1),dim=1,ncopies=1) end -- fxcoudert at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Known to fail| |4.2.0 4.1.2 Last reconfirmed|0000-00-00 00:00:00 |2006-06-05 09:09:10 date| | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27895 ^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug libfortran/27895] problem with SPREAD and zero-sized arrays 2006-06-05 7:07 [Bug fortran/27895] New: problem with SPREAD and zero-sized arrays fxcoudert at gcc dot gnu dot org 2006-06-05 9:20 ` [Bug fortran/27895] " fxcoudert at gcc dot gnu dot org @ 2006-06-05 9:25 ` fxcoudert at gcc dot gnu dot org 2006-06-05 13:46 ` fxcoudert at gcc dot gnu dot org ` (17 subsequent siblings) 19 siblings, 0 replies; 21+ messages in thread From: fxcoudert at gcc dot gnu dot org @ 2006-06-05 9:25 UTC (permalink / raw) To: gcc-bugs ------- Comment #2 from fxcoudert at gcc dot gnu dot org 2006-06-05 09:24 ------- The problem is in the library. spread_internal rightly understands that the destination array will have zero-size in one dimension, so the call to allocation memory for ret->data at line 104: ret->data = internal_malloc_size (rs * size); gives NULL into ret->data. I don't remember whether we should actually allocate one byte of memory for ret->data, or if we should jut let it be NULL and simply return from the function here. -- fxcoudert at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- Component|fortran |libfortran http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27895 ^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug libfortran/27895] problem with SPREAD and zero-sized arrays 2006-06-05 7:07 [Bug fortran/27895] New: problem with SPREAD and zero-sized arrays fxcoudert at gcc dot gnu dot org 2006-06-05 9:20 ` [Bug fortran/27895] " fxcoudert at gcc dot gnu dot org 2006-06-05 9:25 ` [Bug libfortran/27895] " fxcoudert at gcc dot gnu dot org @ 2006-06-05 13:46 ` fxcoudert at gcc dot gnu dot org 2006-06-05 14:24 ` fxcoudert at gcc dot gnu dot org ` (16 subsequent siblings) 19 siblings, 0 replies; 21+ messages in thread From: fxcoudert at gcc dot gnu dot org @ 2006-06-05 13:46 UTC (permalink / raw) To: gcc-bugs ------- Comment #3 from fxcoudert at gcc dot gnu dot org 2006-06-05 13:46 ------- I believe the segfault is appropriately fixed by the following patch: Index: libgfortran/intrinsics/spread_generic.c =================================================================== --- libgfortran/intrinsics/spread_generic.c (revision 114340) +++ libgfortran/intrinsics/spread_generic.c (working copy) @@ -101,7 +101,14 @@ } } ret->offset = 0; - ret->data = internal_malloc_size (rs * size); + if (rs * size == 0) + { + ret->data = internal_malloc_size (1); + ret->data[0] = 0; + return; + } + else + ret->data = internal_malloc_size (rs * size); } else { -- fxcoudert at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |patch http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27895 ^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug libfortran/27895] problem with SPREAD and zero-sized arrays 2006-06-05 7:07 [Bug fortran/27895] New: problem with SPREAD and zero-sized arrays fxcoudert at gcc dot gnu dot org ` (2 preceding siblings ...) 2006-06-05 13:46 ` fxcoudert at gcc dot gnu dot org @ 2006-06-05 14:24 ` fxcoudert at gcc dot gnu dot org 2006-06-05 16:23 ` fxcoudert at gcc dot gnu dot org ` (15 subsequent siblings) 19 siblings, 0 replies; 21+ messages in thread From: fxcoudert at gcc dot gnu dot org @ 2006-06-05 14:24 UTC (permalink / raw) To: gcc-bugs ------- Comment #4 from fxcoudert at gcc dot gnu dot org 2006-06-05 14:23 ------- And I'm sure the warnings are appropriately fixed by: Index: resolve.c =================================================================== --- resolve.c (revision 114340) +++ resolve.c (working copy) @@ -2130,11 +2130,24 @@ return FAILURE; } - if (compare_bound (ar->start[i], as->lower[i]) == CMP_LT) - goto bound; - if (compare_bound (ar->start[i], as->upper[i]) == CMP_GT) - goto bound; +#define AR_START (ar->start[i] ? ar->start[i] : as->lower[i]) +#define AR_END (ar->end[i] ? ar->end[i] : as->upper[i]) + if (((compare_bound_int (ar->stride[i], 0) == CMP_GT + || ar->stride[i] == NULL) + && compare_bound (AR_START, AR_END) != CMP_GT) + || (compare_bound_int (ar->stride[i], 0) == CMP_LT + && compare_bound (AR_START, AR_END) != CMP_LT)) + { + if (compare_bound (AR_START, as->lower[i]) == CMP_LT) + goto bound; + if (compare_bound (AR_START, as->upper[i]) == CMP_GT) + goto bound; + +#undef AR_START +#undef AR_END + } + /* TODO: Possibly, we could warn about end[i] being out-of-bound although it is legal (see 6.2.2.3.1). */ But I'm working on expanding this checking according to the TODO, i.e. including checking for the end of the triplet. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27895 ^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug libfortran/27895] problem with SPREAD and zero-sized arrays 2006-06-05 7:07 [Bug fortran/27895] New: problem with SPREAD and zero-sized arrays fxcoudert at gcc dot gnu dot org ` (3 preceding siblings ...) 2006-06-05 14:24 ` fxcoudert at gcc dot gnu dot org @ 2006-06-05 16:23 ` fxcoudert at gcc dot gnu dot org 2006-06-05 22:44 ` fxcoudert at gcc dot gnu dot org ` (14 subsequent siblings) 19 siblings, 0 replies; 21+ messages in thread From: fxcoudert at gcc dot gnu dot org @ 2006-06-05 16:23 UTC (permalink / raw) To: gcc-bugs -- fxcoudert at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- AssignedTo|unassigned at gcc dot gnu |fxcoudert at gcc dot gnu dot |dot org |org Status|NEW |ASSIGNED Last reconfirmed|2006-06-05 09:09:10 |2006-06-05 16:08:54 date| | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27895 ^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug libfortran/27895] problem with SPREAD and zero-sized arrays 2006-06-05 7:07 [Bug fortran/27895] New: problem with SPREAD and zero-sized arrays fxcoudert at gcc dot gnu dot org ` (4 preceding siblings ...) 2006-06-05 16:23 ` fxcoudert at gcc dot gnu dot org @ 2006-06-05 22:44 ` fxcoudert at gcc dot gnu dot org 2006-06-19 12:34 ` fxcoudert at gcc dot gnu dot org ` (13 subsequent siblings) 19 siblings, 0 replies; 21+ messages in thread From: fxcoudert at gcc dot gnu dot org @ 2006-06-05 22:44 UTC (permalink / raw) To: gcc-bugs ------- Comment #5 from fxcoudert at gcc dot gnu dot org 2006-06-05 22:41 ------- Subject: Bug 27895 Author: fxcoudert Date: Mon Jun 5 22:41:29 2006 New Revision: 114414 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=114414 Log: PR libfortran/27895 * resolve.c (compute_last_value_for_triplet): New function. (check_dimension): Correctly handle zero-sized array sections. Add checking on last element of array sections. * gfortran.dg/bounds_check_3.f90: New test. Added: trunk/gcc/testsuite/gfortran.dg/bounds_check_3.f90 Modified: trunk/gcc/fortran/ChangeLog trunk/gcc/fortran/resolve.c trunk/gcc/testsuite/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27895 ^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug libfortran/27895] problem with SPREAD and zero-sized arrays 2006-06-05 7:07 [Bug fortran/27895] New: problem with SPREAD and zero-sized arrays fxcoudert at gcc dot gnu dot org ` (5 preceding siblings ...) 2006-06-05 22:44 ` fxcoudert at gcc dot gnu dot org @ 2006-06-19 12:34 ` fxcoudert at gcc dot gnu dot org 2006-06-20 6:07 ` fxcoudert at gcc dot gnu dot org ` (12 subsequent siblings) 19 siblings, 0 replies; 21+ messages in thread From: fxcoudert at gcc dot gnu dot org @ 2006-06-19 12:34 UTC (permalink / raw) To: gcc-bugs ------- Comment #6 from fxcoudert at gcc dot gnu dot org 2006-06-19 12:03 ------- CSHIFT has the same problem: $ cat zero_cshift.f90 real :: tempn(1) tempn = 2.0 print *, cshift(tempn(2:),shift=1) end $ gfortran zero_cshift.f90 && ./a.out Floating point exception I believe the following functions may not be safe: EOSHIFT, PACK, RESHAPE, TRANSPOSE, UNPACK (and of course, SPREAD and CSHIFT). -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27895 ^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug libfortran/27895] problem with SPREAD and zero-sized arrays 2006-06-05 7:07 [Bug fortran/27895] New: problem with SPREAD and zero-sized arrays fxcoudert at gcc dot gnu dot org ` (6 preceding siblings ...) 2006-06-19 12:34 ` fxcoudert at gcc dot gnu dot org @ 2006-06-20 6:07 ` fxcoudert at gcc dot gnu dot org 2006-06-24 23:08 ` fxcoudert at gcc dot gnu dot org ` (11 subsequent siblings) 19 siblings, 0 replies; 21+ messages in thread From: fxcoudert at gcc dot gnu dot org @ 2006-06-20 6:07 UTC (permalink / raw) To: gcc-bugs ------- Comment #7 from fxcoudert at gcc dot gnu dot org 2006-06-20 06:04 ------- Subject: Bug 27895 Author: fxcoudert Date: Tue Jun 20 06:04:14 2006 New Revision: 114803 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=114803 Log: 2006-06-20 Francois-Xavier Coudert <coudert@clipper.ens.fr> PR fortran/27958 * trans-expr.c (gfc_conv_substring): If the substring start is greater than its end, the length of the substring is zero, and not negative. (gfc_trans_string_copy): Don't generate a call to _gfortran_copy_string when destination length is zero. 2006-06-20 Francois-Xavier Coudert <coudert@clipper.ens.fr> PR libfortran/27895 * resolve.c (compute_last_value_for_triplet): New function. (check_dimension): Correctly handle zero-sized array sections. Add checking on last element of array sections. 2006-06-20 Francois-Xavier Coudert <coudert@clipper.ens.fr> * trans.c (gfc_msg_bounds, gfc_msg_fault, gfc_msg_wrong_return): Add strings for common runtime error messages. (gfc_trans_runtime_check): Add a locus argument, use a string and not a string tree for the message. * trans.h (gfc_trans_runtime_check): Change prototype accordingly. (gfc_msg_bounds, gfc_msg_fault, gfc_msg_wrong_return): Add proto. * trans-const.c (gfc_strconst_bounds, gfc_strconst_fault, gfc_strconst_wrong_return, gfc_strconst_current_filename): Remove. (gfc_init_constants): Likewise. * trans-const.h: Likewise. * trans-decl.c (gfc_build_builtin_function_decls): Call to _gfortran_runtime_error has only one argument, the message string. * trans-array.h (gfc_conv_array_ref): Add a symbol argument and a locus. * trans-array.c (gfc_trans_array_bound_check): Build precise error messages. (gfc_conv_array_ref): Use the new symbol argument and the locus to build more precise error messages. (gfc_conv_ss_startstride): More precise error messages. * trans-expr.c (gfc_conv_variable): Give symbol reference and locus to gfc_conv_array_ref. (gfc_conv_function_call): Use the new prototype for gfc_trans_runtime_check. * trans-stmt.c (gfc_trans_goto): Build more precise error message. * trans-io.c (set_string): Likewise. * trans-intrinsic.c (gfc_conv_intrinsic_bound): Use new prototype for gfc_trans_runtime_check. 2006-06-20 Thomas Koenig <Thomas.Koenig@online.de> PR fortran/27715 * arith.c: Cast the characters from the strings to unsigned char to avoid values less than 0 for extended ASCII. 2006-06-20 Thomas Koenig <Thomas.Koenig@online.de> PR libfortran/27784 * intrinsics/string_intrinsics.c (compare_string): Use memcmp instead of strncmp to avoid tripping over CHAR(0) in a string. 2006-06-20 Francois-Xavier Coudert <coudert@clipper.ens.fr> PR fortran/27958 * gcc/testsuite/gfortran.dg/substr_2.f: New test. 2006-06-20 Francois-Xavier Coudert <coudert@clipper.ens.fr> PR libfortran/27895 * gfortran.dg/bounds_check_3.f90: New test. 2006-06-20 Thomas Koenig <Thomas.Koenig@online.de> PR fortran/27715 * gfortran.dg/extended_char_comparison_1.f: New test. 2006-06-20 Thomas Koenig <Thomas.Koenig@online.de> PR fortran/27784 * gfortran.dg/string_null_compare_1.f: New test case. Added: branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/bounds_check_3.f90 - copied unchanged from r114414, trunk/gcc/testsuite/gfortran.dg/bounds_check_3.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/extended_char_comparison_1.f - copied unchanged from r114317, trunk/gcc/testsuite/gfortran.dg/extended_char_comparison_1.f branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/string_null_compare_1.f - copied unchanged from r114175, trunk/gcc/testsuite/gfortran.dg/string_null_compare_1.f branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/substr_2.f - copied unchanged from r114496, trunk/gcc/testsuite/gfortran.dg/substr_2.f Modified: branches/gcc-4_1-branch/gcc/fortran/ChangeLog branches/gcc-4_1-branch/gcc/fortran/arith.c branches/gcc-4_1-branch/gcc/fortran/resolve.c branches/gcc-4_1-branch/gcc/fortran/trans-array.c branches/gcc-4_1-branch/gcc/fortran/trans-array.h branches/gcc-4_1-branch/gcc/fortran/trans-const.c branches/gcc-4_1-branch/gcc/fortran/trans-const.h branches/gcc-4_1-branch/gcc/fortran/trans-decl.c branches/gcc-4_1-branch/gcc/fortran/trans-expr.c branches/gcc-4_1-branch/gcc/fortran/trans-intrinsic.c branches/gcc-4_1-branch/gcc/fortran/trans-io.c branches/gcc-4_1-branch/gcc/fortran/trans-stmt.c branches/gcc-4_1-branch/gcc/fortran/trans.c branches/gcc-4_1-branch/gcc/fortran/trans.h branches/gcc-4_1-branch/gcc/testsuite/ChangeLog branches/gcc-4_1-branch/libgfortran/ChangeLog branches/gcc-4_1-branch/libgfortran/intrinsics/string_intrinsics.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27895 ^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug libfortran/27895] problem with SPREAD and zero-sized arrays 2006-06-05 7:07 [Bug fortran/27895] New: problem with SPREAD and zero-sized arrays fxcoudert at gcc dot gnu dot org ` (7 preceding siblings ...) 2006-06-20 6:07 ` fxcoudert at gcc dot gnu dot org @ 2006-06-24 23:08 ` fxcoudert at gcc dot gnu dot org 2006-07-26 8:35 ` fxcoudert at gcc dot gnu dot org ` (10 subsequent siblings) 19 siblings, 0 replies; 21+ messages in thread From: fxcoudert at gcc dot gnu dot org @ 2006-06-24 23:08 UTC (permalink / raw) To: gcc-bugs ------- Comment #8 from fxcoudert at gcc dot gnu dot org 2006-06-24 22:16 ------- (In reply to comment #3) > I believe the segfault is appropriately fixed by the following patch I still think this patch is the right thing, and I've been looking through the other transformational function to see which are affected by similar bugs on zero-sized arrays. - SPREAD and CSHIFT are subject to this bug, which is easily fixed (in spread_generic.c and cshift0.c - RESHAPE and PACK are completely failing on zero-sized arrays All others, including EOSHIFT, UNPACK, TRANSPOSE, appear to work fine. Here is a bunch of testcases, now the task is to make all these work as expected: $ cat zero_cshift.f90 real :: tempn(1), tempm(1,2) real,allocatable :: foo(:),bar(:,:),gee(:,:) tempn = 2.0 tempm = 1.0 allocate(foo(0),bar(2,0),gee(0,7)) print *, cshift(foo,dim=1,shift=1) print *, cshift(tempn(2:1),dim=1,shift=1) print *, cshift(bar,shift=(/1,-1/),dim=1) print *, cshift(bar,shift=(/1,-1/),dim=2) print *, cshift(gee,shift=(/1,-1/),dim=1) print *, cshift(gee,shift=(/1,-1/),dim=2) print *, cshift(tempm(5:4,:),shift=(/1,-1/),dim=1) print *, cshift(tempm(5:4,:),shift=(/1,-1/),dim=2) print *, cshift(tempm(:,5:4),shift=(/1,-1/),dim=1) print *, cshift(tempm(:,5:4),shift=(/1,-1/),dim=2) end $ cat zero_eoshift.f90 real :: tempn(1), tempm(1,2) real,allocatable :: foo(:),bar(:,:),gee(:,:) tempn = 2.0 tempm = 1.0 allocate(foo(0),bar(2,0),gee(0,7)) print *, eoshift(foo,dim=1,shift=1) print *, eoshift(tempn(2:1),dim=1,shift=1) print *, eoshift(bar,shift=(/1,-1/),dim=1) print *, eoshift(bar,shift=(/1,-1/),dim=2) print *, eoshift(gee,shift=(/1,-1/),dim=1) print *, eoshift(gee,shift=(/1,-1/),dim=2) print *, eoshift(tempm(5:4,:),shift=(/1,-1/),dim=1) print *, eoshift(tempm(5:4,:),shift=(/1,-1/),dim=2) print *, eoshift(tempm(:,5:4),shift=(/1,-1/),dim=1) print *, eoshift(tempm(:,5:4),shift=(/1,-1/),dim=2) print *, eoshift(foo,dim=1,shift=1,boundary=42.0) print *, eoshift(tempn(2:1),dim=1,shift=1,boundary=42.0) print *, eoshift(bar,shift=(/1,-1/),dim=1,boundary=42.0) print *, eoshift(bar,shift=(/1,-1/),dim=2,boundary=42.0) print *, eoshift(gee,shift=(/1,-1/),dim=1,boundary=42.0) print *, eoshift(gee,shift=(/1,-1/),dim=2,boundary=42.0) print *, eoshift(tempm(5:4,:),shift=(/1,-1/),dim=1,boundary=42.0) print *, eoshift(tempm(5:4,:),shift=(/1,-1/),dim=2,boundary=42.0) print *, eoshift(tempm(:,5:4),shift=(/1,-1/),dim=1,boundary=42.0) print *, eoshift(tempm(:,5:4),shift=(/1,-1/),dim=2,boundary=42.0) print *, eoshift(foo,dim=1,shift=1,boundary=(/42.0,-7.0/)) print *, eoshift(tempn(2:1),dim=1,shift=1,boundary=(/42.0,-7.0/)) print *, eoshift(bar,shift=(/1,-1/),dim=1,boundary=(/42.0,-7.0/)) print *, eoshift(bar,shift=(/1,-1/),dim=2,boundary=(/42.0,-7.0/)) print *, eoshift(gee,shift=(/1,-1/),dim=1,boundary=(/42.0,-7.0/)) print *, eoshift(gee,shift=(/1,-1/),dim=2,boundary=(/42.0,-7.0/)) print *, eoshift(tempm(5:4,:),shift=(/1,-1/),dim=1,boundary=(/42.0,-7.0/)) print *, eoshift(tempm(5:4,:),shift=(/1,-1/),dim=2,boundary=(/42.0,-7.0/)) print *, eoshift(tempm(:,5:4),shift=(/1,-1/),dim=1,boundary=(/42.0,-7.0/)) print *, eoshift(tempm(:,5:4),shift=(/1,-1/),dim=2,boundary=(/42.0,-7.0/)) end $ cat zero_pack.f90 integer :: tempn(1,5) integer,allocatable :: foo(:,:) tempn = 2 allocate(foo(0,1:7)) print *, pack(foo,foo/=0) print *, pack(foo,foo/=0,(/1,3,4,5,1,0,7,9/)) print *, pack(tempn(:,-4:-5),tempn(:,-4:-5)/=0) print *, pack(tempn(:,-4:-5),tempn(:,-4:-5)/=0,(/1,3,4,5,1,0,7,9/)) print *, pack(foo,.true.) print *, pack(foo,.true.,(/1,3,4,5,1,0,7,9/)) print *, pack(tempn(:,-4:-5),.true.) print *, pack(tempn(:,-4:-5),.true.,(/1,3,4,5,1,0,7,9/)) end $ cat zero_reshape.f90 character(len=1) :: tempn(1,2) character(len=1),allocatable :: foo(:,:), bar(:,:) tempn = 'a' x = 0 allocate(foo(3,0),bar(-2:-4,7:9)) print *, reshape(tempn(-7:-8,:),(/3,3/),pad=(/'a'/)) print *, reshape(tempn(-7:-8,:),(/3,3,3/),pad=(/'a'/)) print *, reshape(tempn(-7:-8,:),(/3,3,3,3,3,3,3/),pad=(/'a'/)) ! print *, reshape(tempn(:,9:8)) ! print *, reshape(foo) ! print *, reshape(bar) end $ cat zero_spread_2.f90 real,allocatable :: bar(:,:),foo(:) allocate(foo(0)) bar = spread(foo,dim=1,ncopies=1) print *, allocated(bar) end $ cat zero_spread.f90 real :: tempn(1) real,allocatable :: foo(:) tempn = 2.0 allocate(foo(0)) print *, spread(1,dim=1,ncopies=3) print *, spread(1,dim=1,ncopies=0) print *, spread(foo,dim=1,ncopies=1) print *, spread(tempn(2:1),dim=1,ncopies=1) end $ cat zero_transpose.f90 character(len=1) :: tempn(1,2) character(len=1),allocatable :: foo(:,:), bar(:,:) tempn = 'a' allocate(foo(3,0),bar(-2:-4,7:9)) print *, transpose(tempn(-7:-8,:)) print *, transpose(tempn(:,9:8)) print *, transpose(foo) print *, transpose(bar) end $ cat zero_unpack.f90 integer :: tempn(1,5), tempv(5) integer,allocatable :: foo(:,:), bar(:) tempn = 2 tempv = 5 allocate(foo(0,1:7),bar(0:-1)) print *, unpack(tempv,tempv/=0,tempv) print *, unpack(tempv(1:0),tempv/=0,tempv) print *, unpack(tempv,tempv(1:0)/=0,tempv) print *, unpack(tempv(5:4),tempv(1:0)/=0,tempv) print *, unpack(bar,foo==foo,foo) end -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27895 ^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug libfortran/27895] problem with SPREAD and zero-sized arrays 2006-06-05 7:07 [Bug fortran/27895] New: problem with SPREAD and zero-sized arrays fxcoudert at gcc dot gnu dot org ` (8 preceding siblings ...) 2006-06-24 23:08 ` fxcoudert at gcc dot gnu dot org @ 2006-07-26 8:35 ` fxcoudert at gcc dot gnu dot org 2006-10-19 21:49 ` fxcoudert at gcc dot gnu dot org ` (9 subsequent siblings) 19 siblings, 0 replies; 21+ messages in thread From: fxcoudert at gcc dot gnu dot org @ 2006-07-26 8:35 UTC (permalink / raw) To: gcc-bugs ------- Comment #9 from fxcoudert at gcc dot gnu dot org 2006-07-26 08:34 ------- A patch for the library functions CSHIFT, PACK and SPREAD has been submitted: http://gcc.gnu.org/ml/gcc-patches/2006-07/msg01103.html The only one that is still not working is thus RESHAPE; it's proving difficult to fix! -- fxcoudert at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- URL| |http://gcc.gnu.org/ml/gcc- | |patches/2006- | |07/msg01103.html Keywords|diagnostic | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27895 ^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug libfortran/27895] problem with SPREAD and zero-sized arrays 2006-06-05 7:07 [Bug fortran/27895] New: problem with SPREAD and zero-sized arrays fxcoudert at gcc dot gnu dot org ` (9 preceding siblings ...) 2006-07-26 8:35 ` fxcoudert at gcc dot gnu dot org @ 2006-10-19 21:49 ` fxcoudert at gcc dot gnu dot org 2006-10-19 21:59 ` [Bug libfortran/27895] problem with RESHAPE " fxcoudert at gcc dot gnu dot org ` (8 subsequent siblings) 19 siblings, 0 replies; 21+ messages in thread From: fxcoudert at gcc dot gnu dot org @ 2006-10-19 21:49 UTC (permalink / raw) To: gcc-bugs ------- Comment #10 from fxcoudert at gcc dot gnu dot org 2006-10-19 21:49 ------- Subject: Bug 27895 Author: fxcoudert Date: Thu Oct 19 21:48:50 2006 New Revision: 117890 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=117890 Log: PR libfortran/27895 * intrinsics/cshift0.c: Special cases for zero-sized arrays. * intrinsics/pack_generic.c: Likewise. * intrinsics/spread_generic.c: Likewise. * gfortran.dg/zero_sized_1.f90: New test. Added: trunk/gcc/testsuite/gfortran.dg/zero_sized_1.f90 Modified: trunk/gcc/testsuite/ChangeLog trunk/libgfortran/ChangeLog trunk/libgfortran/intrinsics/cshift0.c trunk/libgfortran/intrinsics/pack_generic.c trunk/libgfortran/intrinsics/spread_generic.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27895 ^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug libfortran/27895] problem with RESHAPE and zero-sized arrays 2006-06-05 7:07 [Bug fortran/27895] New: problem with SPREAD and zero-sized arrays fxcoudert at gcc dot gnu dot org ` (10 preceding siblings ...) 2006-10-19 21:49 ` fxcoudert at gcc dot gnu dot org @ 2006-10-19 21:59 ` fxcoudert at gcc dot gnu dot org 2006-11-03 7:34 ` fxcoudert at gcc dot gnu dot org ` (7 subsequent siblings) 19 siblings, 0 replies; 21+ messages in thread From: fxcoudert at gcc dot gnu dot org @ 2006-10-19 21:59 UTC (permalink / raw) To: gcc-bugs ------- Comment #11 from fxcoudert at gcc dot gnu dot org 2006-10-19 21:59 ------- It's still not working for RESHAPE. Uncomment the test_reshape line in the newly added zero_sized_1.f90 test and see how it fails :) -- fxcoudert at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- URL|http://gcc.gnu.org/ml/gcc- | |patches/2006- | |07/msg01103.html | Keywords|patch | Summary|problem with SPREAD and |problem with RESHAPE and |zero-sized arrays |zero-sized arrays http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27895 ^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug libfortran/27895] problem with RESHAPE and zero-sized arrays 2006-06-05 7:07 [Bug fortran/27895] New: problem with SPREAD and zero-sized arrays fxcoudert at gcc dot gnu dot org ` (11 preceding siblings ...) 2006-10-19 21:59 ` [Bug libfortran/27895] problem with RESHAPE " fxcoudert at gcc dot gnu dot org @ 2006-11-03 7:34 ` fxcoudert at gcc dot gnu dot org 2006-11-03 11:51 ` fxcoudert at gcc dot gnu dot org ` (6 subsequent siblings) 19 siblings, 0 replies; 21+ messages in thread From: fxcoudert at gcc dot gnu dot org @ 2006-11-03 7:34 UTC (permalink / raw) To: gcc-bugs -- fxcoudert at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- URL| |http://gcc.gnu.org/ml/gcc- | |patches/2006- | |11/msg00129.html Keywords| |patch Known to fail|4.2.0 4.1.2 |4.2.0 4.1.2 4.3.0 Target Milestone|--- |4.2.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27895 ^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug libfortran/27895] problem with RESHAPE and zero-sized arrays 2006-06-05 7:07 [Bug fortran/27895] New: problem with SPREAD and zero-sized arrays fxcoudert at gcc dot gnu dot org ` (12 preceding siblings ...) 2006-11-03 7:34 ` fxcoudert at gcc dot gnu dot org @ 2006-11-03 11:51 ` fxcoudert at gcc dot gnu dot org 2006-11-03 12:24 ` [Bug libfortran/27895] [4.1/4.2 only] " fxcoudert at gcc dot gnu dot org ` (5 subsequent siblings) 19 siblings, 0 replies; 21+ messages in thread From: fxcoudert at gcc dot gnu dot org @ 2006-11-03 11:51 UTC (permalink / raw) To: gcc-bugs ------- Comment #12 from fxcoudert at gcc dot gnu dot org 2006-11-03 11:51 ------- Subject: Bug 27895 Author: fxcoudert Date: Fri Nov 3 11:51:09 2006 New Revision: 118455 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=118455 Log: PR libfortran/27895 * intrinsics/reshape_generic.c (reshape_internal): Fix so that it works correctly for zero-sized arrays. * m4/reshape.m4: Likewise. * generated/reshape_r16.c: Regenerate. * generated/reshape_c4.c: Regenerate. * generated/reshape_i4.c: Regenerate. * generated/reshape_c16.c: Regenerate. * generated/reshape_r10.c: Regenerate. * generated/reshape_r8.c: Regenerate. * generated/reshape_c10.c: Regenerate. * generated/reshape_c8.c: Regenerate. * generated/reshape_i8.c: Regenerate. * generated/reshape_i16.c: Regenerate. * generated/reshape_r4.c: Regenerate. * gcc/testsuite/gfortran.dg/zero_sized_1.f90: Uncomment checks for RESHAPE. Modified: trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/gfortran.dg/zero_sized_1.f90 trunk/libgfortran/ChangeLog trunk/libgfortran/generated/reshape_c10.c trunk/libgfortran/generated/reshape_c16.c trunk/libgfortran/generated/reshape_c4.c trunk/libgfortran/generated/reshape_c8.c trunk/libgfortran/generated/reshape_i16.c trunk/libgfortran/generated/reshape_i4.c trunk/libgfortran/generated/reshape_i8.c trunk/libgfortran/generated/reshape_r10.c trunk/libgfortran/generated/reshape_r16.c trunk/libgfortran/generated/reshape_r4.c trunk/libgfortran/generated/reshape_r8.c trunk/libgfortran/intrinsics/reshape_generic.c trunk/libgfortran/m4/reshape.m4 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27895 ^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug libfortran/27895] [4.1/4.2 only] problem with RESHAPE and zero-sized arrays 2006-06-05 7:07 [Bug fortran/27895] New: problem with SPREAD and zero-sized arrays fxcoudert at gcc dot gnu dot org ` (13 preceding siblings ...) 2006-11-03 11:51 ` fxcoudert at gcc dot gnu dot org @ 2006-11-03 12:24 ` fxcoudert at gcc dot gnu dot org 2006-11-12 21:36 ` mmitchel at gcc dot gnu dot org ` (4 subsequent siblings) 19 siblings, 0 replies; 21+ messages in thread From: fxcoudert at gcc dot gnu dot org @ 2006-11-03 12:24 UTC (permalink / raw) To: gcc-bugs ------- Comment #13 from fxcoudert at gcc dot gnu dot org 2006-11-03 12:24 ------- The patch in comments 10 and 12 will need to be backported to 4.2 and 4.1. -- fxcoudert at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- Known to fail|4.2.0 4.1.2 4.3.0 |4.2.0 4.1.2 Known to work| |4.3.0 Summary|problem with RESHAPE and |[4.1/4.2 only] problem with |zero-sized arrays |RESHAPE and zero-sized | |arrays http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27895 ^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug libfortran/27895] [4.1/4.2 only] problem with RESHAPE and zero-sized arrays 2006-06-05 7:07 [Bug fortran/27895] New: problem with SPREAD and zero-sized arrays fxcoudert at gcc dot gnu dot org ` (14 preceding siblings ...) 2006-11-03 12:24 ` [Bug libfortran/27895] [4.1/4.2 only] " fxcoudert at gcc dot gnu dot org @ 2006-11-12 21:36 ` mmitchel at gcc dot gnu dot org 2006-11-14 6:19 ` fxcoudert at gcc dot gnu dot org ` (3 subsequent siblings) 19 siblings, 0 replies; 21+ messages in thread From: mmitchel at gcc dot gnu dot org @ 2006-11-12 21:36 UTC (permalink / raw) To: gcc-bugs -- mmitchel at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- Priority|P3 |P5 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27895 ^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug libfortran/27895] [4.1/4.2 only] problem with RESHAPE and zero-sized arrays 2006-06-05 7:07 [Bug fortran/27895] New: problem with SPREAD and zero-sized arrays fxcoudert at gcc dot gnu dot org ` (15 preceding siblings ...) 2006-11-12 21:36 ` mmitchel at gcc dot gnu dot org @ 2006-11-14 6:19 ` fxcoudert at gcc dot gnu dot org 2006-11-14 6:19 ` fxcoudert at gcc dot gnu dot org ` (2 subsequent siblings) 19 siblings, 0 replies; 21+ messages in thread From: fxcoudert at gcc dot gnu dot org @ 2006-11-14 6:19 UTC (permalink / raw) To: gcc-bugs ------- Comment #14 from fxcoudert at gcc dot gnu dot org 2006-11-14 06:18 ------- Subject: Bug 27895 Author: fxcoudert Date: Tue Nov 14 06:18:36 2006 New Revision: 118804 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=118804 Log: PR libfortran/27895 * intrinsics/reshape_generic.c (reshape_internal): Fix so that it works correctly for zero-sized arrays. * m4/reshape.m4: Likewise. * generated/reshape_r16.c: Regenerate. * generated/reshape_c4.c: Regenerate. * generated/reshape_i4.c: Regenerate. * generated/reshape_c16.c: Regenerate. * generated/reshape_r10.c: Regenerate. * generated/reshape_r8.c: Regenerate. * generated/reshape_c10.c: Regenerate. * generated/reshape_c8.c: Regenerate. * generated/reshape_i8.c: Regenerate. * generated/reshape_i16.c: Regenerate. * generated/reshape_r4.c: Regenerate. * gcc/testsuite/gfortran.dg/zero_sized_1.f90: Uncomment checks for RESHAPE. Modified: branches/gcc-4_2-branch/gcc/testsuite/ChangeLog branches/gcc-4_2-branch/gcc/testsuite/gfortran.dg/zero_sized_1.f90 branches/gcc-4_2-branch/libgfortran/ChangeLog branches/gcc-4_2-branch/libgfortran/generated/reshape_c10.c branches/gcc-4_2-branch/libgfortran/generated/reshape_c16.c branches/gcc-4_2-branch/libgfortran/generated/reshape_c4.c branches/gcc-4_2-branch/libgfortran/generated/reshape_c8.c branches/gcc-4_2-branch/libgfortran/generated/reshape_i16.c branches/gcc-4_2-branch/libgfortran/generated/reshape_i4.c branches/gcc-4_2-branch/libgfortran/generated/reshape_i8.c branches/gcc-4_2-branch/libgfortran/generated/reshape_r10.c branches/gcc-4_2-branch/libgfortran/generated/reshape_r16.c branches/gcc-4_2-branch/libgfortran/generated/reshape_r4.c branches/gcc-4_2-branch/libgfortran/generated/reshape_r8.c branches/gcc-4_2-branch/libgfortran/intrinsics/reshape_generic.c branches/gcc-4_2-branch/libgfortran/m4/reshape.m4 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27895 ^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug libfortran/27895] [4.1/4.2 only] problem with RESHAPE and zero-sized arrays 2006-06-05 7:07 [Bug fortran/27895] New: problem with SPREAD and zero-sized arrays fxcoudert at gcc dot gnu dot org ` (16 preceding siblings ...) 2006-11-14 6:19 ` fxcoudert at gcc dot gnu dot org @ 2006-11-14 6:19 ` fxcoudert at gcc dot gnu dot org 2006-11-14 6:24 ` [Bug libfortran/27895] " fxcoudert at gcc dot gnu dot org 2006-12-01 0:09 ` chaoyingfu at gcc dot gnu dot org 19 siblings, 0 replies; 21+ messages in thread From: fxcoudert at gcc dot gnu dot org @ 2006-11-14 6:19 UTC (permalink / raw) To: gcc-bugs ------- Comment #15 from fxcoudert at gcc dot gnu dot org 2006-11-14 06:19 ------- Subject: Bug 27895 Author: fxcoudert Date: Tue Nov 14 06:19:04 2006 New Revision: 118805 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=118805 Log: PR libfortran/27895 * intrinsics/cshift0.c: Special cases for zero-sized arrays. * intrinsics/pack_generic.c: Likewise. * intrinsics/spread_generic.c: Likewise. * intrinsics/reshape_generic.c (reshape_internal): Fix so that it works correctly for zero-sized arrays. * m4/reshape.m4: Likewise. * generated/reshape_r16.c: Regenerate. * generated/reshape_c4.c: Regenerate. * generated/reshape_i4.c: Regenerate. * generated/reshape_c16.c: Regenerate. * generated/reshape_r10.c: Regenerate. * generated/reshape_r8.c: Regenerate. * generated/reshape_c10.c: Regenerate. * generated/reshape_c8.c: Regenerate. * generated/reshape_i8.c: Regenerate. * generated/reshape_i16.c: Regenerate. * generated/reshape_r4.c: Regenerate. * gfortran.dg/zero_sized_1.f90: New test. Added: branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/zero_sized_1.f90 - copied, changed from r117890, trunk/gcc/testsuite/gfortran.dg/zero_sized_1.f90 Modified: branches/gcc-4_1-branch/gcc/testsuite/ChangeLog branches/gcc-4_1-branch/libgfortran/ChangeLog branches/gcc-4_1-branch/libgfortran/generated/reshape_c10.c branches/gcc-4_1-branch/libgfortran/generated/reshape_c16.c branches/gcc-4_1-branch/libgfortran/generated/reshape_c4.c branches/gcc-4_1-branch/libgfortran/generated/reshape_c8.c branches/gcc-4_1-branch/libgfortran/generated/reshape_i16.c branches/gcc-4_1-branch/libgfortran/generated/reshape_i4.c branches/gcc-4_1-branch/libgfortran/generated/reshape_i8.c branches/gcc-4_1-branch/libgfortran/generated/reshape_r10.c branches/gcc-4_1-branch/libgfortran/generated/reshape_r16.c branches/gcc-4_1-branch/libgfortran/intrinsics/cshift0.c branches/gcc-4_1-branch/libgfortran/intrinsics/pack_generic.c branches/gcc-4_1-branch/libgfortran/intrinsics/reshape_generic.c branches/gcc-4_1-branch/libgfortran/intrinsics/spread_generic.c branches/gcc-4_1-branch/libgfortran/m4/reshape.m4 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27895 ^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug libfortran/27895] problem with RESHAPE and zero-sized arrays 2006-06-05 7:07 [Bug fortran/27895] New: problem with SPREAD and zero-sized arrays fxcoudert at gcc dot gnu dot org ` (17 preceding siblings ...) 2006-11-14 6:19 ` fxcoudert at gcc dot gnu dot org @ 2006-11-14 6:24 ` fxcoudert at gcc dot gnu dot org 2006-12-01 0:09 ` chaoyingfu at gcc dot gnu dot org 19 siblings, 0 replies; 21+ messages in thread From: fxcoudert at gcc dot gnu dot org @ 2006-11-14 6:24 UTC (permalink / raw) To: gcc-bugs ------- Comment #16 from fxcoudert at gcc dot gnu dot org 2006-11-14 06:24 ------- Fixed on all active release branches. -- fxcoudert at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |RESOLVED Known to fail|4.2.0 4.1.2 | Known to work|4.3.0 |4.3.0 4.2.0 4.1.2 Resolution| |FIXED Summary|[4.1/4.2 only] problem with |problem with RESHAPE and |RESHAPE and zero-sized |zero-sized arrays |arrays | Target Milestone|4.2.0 |4.1.2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27895 ^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug libfortran/27895] problem with RESHAPE and zero-sized arrays 2006-06-05 7:07 [Bug fortran/27895] New: problem with SPREAD and zero-sized arrays fxcoudert at gcc dot gnu dot org ` (18 preceding siblings ...) 2006-11-14 6:24 ` [Bug libfortran/27895] " fxcoudert at gcc dot gnu dot org @ 2006-12-01 0:09 ` chaoyingfu at gcc dot gnu dot org 19 siblings, 0 replies; 21+ messages in thread From: chaoyingfu at gcc dot gnu dot org @ 2006-12-01 0:09 UTC (permalink / raw) To: gcc-bugs ------- Comment #17 from chaoyingfu at gcc dot gnu dot org 2006-12-01 00:07 ------- Subject: Bug 27895 Author: chaoyingfu Date: Fri Dec 1 00:05:26 2006 New Revision: 119383 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=119383 Log: Merged revisions 118455-118543 via svnmerge from svn+ssh://chaoyingfu@sources.redhat.com/svn/gcc/trunk ........ r118455 | fxcoudert | 2006-11-03 03:51:09 -0800 (Fri, 03 Nov 2006) | 20 lines PR libfortran/27895 * intrinsics/reshape_generic.c (reshape_internal): Fix so that it works correctly for zero-sized arrays. * m4/reshape.m4: Likewise. * generated/reshape_r16.c: Regenerate. * generated/reshape_c4.c: Regenerate. * generated/reshape_i4.c: Regenerate. * generated/reshape_c16.c: Regenerate. * generated/reshape_r10.c: Regenerate. * generated/reshape_r8.c: Regenerate. * generated/reshape_c10.c: Regenerate. * generated/reshape_c8.c: Regenerate. * generated/reshape_i8.c: Regenerate. * generated/reshape_i16.c: Regenerate. * generated/reshape_r4.c: Regenerate. * gcc/testsuite/gfortran.dg/zero_sized_1.f90: Uncomment checks for RESHAPE. ........ r118458 | amylaar | 2006-11-03 06:52:19 -0800 (Fri, 03 Nov 2006) | 97 lines gcc: 2006-11-03 J"orn Rennecke <joern.rennecke@st.com> * config/sh/crt1.asm: Fix #ifdef indent. 2006-11-03 J"orn Rennecke <joern.rennecke@st.com> Merged from STMicroelectronics sources: 2006-10-06 Andrew Stubbs <andrew.stubbs@st.com> * config/sh/crt1.asm (vbr_600): Add missing #if. 2006-08-03 J"orn Rennecke <joern.rennecke@st.com> * sh.opt (mfused-madd): New option. * sh.md (mac_media, macsf3): Make conditional on TARGET_FMAC. 2006-07-04 Andrew Stubbs <andrew.stubbs@st.com> * config/sh/crt1.asm (vbr_start): Move to new section .test.vbr. Remove pointless handler at VBR+0. (vbr_200, vbr_300, vbr_500): Remove pointless handler. (vbr_600): Save and restore mach and macl, fpul and fpscr and fr0 to fr7. Make sure the timer handler is called with the correct FPU precision setting, according to the ABI. 2006-06-14 J"orn Rennecke <joern.rennecke@st.com> * config/sh/sh.opt (m2a-single, m2a-single-only): Fix Condition. * config/sh/sh.h (SUPPORT_SH2A_NOFPU): Fix condition. (SUPPORT_SH2A_SINGLE_ONLY, SUPPORT_SH2A_SINGLE_ONLY): Likewise. 2006-06-09 J"orn Rennecke <joern.rennecke@st.com> * sh.md (cmpgeusi_t): Change into define_insn_and_split. Accept zero as second operand. 2006-04-28 J"orn Rennecke <joern.rennecke@st.com> * config/sh/divtab-sh4-300.c, config/sh/lib1funcs-4-300.asm: Fixed some bugs related to negative values, in particular -0 and overflow at -0x80000000. * config/sh/divcost-analysis: Added sh4-300 figures. 2006-04-27 J"orn Rennecke <joern.rennecke@st.com> * config/sh/t-sh (MULTILIB_MATCHES): Add -m4-300* / -m4-340 options. 2006-04-26 J"orn Rennecke <joern.rennecke@st.com> * config/sh/t-sh (OPT_EXTRA_PARTS): Add libgcc-4-300.a. ($(T)div_table-4-300.o, $(T)libgcc-4-300.a): New rules. * config/sh/divtab-sh4-300.c, config/sh/lib1funcs-4-300.asm: New files. * config/sh/embed-elf.h (LIBGCC_SPEC): Use -lgcc-4-300 for -m4-300* / -m4-340. 2006-04-24 J"orn Rennecke <joern.rennecke@st.com> SH4-300 scheduling description & fixes to SH4-[12]00 description: * sh.md: New instruction types: fstore, movi8, fpscr_toggle, gp_mac, mac_mem, mem_mac, dfp_mul, fp_cmp. (insn_class, dfp_comp, any_fp_comp): Update. (push_fpul, movsf_ie, fpu_switch, toggle_sz, toggle_pr): Update type. (cmpgtsf_t, "cmpeqsf_t, cmpgtsf_t_i4, cmpeqsf_t_i4): Likewise. (muldf3_i): Likewise. (movsi_i): Split rI08 alternative into two separate alternatives. Update type. (movsi_ie, movsi_i_lowpart): Likewise. (movqi_i): Split ri alternative into two separate alternatives. Update type. * sh1.md (sh1_load_store, sh1_fp): Update. * sh4.md (sh4_store, sh4_mac_gp, fp_arith, fp_double_arith): Update. (mac_mem, sh4_fpscr_toggle): New insn_reservations. * sh4a.md (sh4a_mov, sh4a_load, sh4a_store, sh4a_fp_arith): Update. (sh4a_fp_double_arith): Likewise. * sh4-300.md: New file. * sh.c (sh_handle_option): Handle m4-300* options. (sh_adjust_cost): Fix latency of auto-increments. Handle SH4-300 differently than other SH4s. Check for new insn types. * sh.h (OVERRIDE_OPTIONS): Initilize sh_branch_cost if it has not been set by an option. * sh.opt (m4-300, m4-100-nofpu, m4-200-nofpu): New options. (m4-300-nofpu, -m4-340, m4-300-single, m4-300-single-only): Likewise. (mbranch-cost=): Likewise. * superh.h (STARTFILE_SPEC): Take -m4-340 into account. * sh.md (mulsf3): Remove special expansion code. (mulsf3_ie): Now a define_insn_and_split. (macsf3): Allow for TARGET_SH4. * sh.md (cbranchsi4, cbranchdi4, cbranchdi4_i): New patterns. * sh.c (prepare_cbranch_operands, expand_cbranchsi4): New functions. (expand_cbranchdi4): Likewise. (sh_rtx_costs): Give lower cost for certain CONST_INT values and for CONST_DOUBLE if the outer code is COMPARE. * sh.h (OPTIMIZATION_OPTIONS): If not optimizing for size, set TARGET_CBRANCHDI4 and TARGET_EXPAND_CBRANCHDI4. (OVERRIDE_OPTIONS): For TARGET_SHMEDIA, clear TARGET_CBRANCHDI4. (LEGITIMATE_CONSTANT_P): Also allow DImode and VOIDmode CONST_DOUBLEs. Remove redundant fp_{zero,one}_operand checks. * sh.opt (mcbranchdi, mexpand-cbranchdi, mcmpeqdi): New options. * sh-protos.h (prepare_cbranch_operands, expand_cbranchsi4): Declare. (expand_cbranchdi4): Likewise. 2006-04-20 J"orn Rennecke <joern.rennecke@st.com> * sh.h (LOCAL_ALIGNMENT): Use DATA_ALIGNMENT. gcc/testsuite: 2006-11-03 J"orn Rennecke <joern.rennecke@st.com> * testsuite/gcc.c-torture/execute/arith-rand-ll.c: Also test for bogus rest sign. ........ r118459 | davidu | 2006-11-03 09:32:39 -0800 (Fri, 03 Nov 2006) | 9 lines * config/mips/mips.h (processor_type): Removed PROCESSOR_24K, add PROCESSOR_24KC and PROCESSOR_24KF. * config/mips/mips.c (mips_cpu_info_table): Add processor names and aliases for 4kec/4kem/4kep/24kec/24kef/24kex/34kc/34kf/34kx. (mips_rtx_cost_data): Add costs for the 24kc. * config/mips/mips.md ("cpu"): Remove 24k, add 24kc and 24kf. * config/mips/24k.md: Remove references to 24k and replace with uses of 24kc/24kf in the appropriate reservations. * doc/invoke.texi (MIPS Options): Updated. ........ r118460 | davidu | 2006-11-03 09:39:44 -0800 (Fri, 03 Nov 2006) | 2 lines typo ........ r118461 | pbrook | 2006-11-03 09:49:43 -0800 (Fri, 03 Nov 2006) | 9 lines 2006-11-03 Paul Brook <paul@codesourcery.com> gcc/ * config/arm/arm.c (arm_file_start): New function. (TARGET_ASM_FILE_START): Define. (arm_default_cpu): New variable. (arm_override_options): Set arm_default_cpu. ........ r118465 | steven | 2006-11-03 14:12:37 -0800 (Fri, 03 Nov 2006) | 15 lines * tree-dump.c (dump_enable_all): Rename local variable ir_type to avoid name conflicts. * cfgloopmanip.c (lv_adjust_loop_entry_edge): Check for IR_GIMPLE instead of using ir_type(). * profile.c (tree_register_profile_hooks): Likewise. * value-prof.c (tree_register_value_prof_hooks): Likewise. * basic-block.h (struct edge_def): Likewise. * config/arm/arm.c (legitimize_pic_address): Likewise. * coretypes.h (ir_type): New enum of all intermediate languages used in GCC. * cfghooks.c (ir_type): Rename to... (current_ir_type): ...this. Distinguish between cfgrtl and cfglayout mode when the current IR is RTL. Return enum ir_type. * cfghooks.h (ir_type): Replace with current_ir_type prototype. ........ r118470 | gccadmin | 2006-11-03 16:17:39 -0800 (Fri, 03 Nov 2006) | 1 line Daily bump. ........ r118472 | sayle | 2006-11-03 16:51:51 -0800 (Fri, 03 Nov 2006) | 11 lines * call.c (build_op_delete_call): Test user-visible type against size_type_node, instead of against the internal type, sizetype. * class.c (type_requires_array_cookie): Likewise. * mangle.c (write_builtin_type) <INTEGER_TYPE>: Remove special handling of TYPE_IS_SIZETYPE. * typeck.c (type_after_usual_arithmetic_conversions): Remove special case handling of TYPE_IS_SIZETYPE. (comptypes): Likewise. ........ r118474 | geoffk | 2006-11-03 18:59:52 -0800 (Fri, 03 Nov 2006) | 4 lines * c-decl.c (WANT_C99_INLINE_SEMANTICS): New, set to 1. (merge_decls): Implement WANT_C99_INLINE_SEMANTICS. (grokdeclarator): Likewise. ........ r118475 | bonzini | 2006-11-04 00:36:45 -0800 (Sat, 04 Nov 2006) | 30 lines 2006-11-03 Paolo Bonzini <bonzini@gnu.org> Steven Bosscher <stevenb.gcc@gmail.com> * fwprop.c: New file. * Makefile.in: Add fwprop.o. * tree-pass.h (pass_rtl_fwprop, pass_rtl_fwprop_with_addr): New. * passes.c (init_optimization_passes): Schedule forward propagation. * rtlanal.c (loc_mentioned_in_p): Support NULL value of the second parameter. * timevar.def (TV_FWPROP): New. * common.opt (-fforward-propagate): New. * opts.c (decode_options): Enable forward propagation at -O2. * gcse.c (one_cprop_pass): Do not run local cprop unless touching jumps. * cse.c (fold_rtx_subreg, fold_rtx_mem, fold_rtx_mem_1, find_best_addr, canon_for_address, table_size): Remove. (new_basic_block, insert, remove_from_table): Remove references to table_size. (fold_rtx): Process SUBREGs and MEMs with equiv_constant, make simplification loop more straightforward by not calling fold_rtx recursively. (equiv_constant): Move here a small part of fold_rtx_subreg, do not call fold_rtx. Call avoid_constant_pool_reference to process MEMs. * recog.c (canonicalize_change_group): New. * recog.h (canonicalize_change_group): New. * doc/invoke.texi (Optimization Options): Document fwprop. * doc/passes.texi (RTL passes): Document fwprop. ........ r118478 | steven | 2006-11-04 03:13:57 -0800 (Sat, 04 Nov 2006) | 2 lines ChangeLog fix ........ r118479 | uros | 2006-11-04 04:07:29 -0800 (Sat, 04 Nov 2006) | 4 lines * config/i386/i386.md (*movxf_nointeger, *movxf_integer): Enable patterns for standard 80387 constants. ........ r118481 | rearnsha | 2006-11-04 06:26:34 -0800 (Sat, 04 Nov 2006) | 2 lines * arm.c (thumb_legitimate_addres_p): Allow any constant offset from the soft-frame, argument and virtual registers. ........ r118483 | fxcoudert | 2006-11-04 12:58:26 -0800 (Sat, 04 Nov 2006) | 6 lines PR fortran/29713 * expr.c (gfc_simplify_expr): Correct memory allocation. * gfortran.dg/pr29713.f90: New test. ........ r118484 | uros | 2006-11-04 15:12:16 -0800 (Sat, 04 Nov 2006) | 14 lines PR target/26915 * config/i386/i386.c (standard_80387_constant_p): Treat -0.0 and -1.0 as a valid 80387 constant. (standard_80387_constant_opcode): Return "#" for -0.0 and -1.0. * config/i386/i386.md (unnamed splitter): Split the load of constant -0.0 or -1.0 into the load of 0.0 or 1.0, followed by negation. testsuite/ChangeLog: PR target/26915 * gcc.target/i386/387-12.c: New test. ~ ........ r118489 | gccadmin | 2006-11-04 16:17:22 -0800 (Sat, 04 Nov 2006) | 1 line Daily bump. ........ r118491 | brooks | 2006-11-04 16:28:08 -0800 (Sat, 04 Nov 2006) | 6 lines * fortran/error.c (show_locus): Add trailing colon in error messages. (error_print): Avoid leading space in error lines. * testsuite/lib/gfortran-dg.exp (gfortran-dg-test): Adjust pattern for matching error messages. ........ r118492 | pault | 2006-11-04 22:27:48 -0800 (Sat, 04 Nov 2006) | 18 lines 2006-11-05 Francois-Xavier Coudert <fxcoudert@gcc.gnu,org> Paul Thomas <pault@gcc.gnu.org> PR fortran/24518 * trans-intrinsic.c (gfc_conv_intrinsic_mod): Use built_in fmod for both MOD and MODULO, if it is available. PR fortran/29565 * trans-expr.c (gfc_conv_aliased_arg): For an INTENT(OUT), save the declarations from the unused loops by merging the block scope for each; this ensures that the temporary is declared. 2006-11-05 Paul Thomas <pault@gcc.gnu.org> PR fortran/29565 * gfortran.dg/gfortran.dg/aliasing_dummy_3.f90: New test. ........ r118494 | ebotcazou | 2006-11-05 02:19:18 -0800 (Sun, 05 Nov 2006) | 1 line Fix typos. ........ r118496 | charlet | 2006-11-05 02:58:41 -0800 (Sun, 05 Nov 2006) | 4 lines * s-osinte-linux-alpha.ads, s-osinte-linux-hppa.ads (To_Target_Priority): New function. Fix PR ada/29707 ........ r118497 | jakub | 2006-11-05 04:13:46 -0800 (Sun, 05 Nov 2006) | 7 lines PR middle-end/29695 * fold-const.c (fold_ternary): Fix A < 0 ? <sign bit of A> : 0 simplification. * gcc.c-torture/execute/pr29695-1.c: New test. * gcc.c-torture/execute/pr29695-2.c: New test. ........ r118500 | kkojima | 2006-11-05 04:58:28 -0800 (Sun, 05 Nov 2006) | 4 lines * config/sh/lib1funcs-4-300.asm: Guard entire file with #if !__SHMEDIA__ . ........ r118501 | aldot | 2006-11-05 06:57:24 -0800 (Sun, 05 Nov 2006) | 9 lines 2006-11-05 Bernhard Fischer <aldot@gcc.gnu.org> PR fortran/21061 * error.c (gfc_warning): If warnings_are_errors then treat warnings as errors with respect to the exit code. (gfc_notify_std): Ditto. (gfc_warning_now): Ditto. ........ r118502 | paolo | 2006-11-05 08:17:03 -0800 (Sun, 05 Nov 2006) | 6 lines 2006-11-05 Paolo Carlini <pcarlini@suse.de> * docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 45. * docs/html/ext/lwg-closed.html: Add. * docs/html/ext/howto.html: Adjust. ........ r118506 | jvdelisle | 2006-11-05 09:35:30 -0800 (Sun, 05 Nov 2006) | 10 lines 2006-11-04 Jerry DeLisle <jvdelisle@gcc.gnu.org> PR libgfortran/25545 * io/transfer.c (write_block): Cleanup code paths between stream and non-stream I/O. (write_buf): Cleanup. (read_block): Cleanup. (finalize_transfer): Call next_record for '$' edit descriptor handling of internal unit. Cleanup code for readability. ........ r118507 | jvdelisle | 2006-11-05 09:40:42 -0800 (Sun, 05 Nov 2006) | 5 lines 2006-11-05 Jerry DeLisle <jvdelisle@gcc.gnu.org> PR libgfortran/25545 * gfortran.dg/dollar_edit_descriptor-2.f: New test. ........ r118508 | jvdelisle | 2006-11-05 09:54:17 -0800 (Sun, 05 Nov 2006) | 4 lines 2006-11-05 Jerry DeLisle <jvdelisle@gcc.gnu.org> * io/transfer.c (next_record_w): Fix indentation. ........ r118515 | gccadmin | 2006-11-05 16:17:47 -0800 (Sun, 05 Nov 2006) | 1 line Daily bump. ........ r118518 | vprus | 2006-11-06 01:49:07 -0800 (Mon, 06 Nov 2006) | 10 lines * config/arm/t-strongarm-pe: (TARGET_LIBGCC2_CFLAGS): Do no set inhibit_libc. * config/arm/t-strongarm-elf: Likewise. * config/arm/t-pe: Likewise. * config/arm/t-arm-elf: Likewise. * config/arm/t-xscale-elf: Likewise. * config/arm/t-arm-coff: Likewise. * config/arm/t-xscale-coff: Likewise. * config/arm/t-wince-pe: Likewise. ........ r118523 | fche | 2006-11-06 10:02:13 -0800 (Mon, 06 Nov 2006) | 10 lines 2006-11-06 Frank Ch. Eigler <fche@redhat.com> * configure.ac (__libc_freeres): Look for it. * mf-impl.h (call_libc_freeres): New configuration flag. * mf-runtime.c (__mf_set_default_options): Set it by default. (__mfu_report): Call it if needed. (__mfu_unregister): Remove "unaccessed registered object" warning. * configure, config.h.in: Regenerated. ........ r118524 | bwilson | 2006-11-06 10:50:37 -0800 (Mon, 06 Nov 2006) | 24 lines * longlong.h (__xtensa__): Add definitions for umul_ppmm, __umulsidi3, count_leading_zeros, and count_trailing_zeros. * config/xtensa/xtensa.c (TARGET_INIT_BUILTINS): Define. (TARGET_FOLD_BUILTIN): Define. (TARGET_EXPAND_BUILTIN): Define. (xtensa_init_builtins): New. (xtensa_fold_builtin): New. (xtensa_expand_builtin): New. (xtensa_rtx_costs): Add CTZ and CLZ. Adjust costs for MULT. * config/xtensa/xtensa.h (TARGET_MUL32_HIGH): Define. (CLZ_DEFINED_VALUE_AT_ZERO): Define. (CTZ_DEFINED_VALUE_AT_ZERO): Define. * config/xtensa/xtensa.md (UNSPEC_NSAU): Remove. (any_extend): New code macro. (u, su): New code attributes. (<u>mulsidi3, <u>mulsi3_highpart, clzsi2, ctzsi2): New. (nsau): Remove; replaced by clzsi2. (ffssi2): Use clzsi2. * config/xtensa/t-xtensa (LIB1ASMFUNCS): Add _umulsidi3, _clzsi2, _ctzsi2, and _ffssi2. Rename _nsau to _clz. * config/xtensa/lib1funcs.asm (__mulsi3): Support Mul32 option. (__umulsidi3, __clzsi2, __ctzsi2, __ffssi2): New. (__nsau_data): Guard with ifdef L_clz instead of L_nsau. ........ r118525 | dannysmith | 2006-11-06 11:49:31 -0800 (Mon, 06 Nov 2006) | 5 lines 2006-11-06 Jan van Dijk <jan@etpmod.phys.tue.nl> * configure.ac: Fix typo in case statement: :: changed to ;; * configure: Regenerate. ........ r118526 | fche | 2006-11-06 12:04:14 -0800 (Mon, 06 Nov 2006) | 6 lines 2006-11-06 Frank Ch. Eigler <fche@redhat.com> From Herman ten Brugge <hermantenbrugge@home.nl>: * mf-runtime.c (__mf_uncache_object): Optimize the code so that small and large objects are handled a lot faster. ........ r118528 | eedelman | 2006-11-06 14:18:54 -0800 (Mon, 06 Nov 2006) | 18 lines fortran/ 2006-11-06 Erik Edelmann <eedelman@gcc.gnu.org> PR fortran/29630 PR fortran/29679 * expr.c (find_array_section): Support vector subscripts. Don't add sizes for dimen_type == DIMEN_ELEMENT to the shape array. testsuite/ 2006-11-06 Erik Edelmann <eedelman@gcc.gnu.org> PR fortran/29630 PR fortran/29679 * gfortran.dg/initialization_2.f90: Test PRs 29630 and 29679 too. * gfortran.dg/initialization_3.f90: New. ........ r118530 | pinskia | 2006-11-06 15:25:19 -0800 (Mon, 06 Nov 2006) | 7 lines 2006-11-06 Andrew Pinski <andrew_pinski@playstation.sony.com> PR tree-opt/29439 * tree-vrp.c (vrp_int_const_binop): Use the correct tree when checking for overflow. ........ r118531 | janis | 2006-11-06 16:08:32 -0800 (Mon, 06 Nov 2006) | 22 lines gcc/ 2006-11-06 Janis Johnson <janis187@us.ibm.com> * gcc/doc/sourcebuild.texi (Test Directives): Add output-exists and output-exists-not. gcc/testsuite/ 2006-11-06 Janis Johnson <janis187@us.ibm.com Bernhard Fischer <aldot@gcc.gnu.org> * lib/gcc-dg.exp (output-exists): New proc. (output-exists-not): New proc. * gcc.test-framework/test-framework.awk: Support new directives. * gcc.test-framework/dg-outexistsnot-exp-F.c: New test. * gcc.test-framework/dg-outexistsnot-exp-P.c: New test. * gcc.test-framework/dg-outexists-exp-F.c: New test. * gcc.test-framework/dg-outexists-exp-XP.c: New test. * gcc.test-framework/dg-outexistsnot-exp-XF.c: New test. * gcc.test-framework/dg-outexists-exp-P.c: New test. ........ r118536 | gccadmin | 2006-11-06 16:17:48 -0800 (Mon, 06 Nov 2006) | 1 line Daily bump. ........ r118538 | brooks | 2006-11-06 17:49:55 -0800 (Mon, 06 Nov 2006) | 3 lines * intrinsic.texi: Added documentation for FTELL, GETLOG, and HOSTNM intrinsics. ........ r118540 | brooks | 2006-11-06 17:52:49 -0800 (Mon, 06 Nov 2006) | 2 lines Fixed incorrect date in changelog entry. ........ r118541 | echristo | 2006-11-06 21:40:34 -0800 (Mon, 06 Nov 2006) | 7 lines 2006-11-06 Eric Christopher <echristo@apple.com> * config.gcc: Add x86_64-darwin host support. * config.host: Ditto. * config/i386/darwin64.h: New file. * config/i386/t-darwin64: Ditto. ........ r118542 | burnus | 2006-11-07 01:11:08 -0800 (Tue, 07 Nov 2006) | 21 lines fortran/ 2006-11-06 Tobias Burnus <burnus@net-b.de> * decl.c (match_attr_spec, gfc_match_enum): Unify gfc_notify_std message for GFC_STD_F2003. * array.c (gfc_match_array_constructor): Unify gfc_notify_std message for GFC_STD_F2003. * io.c (check_io_constraints): Unify gfc_notify_std message for GFC_STD_F2003. * resolve.c (resolve_actual_arglist): Unify gfc_notify_std message for GFC_STD_F2003. testsuite/ 2006-11-06 Tobias Burnus <burnus@net-b.de> * gfortran.dg/io_constraints_2.f90: Adjust pattern for matching error messages. * gfortran.dg/specifics_3.f90: Adjust pattern for matching error messages. ........ r118543 | bkoz | 2006-11-07 04:33:20 -0800 (Tue, 07 Nov 2006) | 8 lines 2006-11-07 Benjamin Kosnik <bkoz@redhat.com> * include/ext/pb_ds/exception.hpp: Add translation support to exception strings. * include/ext/concurrence.h: Same. * include/tr1/array: Same. ........ Added: branches/fixed-point/gcc/config/i386/darwin64.h - copied unchanged from r118543, trunk/gcc/config/i386/darwin64.h branches/fixed-point/gcc/config/i386/t-darwin64 - copied unchanged from r118543, trunk/gcc/config/i386/t-darwin64 branches/fixed-point/gcc/testsuite/gcc.test-framework/dg-outexists-exp-F.c - copied unchanged from r118543, trunk/gcc/testsuite/gcc.test-framework/dg-outexists-exp-F.c branches/fixed-point/gcc/testsuite/gcc.test-framework/dg-outexists-exp-P.c - copied unchanged from r118543, trunk/gcc/testsuite/gcc.test-framework/dg-outexists-exp-P.c branches/fixed-point/gcc/testsuite/gcc.test-framework/dg-outexists-exp-XP.c - copied unchanged from r118543, trunk/gcc/testsuite/gcc.test-framework/dg-outexists-exp-XP.c branches/fixed-point/gcc/testsuite/gcc.test-framework/dg-outexistsnot-exp-F.c - copied unchanged from r118543, trunk/gcc/testsuite/gcc.test-framework/dg-outexistsnot-exp-F.c branches/fixed-point/gcc/testsuite/gcc.test-framework/dg-outexistsnot-exp-P.c - copied unchanged from r118543, trunk/gcc/testsuite/gcc.test-framework/dg-outexistsnot-exp-P.c branches/fixed-point/gcc/testsuite/gcc.test-framework/dg-outexistsnot-exp-XF.c - copied unchanged from r118543, trunk/gcc/testsuite/gcc.test-framework/dg-outexistsnot-exp-XF.c Modified: branches/fixed-point/ (props changed) branches/fixed-point/gcc/ChangeLog branches/fixed-point/gcc/DATESTAMP branches/fixed-point/gcc/Makefile.in branches/fixed-point/gcc/ada/ChangeLog branches/fixed-point/gcc/ada/s-osinte-linux-alpha.ads branches/fixed-point/gcc/ada/s-osinte-linux-hppa.ads branches/fixed-point/gcc/basic-block.h branches/fixed-point/gcc/c-decl.c branches/fixed-point/gcc/cfghooks.c branches/fixed-point/gcc/cfghooks.h branches/fixed-point/gcc/cfgloopmanip.c branches/fixed-point/gcc/common.opt branches/fixed-point/gcc/config.gcc branches/fixed-point/gcc/config.host branches/fixed-point/gcc/config/arm/arm.c branches/fixed-point/gcc/config/arm/t-arm-coff branches/fixed-point/gcc/config/arm/t-arm-elf branches/fixed-point/gcc/config/arm/t-pe branches/fixed-point/gcc/config/arm/t-strongarm-elf branches/fixed-point/gcc/config/arm/t-strongarm-pe branches/fixed-point/gcc/config/arm/t-wince-pe branches/fixed-point/gcc/config/arm/t-xscale-coff branches/fixed-point/gcc/config/arm/t-xscale-elf branches/fixed-point/gcc/config/i386/i386.c branches/fixed-point/gcc/config/i386/i386.md branches/fixed-point/gcc/config/mips/24k.md branches/fixed-point/gcc/config/mips/mips.c branches/fixed-point/gcc/config/mips/mips.h branches/fixed-point/gcc/config/mips/mips.md branches/fixed-point/gcc/config/sh/crt1.asm branches/fixed-point/gcc/config/sh/divcost-analysis branches/fixed-point/gcc/config/sh/embed-elf.h branches/fixed-point/gcc/config/sh/sh-protos.h branches/fixed-point/gcc/config/sh/sh.c branches/fixed-point/gcc/config/sh/sh.h branches/fixed-point/gcc/config/sh/sh.md branches/fixed-point/gcc/config/sh/sh.opt branches/fixed-point/gcc/config/sh/sh1.md branches/fixed-point/gcc/config/sh/sh4.md branches/fixed-point/gcc/config/sh/sh4a.md branches/fixed-point/gcc/config/sh/superh.h branches/fixed-point/gcc/config/sh/t-sh branches/fixed-point/gcc/config/xtensa/lib1funcs.asm branches/fixed-point/gcc/config/xtensa/t-xtensa branches/fixed-point/gcc/config/xtensa/xtensa.c branches/fixed-point/gcc/config/xtensa/xtensa.h branches/fixed-point/gcc/config/xtensa/xtensa.md branches/fixed-point/gcc/configure branches/fixed-point/gcc/configure.ac branches/fixed-point/gcc/coretypes.h branches/fixed-point/gcc/cp/ChangeLog branches/fixed-point/gcc/cp/call.c branches/fixed-point/gcc/cp/class.c branches/fixed-point/gcc/cp/mangle.c branches/fixed-point/gcc/cp/typeck.c branches/fixed-point/gcc/cse.c branches/fixed-point/gcc/doc/invoke.texi branches/fixed-point/gcc/doc/passes.texi branches/fixed-point/gcc/doc/sourcebuild.texi branches/fixed-point/gcc/fold-const.c branches/fixed-point/gcc/fortran/ChangeLog branches/fixed-point/gcc/fortran/array.c branches/fixed-point/gcc/fortran/decl.c branches/fixed-point/gcc/fortran/error.c branches/fixed-point/gcc/fortran/expr.c branches/fixed-point/gcc/fortran/f95-lang.c branches/fixed-point/gcc/fortran/intrinsic.texi branches/fixed-point/gcc/fortran/io.c branches/fixed-point/gcc/fortran/resolve.c branches/fixed-point/gcc/fortran/trans-expr.c branches/fixed-point/gcc/fortran/trans-intrinsic.c branches/fixed-point/gcc/gcse.c branches/fixed-point/gcc/longlong.h branches/fixed-point/gcc/opts.c branches/fixed-point/gcc/passes.c branches/fixed-point/gcc/profile.c branches/fixed-point/gcc/recog.c branches/fixed-point/gcc/recog.h branches/fixed-point/gcc/rtlanal.c branches/fixed-point/gcc/testsuite/ChangeLog branches/fixed-point/gcc/testsuite/gcc.c-torture/execute/arith-rand-ll.c branches/fixed-point/gcc/testsuite/gcc.test-framework/test-framework.awk branches/fixed-point/gcc/testsuite/gfortran.dg/initialization_2.f90 branches/fixed-point/gcc/testsuite/gfortran.dg/io_constraints_2.f90 branches/fixed-point/gcc/testsuite/gfortran.dg/specifics_3.f90 branches/fixed-point/gcc/testsuite/gfortran.dg/zero_sized_1.f90 branches/fixed-point/gcc/testsuite/lib/gcc-dg.exp branches/fixed-point/gcc/testsuite/lib/gfortran-dg.exp branches/fixed-point/gcc/timevar.def branches/fixed-point/gcc/tree-dump.c branches/fixed-point/gcc/tree-pass.h branches/fixed-point/gcc/tree-vrp.c branches/fixed-point/gcc/value-prof.c branches/fixed-point/libgfortran/ChangeLog branches/fixed-point/libgfortran/generated/reshape_c10.c branches/fixed-point/libgfortran/generated/reshape_c16.c branches/fixed-point/libgfortran/generated/reshape_c4.c branches/fixed-point/libgfortran/generated/reshape_c8.c branches/fixed-point/libgfortran/generated/reshape_i16.c branches/fixed-point/libgfortran/generated/reshape_i4.c branches/fixed-point/libgfortran/generated/reshape_i8.c branches/fixed-point/libgfortran/generated/reshape_r10.c branches/fixed-point/libgfortran/generated/reshape_r16.c branches/fixed-point/libgfortran/generated/reshape_r4.c branches/fixed-point/libgfortran/generated/reshape_r8.c branches/fixed-point/libgfortran/intrinsics/reshape_generic.c branches/fixed-point/libgfortran/io/transfer.c branches/fixed-point/libgfortran/m4/reshape.m4 branches/fixed-point/libmudflap/ChangeLog branches/fixed-point/libmudflap/config.h.in branches/fixed-point/libmudflap/configure branches/fixed-point/libmudflap/configure.ac branches/fixed-point/libmudflap/mf-impl.h branches/fixed-point/libmudflap/mf-runtime.c branches/fixed-point/libstdc++-v3/ChangeLog branches/fixed-point/libstdc++-v3/docs/html/ext/howto.html branches/fixed-point/libstdc++-v3/docs/html/ext/lwg-active.html branches/fixed-point/libstdc++-v3/docs/html/ext/lwg-defects.html branches/fixed-point/libstdc++-v3/include/ext/concurrence.h branches/fixed-point/libstdc++-v3/include/ext/pb_ds/exception.hpp branches/fixed-point/libstdc++-v3/include/tr1/array Propchange: branches/fixed-point/ ('svnmerge-integrated' modified) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27895 ^ permalink raw reply [flat|nested] 21+ messages in thread
end of thread, other threads:[~2006-12-01 0:09 UTC | newest] Thread overview: 21+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2006-06-05 7:07 [Bug fortran/27895] New: problem with SPREAD and zero-sized arrays fxcoudert at gcc dot gnu dot org 2006-06-05 9:20 ` [Bug fortran/27895] " fxcoudert at gcc dot gnu dot org 2006-06-05 9:25 ` [Bug libfortran/27895] " fxcoudert at gcc dot gnu dot org 2006-06-05 13:46 ` fxcoudert at gcc dot gnu dot org 2006-06-05 14:24 ` fxcoudert at gcc dot gnu dot org 2006-06-05 16:23 ` fxcoudert at gcc dot gnu dot org 2006-06-05 22:44 ` fxcoudert at gcc dot gnu dot org 2006-06-19 12:34 ` fxcoudert at gcc dot gnu dot org 2006-06-20 6:07 ` fxcoudert at gcc dot gnu dot org 2006-06-24 23:08 ` fxcoudert at gcc dot gnu dot org 2006-07-26 8:35 ` fxcoudert at gcc dot gnu dot org 2006-10-19 21:49 ` fxcoudert at gcc dot gnu dot org 2006-10-19 21:59 ` [Bug libfortran/27895] problem with RESHAPE " fxcoudert at gcc dot gnu dot org 2006-11-03 7:34 ` fxcoudert at gcc dot gnu dot org 2006-11-03 11:51 ` fxcoudert at gcc dot gnu dot org 2006-11-03 12:24 ` [Bug libfortran/27895] [4.1/4.2 only] " fxcoudert at gcc dot gnu dot org 2006-11-12 21:36 ` mmitchel at gcc dot gnu dot org 2006-11-14 6:19 ` fxcoudert at gcc dot gnu dot org 2006-11-14 6:19 ` fxcoudert at gcc dot gnu dot org 2006-11-14 6:24 ` [Bug libfortran/27895] " fxcoudert at gcc dot gnu dot org 2006-12-01 0:09 ` chaoyingfu at gcc dot gnu dot 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).