public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug libfortran/34670] New: bounds checking for array intrinsics
@ 2008-01-04 11:14 tkoenig at gcc dot gnu dot org
2008-01-05 4:05 ` [Bug libfortran/34670] " jvdelisle at gcc dot gnu dot org
` (18 more replies)
0 siblings, 19 replies; 20+ messages in thread
From: tkoenig at gcc dot gnu dot org @ 2008-01-04 11:14 UTC (permalink / raw)
To: gcc-bugs
None of the array intrinsics in generated/* currently
perform bounds checking. The runtime flag exists,
but is currently mostly unused.
--
Summary: bounds checking for array intrinsics
Product: gcc
Version: 4.3.0
Status: UNCONFIRMED
Keywords: diagnostic
Severity: normal
Priority: P3
Component: libfortran
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: tkoenig at gcc dot gnu dot org
OtherBugsDependingO 27766
nThis:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34670
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug libfortran/34670] bounds checking for array intrinsics
2008-01-04 11:14 [Bug libfortran/34670] New: bounds checking for array intrinsics tkoenig at gcc dot gnu dot org
@ 2008-01-05 4:05 ` jvdelisle at gcc dot gnu dot org
2008-01-05 12:11 ` tkoenig at netcologne dot de
` (17 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: jvdelisle at gcc dot gnu dot org @ 2008-01-05 4:05 UTC (permalink / raw)
To: gcc-bugs
------- Comment #1 from jvdelisle at gcc dot gnu dot org 2008-01-05 00:01 -------
Do we want the overhead of bounds checking at run time on all these intrinsics?
Is there a way to do it without the overhead?
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34670
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug libfortran/34670] bounds checking for array intrinsics
2008-01-04 11:14 [Bug libfortran/34670] New: bounds checking for array intrinsics tkoenig at gcc dot gnu dot org
2008-01-05 4:05 ` [Bug libfortran/34670] " jvdelisle at gcc dot gnu dot org
@ 2008-01-05 12:11 ` tkoenig at netcologne dot de
2008-01-05 16:18 ` tkoenig at gcc dot gnu dot org
` (16 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: tkoenig at netcologne dot de @ 2008-01-05 12:11 UTC (permalink / raw)
To: gcc-bugs
------- Comment #2 from tkoenig at netcologne dot de 2008-01-05 11:48 -------
Subject: Re: bounds checking for array intrinsics
Hi Jerry,
> Do we want the overhead of bounds checking at run time on all these intrinsics?
In the case of no bounds checking, it's a single if statement.
> Is there a way to do it without the overhead?
We could duplicate every intrinsic array function, one version with
bounds checking and one without, then call the appropriate function.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34670
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug libfortran/34670] bounds checking for array intrinsics
2008-01-04 11:14 [Bug libfortran/34670] New: bounds checking for array intrinsics tkoenig at gcc dot gnu dot org
2008-01-05 4:05 ` [Bug libfortran/34670] " jvdelisle at gcc dot gnu dot org
2008-01-05 12:11 ` tkoenig at netcologne dot de
@ 2008-01-05 16:18 ` tkoenig at gcc dot gnu dot org
2008-01-06 21:51 ` tkoenig at gcc dot gnu dot org
` (15 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: tkoenig at gcc dot gnu dot org @ 2008-01-05 16:18 UTC (permalink / raw)
To: gcc-bugs
--
tkoenig at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
AssignedTo|unassigned at gcc dot gnu |tkoenig at gcc dot gnu dot
|dot org |org
Status|UNCONFIRMED |ASSIGNED
Ever Confirmed|0 |1
Last reconfirmed|0000-00-00 00:00:00 |2008-01-05 15:25:19
date| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34670
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug libfortran/34670] bounds checking for array intrinsics
2008-01-04 11:14 [Bug libfortran/34670] New: bounds checking for array intrinsics tkoenig at gcc dot gnu dot org
` (2 preceding siblings ...)
2008-01-05 16:18 ` tkoenig at gcc dot gnu dot org
@ 2008-01-06 21:51 ` tkoenig at gcc dot gnu dot org
2008-01-06 21:55 ` tkoenig at gcc dot gnu dot org
` (14 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: tkoenig at gcc dot gnu dot org @ 2008-01-06 21:51 UTC (permalink / raw)
To: gcc-bugs
------- Comment #3 from tkoenig at gcc dot gnu dot org 2008-01-06 21:44 -------
Created an attachment (id=14888)
--> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=14888&action=view)
partial implementation
This is an implementation for the array intrinsics, but I'm having
trouble with writing test cases. See next attachment.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34670
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug libfortran/34670] bounds checking for array intrinsics
2008-01-04 11:14 [Bug libfortran/34670] New: bounds checking for array intrinsics tkoenig at gcc dot gnu dot org
` (3 preceding siblings ...)
2008-01-06 21:51 ` tkoenig at gcc dot gnu dot org
@ 2008-01-06 21:55 ` tkoenig at gcc dot gnu dot org
2008-01-11 21:19 ` tkoenig at gcc dot gnu dot org
` (13 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: tkoenig at gcc dot gnu dot org @ 2008-01-06 21:55 UTC (permalink / raw)
To: gcc-bugs
------- Comment #4 from tkoenig at gcc dot gnu dot org 2008-01-06 21:46 -------
Created an attachment (id=14889)
--> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=14889&action=view)
Test case that doesn't work
This test case fails with my patch, although the "dg-shouldfail" directive
should take care of that.
Does anybody have any idea what I could do here? If I can't get this
to work, I'll submit the patch without test cases.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34670
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug libfortran/34670] bounds checking for array intrinsics
2008-01-04 11:14 [Bug libfortran/34670] New: bounds checking for array intrinsics tkoenig at gcc dot gnu dot org
` (4 preceding siblings ...)
2008-01-06 21:55 ` tkoenig at gcc dot gnu dot org
@ 2008-01-11 21:19 ` tkoenig at gcc dot gnu dot org
2008-01-26 20:10 ` tkoenig at gcc dot gnu dot org
` (12 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: tkoenig at gcc dot gnu dot org @ 2008-01-11 21:19 UTC (permalink / raw)
To: gcc-bugs
------- Comment #5 from tkoenig at gcc dot gnu dot org 2008-01-11 20:21 -------
Subject: Bug 34670
Author: tkoenig
Date: Fri Jan 11 20:21:05 2008
New Revision: 131473
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=131473
Log:
2008-01-11 Thomas Koenig <tkoenig@gcc.gnu.org>
PR libfortran/34670
* m4/iparm.m4 (upcase): New macro (copied from the m4 manual).
(u_name): New macro for the upper case name of the intrinsic.
* m4/iforeach.m4 (name`'rtype_qual`_'atype_code): Add
bounds checking and rank check, depending on
compile_options.bounds_check.
(`m'name`'rtype_qual`_'atype_code): Likewise.
(`s'name`'rtype_qual`_'atype_code): Likewise.
* m4/ifunction.m4 (name`'rtype_qual`_'atype_code): Add
bounds checking and rank check, depending on
compile_options.bounds_check.
(`m'name`'rtype_qual`_'atype_code): Likewise.
(`s'name`'rtype_qual`_'atype_code): Likewise.
* generated/all_l16.c: Regenerated.
* generated/all_l4.c: Regenerated.
* generated/all_l8.c: Regenerated.
* generated/any_l16.c: Regenerated.
* generated/any_l4.c: Regenerated.
* generated/any_l8.c: Regenerated.
* generated/count_16_l16.c: Regenerated.
* generated/count_16_l4.c: Regenerated.
* generated/count_16_l8.c: Regenerated.
* generated/count_4_l16.c: Regenerated.
* generated/count_4_l4.c: Regenerated.
* generated/count_4_l8.c: Regenerated.
* generated/count_8_l16.c: Regenerated.
* generated/count_8_l4.c: Regenerated.
* generated/count_8_l8.c: Regenerated.
* generated/maxloc0_16_i1.c: Regenerated.
* generated/maxloc0_16_i16.c: Regenerated.
* generated/maxloc0_16_i2.c: Regenerated.
* generated/maxloc0_16_i4.c: Regenerated.
* generated/maxloc0_16_i8.c: Regenerated.
* generated/maxloc0_16_r10.c: Regenerated.
* generated/maxloc0_16_r16.c: Regenerated.
* generated/maxloc0_16_r4.c: Regenerated.
* generated/maxloc0_16_r8.c: Regenerated.
* generated/maxloc0_4_i1.c: Regenerated.
* generated/maxloc0_4_i16.c: Regenerated.
* generated/maxloc0_4_i2.c: Regenerated.
* generated/maxloc0_4_i4.c: Regenerated.
* generated/maxloc0_4_i8.c: Regenerated.
* generated/maxloc0_4_r10.c: Regenerated.
* generated/maxloc0_4_r16.c: Regenerated.
* generated/maxloc0_4_r4.c: Regenerated.
* generated/maxloc0_4_r8.c: Regenerated.
* generated/maxloc0_8_i1.c: Regenerated.
* generated/maxloc0_8_i16.c: Regenerated.
* generated/maxloc0_8_i2.c: Regenerated.
* generated/maxloc0_8_i4.c: Regenerated.
* generated/maxloc0_8_i8.c: Regenerated.
* generated/maxloc0_8_r10.c: Regenerated.
* generated/maxloc0_8_r16.c: Regenerated.
* generated/maxloc0_8_r4.c: Regenerated.
* generated/maxloc0_8_r8.c: Regenerated.
* generated/maxloc1_16_i1.c: Regenerated.
* generated/maxloc1_16_i16.c: Regenerated.
* generated/maxloc1_16_i2.c: Regenerated.
* generated/maxloc1_16_i4.c: Regenerated.
* generated/maxloc1_16_i8.c: Regenerated.
* generated/maxloc1_16_r10.c: Regenerated.
* generated/maxloc1_16_r16.c: Regenerated.
* generated/maxloc1_16_r4.c: Regenerated.
* generated/maxloc1_16_r8.c: Regenerated.
* generated/maxloc1_4_i1.c: Regenerated.
* generated/maxloc1_4_i16.c: Regenerated.
* generated/maxloc1_4_i2.c: Regenerated.
* generated/maxloc1_4_i4.c: Regenerated.
* generated/maxloc1_4_i8.c: Regenerated.
* generated/maxloc1_4_r10.c: Regenerated.
* generated/maxloc1_4_r16.c: Regenerated.
* generated/maxloc1_4_r4.c: Regenerated.
* generated/maxloc1_4_r8.c: Regenerated.
* generated/maxloc1_8_i1.c: Regenerated.
* generated/maxloc1_8_i16.c: Regenerated.
* generated/maxloc1_8_i2.c: Regenerated.
* generated/maxloc1_8_i4.c: Regenerated.
* generated/maxloc1_8_i8.c: Regenerated.
* generated/maxloc1_8_r10.c: Regenerated.
* generated/maxloc1_8_r16.c: Regenerated.
* generated/maxloc1_8_r4.c: Regenerated.
* generated/maxloc1_8_r8.c: Regenerated.
* generated/maxval_i1.c: Regenerated.
* generated/maxval_i16.c: Regenerated.
* generated/maxval_i2.c: Regenerated.
* generated/maxval_i4.c: Regenerated.
* generated/maxval_i8.c: Regenerated.
* generated/maxval_r10.c: Regenerated.
* generated/maxval_r16.c: Regenerated.
* generated/maxval_r4.c: Regenerated.
* generated/maxval_r8.c: Regenerated.
* generated/minloc0_16_i1.c: Regenerated.
* generated/minloc0_16_i16.c: Regenerated.
* generated/minloc0_16_i2.c: Regenerated.
* generated/minloc0_16_i4.c: Regenerated.
* generated/minloc0_16_i8.c: Regenerated.
* generated/minloc0_16_r10.c: Regenerated.
* generated/minloc0_16_r16.c: Regenerated.
* generated/minloc0_16_r4.c: Regenerated.
* generated/minloc0_16_r8.c: Regenerated.
* generated/minloc0_4_i1.c: Regenerated.
* generated/minloc0_4_i16.c: Regenerated.
* generated/minloc0_4_i2.c: Regenerated.
* generated/minloc0_4_i4.c: Regenerated.
* generated/minloc0_4_i8.c: Regenerated.
* generated/minloc0_4_r10.c: Regenerated.
* generated/minloc0_4_r16.c: Regenerated.
* generated/minloc0_4_r4.c: Regenerated.
* generated/minloc0_4_r8.c: Regenerated.
* generated/minloc0_8_i1.c: Regenerated.
* generated/minloc0_8_i16.c: Regenerated.
* generated/minloc0_8_i2.c: Regenerated.
* generated/minloc0_8_i4.c: Regenerated.
* generated/minloc0_8_i8.c: Regenerated.
* generated/minloc0_8_r10.c: Regenerated.
* generated/minloc0_8_r16.c: Regenerated.
* generated/minloc0_8_r4.c: Regenerated.
* generated/minloc0_8_r8.c: Regenerated.
* generated/minloc1_16_i1.c: Regenerated.
* generated/minloc1_16_i16.c: Regenerated.
* generated/minloc1_16_i2.c: Regenerated.
* generated/minloc1_16_i4.c: Regenerated.
* generated/minloc1_16_i8.c: Regenerated.
* generated/minloc1_16_r10.c: Regenerated.
* generated/minloc1_16_r16.c: Regenerated.
* generated/minloc1_16_r4.c: Regenerated.
* generated/minloc1_16_r8.c: Regenerated.
* generated/minloc1_4_i1.c: Regenerated.
* generated/minloc1_4_i16.c: Regenerated.
* generated/minloc1_4_i2.c: Regenerated.
* generated/minloc1_4_i4.c: Regenerated.
* generated/minloc1_4_i8.c: Regenerated.
* generated/minloc1_4_r10.c: Regenerated.
* generated/minloc1_4_r16.c: Regenerated.
* generated/minloc1_4_r4.c: Regenerated.
* generated/minloc1_4_r8.c: Regenerated.
* generated/minloc1_8_i1.c: Regenerated.
* generated/minloc1_8_i16.c: Regenerated.
* generated/minloc1_8_i2.c: Regenerated.
* generated/minloc1_8_i4.c: Regenerated.
* generated/minloc1_8_i8.c: Regenerated.
* generated/minloc1_8_r10.c: Regenerated.
* generated/minloc1_8_r16.c: Regenerated.
* generated/minloc1_8_r4.c: Regenerated.
* generated/minloc1_8_r8.c: Regenerated.
* generated/minval_i1.c: Regenerated.
* generated/minval_i16.c: Regenerated.
* generated/minval_i2.c: Regenerated.
* generated/minval_i4.c: Regenerated.
* generated/minval_i8.c: Regenerated.
* generated/minval_r10.c: Regenerated.
* generated/minval_r16.c: Regenerated.
* generated/minval_r4.c: Regenerated.
* generated/minval_r8.c: Regenerated.
* generated/product_c10.c: Regenerated.
* generated/product_c16.c: Regenerated.
* generated/product_c4.c: Regenerated.
* generated/product_c8.c: Regenerated.
* generated/product_i1.c: Regenerated.
* generated/product_i16.c: Regenerated.
* generated/product_i2.c: Regenerated.
* generated/product_i4.c: Regenerated.
* generated/product_i8.c: Regenerated.
* generated/product_r10.c: Regenerated.
* generated/product_r16.c: Regenerated.
* generated/product_r4.c: Regenerated.
* generated/product_r8.c: Regenerated.
* generated/sum_c10.c: Regenerated.
* generated/sum_c16.c: Regenerated.
* generated/sum_c4.c: Regenerated.
* generated/sum_c8.c: Regenerated.
* generated/sum_i1.c: Regenerated.
* generated/sum_i16.c: Regenerated.
* generated/sum_i2.c: Regenerated.
* generated/sum_i4.c: Regenerated.
* generated/sum_i8.c: Regenerated.
* generated/sum_r10.c: Regenerated.
* generated/sum_r16.c: Regenerated.
* generated/sum_r4.c: Regenerated.
* generated/sum_r8.c: Regenerated.
2008-01-11 Thomas Koenig <tkoenig@gcc.gnu.org>
PR libfortran/34670
* all_bounds_1.f90: New test case.
* maxloc_bounds_1.f90: New test case.
* maxloc_bounds_2.f90: New test case.
* maxloc_bounds_3.f90: New test case.
* maxloc_bounds_4.f90: New test case.
* maxloc_bounds_5.f90: New test case.
* maxloc_bounds_6.f90: New test case.
* maxloc_bounds_7.f90: New test case.
* maxloc_bounds_8.f90: New test case.
Added:
trunk/gcc/testsuite/gfortran.dg/all_bounds_1.f90
trunk/gcc/testsuite/gfortran.dg/maxloc_bounds_1.f90
trunk/gcc/testsuite/gfortran.dg/maxloc_bounds_2.f90
trunk/gcc/testsuite/gfortran.dg/maxloc_bounds_3.f90
trunk/gcc/testsuite/gfortran.dg/maxloc_bounds_4.f90
trunk/gcc/testsuite/gfortran.dg/maxloc_bounds_5.f90
trunk/gcc/testsuite/gfortran.dg/maxloc_bounds_6.f90
trunk/gcc/testsuite/gfortran.dg/maxloc_bounds_7.f90
trunk/gcc/testsuite/gfortran.dg/maxloc_bounds_8.f90
Modified:
trunk/gcc/testsuite/ChangeLog
trunk/libgfortran/ChangeLog
trunk/libgfortran/generated/all_l16.c
trunk/libgfortran/generated/all_l4.c
trunk/libgfortran/generated/all_l8.c
trunk/libgfortran/generated/any_l16.c
trunk/libgfortran/generated/any_l4.c
trunk/libgfortran/generated/any_l8.c
trunk/libgfortran/generated/count_16_l16.c
trunk/libgfortran/generated/count_16_l4.c
trunk/libgfortran/generated/count_16_l8.c
trunk/libgfortran/generated/count_4_l16.c
trunk/libgfortran/generated/count_4_l4.c
trunk/libgfortran/generated/count_4_l8.c
trunk/libgfortran/generated/count_8_l16.c
trunk/libgfortran/generated/count_8_l4.c
trunk/libgfortran/generated/count_8_l8.c
trunk/libgfortran/generated/maxloc0_16_i1.c
trunk/libgfortran/generated/maxloc0_16_i16.c
trunk/libgfortran/generated/maxloc0_16_i2.c
trunk/libgfortran/generated/maxloc0_16_i4.c
trunk/libgfortran/generated/maxloc0_16_i8.c
trunk/libgfortran/generated/maxloc0_16_r10.c
trunk/libgfortran/generated/maxloc0_16_r16.c
trunk/libgfortran/generated/maxloc0_16_r4.c
trunk/libgfortran/generated/maxloc0_16_r8.c
trunk/libgfortran/generated/maxloc0_4_i1.c
trunk/libgfortran/generated/maxloc0_4_i16.c
trunk/libgfortran/generated/maxloc0_4_i2.c
trunk/libgfortran/generated/maxloc0_4_i4.c
trunk/libgfortran/generated/maxloc0_4_i8.c
trunk/libgfortran/generated/maxloc0_4_r10.c
trunk/libgfortran/generated/maxloc0_4_r16.c
trunk/libgfortran/generated/maxloc0_4_r4.c
trunk/libgfortran/generated/maxloc0_4_r8.c
trunk/libgfortran/generated/maxloc0_8_i1.c
trunk/libgfortran/generated/maxloc0_8_i16.c
trunk/libgfortran/generated/maxloc0_8_i2.c
trunk/libgfortran/generated/maxloc0_8_i4.c
trunk/libgfortran/generated/maxloc0_8_i8.c
trunk/libgfortran/generated/maxloc0_8_r10.c
trunk/libgfortran/generated/maxloc0_8_r16.c
trunk/libgfortran/generated/maxloc0_8_r4.c
trunk/libgfortran/generated/maxloc0_8_r8.c
trunk/libgfortran/generated/maxloc1_16_i1.c
trunk/libgfortran/generated/maxloc1_16_i16.c
trunk/libgfortran/generated/maxloc1_16_i2.c
trunk/libgfortran/generated/maxloc1_16_i4.c
trunk/libgfortran/generated/maxloc1_16_i8.c
trunk/libgfortran/generated/maxloc1_16_r10.c
trunk/libgfortran/generated/maxloc1_16_r16.c
trunk/libgfortran/generated/maxloc1_16_r4.c
trunk/libgfortran/generated/maxloc1_16_r8.c
trunk/libgfortran/generated/maxloc1_4_i1.c
trunk/libgfortran/generated/maxloc1_4_i16.c
trunk/libgfortran/generated/maxloc1_4_i2.c
trunk/libgfortran/generated/maxloc1_4_i4.c
trunk/libgfortran/generated/maxloc1_4_i8.c
trunk/libgfortran/generated/maxloc1_4_r10.c
trunk/libgfortran/generated/maxloc1_4_r16.c
trunk/libgfortran/generated/maxloc1_4_r4.c
trunk/libgfortran/generated/maxloc1_4_r8.c
trunk/libgfortran/generated/maxloc1_8_i1.c
trunk/libgfortran/generated/maxloc1_8_i16.c
trunk/libgfortran/generated/maxloc1_8_i2.c
trunk/libgfortran/generated/maxloc1_8_i4.c
trunk/libgfortran/generated/maxloc1_8_i8.c
trunk/libgfortran/generated/maxloc1_8_r10.c
trunk/libgfortran/generated/maxloc1_8_r16.c
trunk/libgfortran/generated/maxloc1_8_r4.c
trunk/libgfortran/generated/maxloc1_8_r8.c
trunk/libgfortran/generated/maxval_i1.c
trunk/libgfortran/generated/maxval_i16.c
trunk/libgfortran/generated/maxval_i2.c
trunk/libgfortran/generated/maxval_i4.c
trunk/libgfortran/generated/maxval_i8.c
trunk/libgfortran/generated/maxval_r10.c
trunk/libgfortran/generated/maxval_r16.c
trunk/libgfortran/generated/maxval_r4.c
trunk/libgfortran/generated/maxval_r8.c
trunk/libgfortran/generated/minloc0_16_i1.c
trunk/libgfortran/generated/minloc0_16_i16.c
trunk/libgfortran/generated/minloc0_16_i2.c
trunk/libgfortran/generated/minloc0_16_i4.c
trunk/libgfortran/generated/minloc0_16_i8.c
trunk/libgfortran/generated/minloc0_16_r10.c
trunk/libgfortran/generated/minloc0_16_r16.c
trunk/libgfortran/generated/minloc0_16_r4.c
trunk/libgfortran/generated/minloc0_16_r8.c
trunk/libgfortran/generated/minloc0_4_i1.c
trunk/libgfortran/generated/minloc0_4_i16.c
trunk/libgfortran/generated/minloc0_4_i2.c
trunk/libgfortran/generated/minloc0_4_i4.c
trunk/libgfortran/generated/minloc0_4_i8.c
trunk/libgfortran/generated/minloc0_4_r10.c
trunk/libgfortran/generated/minloc0_4_r16.c
trunk/libgfortran/generated/minloc0_4_r4.c
trunk/libgfortran/generated/minloc0_4_r8.c
trunk/libgfortran/generated/minloc0_8_i1.c
trunk/libgfortran/generated/minloc0_8_i16.c
trunk/libgfortran/generated/minloc0_8_i2.c
trunk/libgfortran/generated/minloc0_8_i4.c
trunk/libgfortran/generated/minloc0_8_i8.c
trunk/libgfortran/generated/minloc0_8_r10.c
trunk/libgfortran/generated/minloc0_8_r16.c
trunk/libgfortran/generated/minloc0_8_r4.c
trunk/libgfortran/generated/minloc0_8_r8.c
trunk/libgfortran/generated/minloc1_16_i1.c
trunk/libgfortran/generated/minloc1_16_i16.c
trunk/libgfortran/generated/minloc1_16_i2.c
trunk/libgfortran/generated/minloc1_16_i4.c
trunk/libgfortran/generated/minloc1_16_i8.c
trunk/libgfortran/generated/minloc1_16_r10.c
trunk/libgfortran/generated/minloc1_16_r16.c
trunk/libgfortran/generated/minloc1_16_r4.c
trunk/libgfortran/generated/minloc1_16_r8.c
trunk/libgfortran/generated/minloc1_4_i1.c
trunk/libgfortran/generated/minloc1_4_i16.c
trunk/libgfortran/generated/minloc1_4_i2.c
trunk/libgfortran/generated/minloc1_4_i4.c
trunk/libgfortran/generated/minloc1_4_i8.c
trunk/libgfortran/generated/minloc1_4_r10.c
trunk/libgfortran/generated/minloc1_4_r16.c
trunk/libgfortran/generated/minloc1_4_r4.c
trunk/libgfortran/generated/minloc1_4_r8.c
trunk/libgfortran/generated/minloc1_8_i1.c
trunk/libgfortran/generated/minloc1_8_i16.c
trunk/libgfortran/generated/minloc1_8_i2.c
trunk/libgfortran/generated/minloc1_8_i4.c
trunk/libgfortran/generated/minloc1_8_i8.c
trunk/libgfortran/generated/minloc1_8_r10.c
trunk/libgfortran/generated/minloc1_8_r16.c
trunk/libgfortran/generated/minloc1_8_r4.c
trunk/libgfortran/generated/minloc1_8_r8.c
trunk/libgfortran/generated/minval_i1.c
trunk/libgfortran/generated/minval_i16.c
trunk/libgfortran/generated/minval_i2.c
trunk/libgfortran/generated/minval_i4.c
trunk/libgfortran/generated/minval_i8.c
trunk/libgfortran/generated/minval_r10.c
trunk/libgfortran/generated/minval_r16.c
trunk/libgfortran/generated/minval_r4.c
trunk/libgfortran/generated/minval_r8.c
trunk/libgfortran/generated/product_c10.c
trunk/libgfortran/generated/product_c16.c
trunk/libgfortran/generated/product_c4.c
trunk/libgfortran/generated/product_c8.c
trunk/libgfortran/generated/product_i1.c
trunk/libgfortran/generated/product_i16.c
trunk/libgfortran/generated/product_i2.c
trunk/libgfortran/generated/product_i4.c
trunk/libgfortran/generated/product_i8.c
trunk/libgfortran/generated/product_r10.c
trunk/libgfortran/generated/product_r16.c
trunk/libgfortran/generated/product_r4.c
trunk/libgfortran/generated/product_r8.c
trunk/libgfortran/generated/sum_c10.c
trunk/libgfortran/generated/sum_c16.c
trunk/libgfortran/generated/sum_c4.c
trunk/libgfortran/generated/sum_c8.c
trunk/libgfortran/generated/sum_i1.c
trunk/libgfortran/generated/sum_i16.c
trunk/libgfortran/generated/sum_i2.c
trunk/libgfortran/generated/sum_i4.c
trunk/libgfortran/generated/sum_i8.c
trunk/libgfortran/generated/sum_r10.c
trunk/libgfortran/generated/sum_r16.c
trunk/libgfortran/generated/sum_r4.c
trunk/libgfortran/generated/sum_r8.c
trunk/libgfortran/m4/iforeach.m4
trunk/libgfortran/m4/ifunction.m4
trunk/libgfortran/m4/iparm.m4
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34670
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug libfortran/34670] bounds checking for array intrinsics
2008-01-04 11:14 [Bug libfortran/34670] New: bounds checking for array intrinsics tkoenig at gcc dot gnu dot org
` (5 preceding siblings ...)
2008-01-11 21:19 ` tkoenig at gcc dot gnu dot org
@ 2008-01-26 20:10 ` tkoenig at gcc dot gnu dot org
2008-07-07 19:45 ` tkoenig at gcc dot gnu dot org
` (11 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: tkoenig at gcc dot gnu dot org @ 2008-01-26 20:10 UTC (permalink / raw)
To: gcc-bugs
------- Comment #6 from tkoenig at gcc dot gnu dot org 2008-01-26 19:34 -------
Files still missing, from generated/*:
cshift1_*.c
eoshift1_*.c
eoshift3_*.c
matmul_*.c
reshape_*.c
shape_*.c
transpose_*.c
>From intrinsic/*.c:
cshift0.c
eoshift0.c
eoshift2.c
reshape_generic.c
transpose_generic.c
unpack_generic.c
Nice project once 4.4 is underway :-)
--
tkoenig at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Keywords|patch |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34670
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug libfortran/34670] bounds checking for array intrinsics
2008-01-04 11:14 [Bug libfortran/34670] New: bounds checking for array intrinsics tkoenig at gcc dot gnu dot org
` (6 preceding siblings ...)
2008-01-26 20:10 ` tkoenig at gcc dot gnu dot org
@ 2008-07-07 19:45 ` tkoenig at gcc dot gnu dot org
2008-10-15 16:30 ` tkoenig at gcc dot gnu dot org
` (10 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: tkoenig at gcc dot gnu dot org @ 2008-07-07 19:45 UTC (permalink / raw)
To: gcc-bugs
------- Comment #7 from tkoenig at gcc dot gnu dot org 2008-07-07 19:44 -------
Subject: Bug 34670
Author: tkoenig
Date: Mon Jul 7 19:43:33 2008
New Revision: 137594
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=137594
Log:
2008-07-07 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/36341
PR fortran/34670
* m4/matmul.m4: Add bounds checking.
* m4/matmull.m4: Likewise.
* generated/matmul_c10.c: Regenerated.
* generated/matmul_c16.c: Regenerated.
* generated/matmul_c4.c: Regenerated.
* generated/matmul_c8.c: Regenerated.
* generated/matmul_i1.c: Regenerated.
* generated/matmul_i16.c: Regenerated.
* generated/matmul_i2.c: Regenerated.
* generated/matmul_i4.c: Regenerated.
* generated/matmul_i8.c: Regenerated.
* generated/matmul_l16.c: Regenerated.
* generated/matmul_l4.c: Regenerated.
* generated/matmul_l8.c: Regenerated.
* generated/matmul_r10.c: Regenerated.
* generated/matmul_r16.c: Regenerated.
* generated/matmul_r4.c: Regenerated.
* generated/matmul_r8.c: Regenerated.
2008-07-07 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/36341
PR fortran/34670
* gfortran.dg/matmul_bounds_2.f90: New test.
* gfortran.dg/matmul_bounds_3.f90: New test.
* gfortran.dg/matmul_bounds_4.f90: New test.
* gfortran.dg/matmul_bounds_5.f90: New test.
Added:
trunk/gcc/testsuite/gfortran.dg/matmul_bounds_2.f90
trunk/gcc/testsuite/gfortran.dg/matmul_bounds_3.f90
trunk/gcc/testsuite/gfortran.dg/matmul_bounds_4.f90
trunk/gcc/testsuite/gfortran.dg/matmul_bounds_5.f90
Modified:
trunk/gcc/testsuite/ChangeLog
trunk/libgfortran/ChangeLog
trunk/libgfortran/generated/matmul_c10.c
trunk/libgfortran/generated/matmul_c16.c
trunk/libgfortran/generated/matmul_c4.c
trunk/libgfortran/generated/matmul_c8.c
trunk/libgfortran/generated/matmul_i1.c
trunk/libgfortran/generated/matmul_i16.c
trunk/libgfortran/generated/matmul_i2.c
trunk/libgfortran/generated/matmul_i4.c
trunk/libgfortran/generated/matmul_i8.c
trunk/libgfortran/generated/matmul_l16.c
trunk/libgfortran/generated/matmul_l4.c
trunk/libgfortran/generated/matmul_l8.c
trunk/libgfortran/generated/matmul_r10.c
trunk/libgfortran/generated/matmul_r16.c
trunk/libgfortran/generated/matmul_r4.c
trunk/libgfortran/generated/matmul_r8.c
trunk/libgfortran/m4/matmul.m4
trunk/libgfortran/m4/matmull.m4
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34670
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug libfortran/34670] bounds checking for array intrinsics
2008-01-04 11:14 [Bug libfortran/34670] New: bounds checking for array intrinsics tkoenig at gcc dot gnu dot org
` (7 preceding siblings ...)
2008-07-07 19:45 ` tkoenig at gcc dot gnu dot org
@ 2008-10-15 16:30 ` tkoenig at gcc dot gnu dot org
2008-10-15 16:32 ` tkoenig at gcc dot gnu dot org
` (9 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: tkoenig at gcc dot gnu dot org @ 2008-10-15 16:30 UTC (permalink / raw)
To: gcc-bugs
------- Comment #8 from tkoenig at gcc dot gnu dot org 2008-10-15 16:29 -------
Subject: Bug 34670
Author: tkoenig
Date: Wed Oct 15 16:27:58 2008
New Revision: 141144
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=141144
Log:
2008-10-15 Thomas Koenig <tkoenig@gcc.gnu.org>
PR libfortran/34670
* intrinsics/reshape_generic.c: Add bounds checking.
* m4/reshape.m4: Likewise.
* generated/reshape_c10.c: Regenerated.
* generated/reshape_c16.c: Regenerated.
* generated/reshape_c4.c: Regenerated.
* generated/reshape_c8.c: Regenerated.
* generated/reshape_i16.c: Regenerated.
* generated/reshape_i4.c: Regenerated.
* generated/reshape_i8.c: Regenerated.
* generated/reshape_r10.c: Regenerated.
* generated/reshape_r16.c: Regenerated.
* generated/reshape_r4.c: Regenerated.
* generated/reshape_r8.c: Regenerated.
* generated/spread_r4.c: Regenerated.
2008-10-15 Thomas Koenig <tkoenig@gcc.gnu.org>
PR libfortran/34670
* gfortran.dg/reshape_3.f90: New test.
* gfortran.dg/reshape_4.f90: New test.
* gfortran.dg/reshape_order_1.f90: Use correct shape.
* gfortran.dg/reshape_order_2.f90: Likewise.
* gfortran.dg/reshape_order_3.f90: Likewise.
* gfortran.dg/reshape_order_4.f90: Likewise.
Modified:
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/gfortran.dg/reshape_order_1.f90
trunk/gcc/testsuite/gfortran.dg/reshape_order_2.f90
trunk/gcc/testsuite/gfortran.dg/reshape_order_3.f90
trunk/gcc/testsuite/gfortran.dg/reshape_order_4.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/generated/spread_r4.c
trunk/libgfortran/intrinsics/reshape_generic.c
trunk/libgfortran/m4/reshape.m4
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34670
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug libfortran/34670] bounds checking for array intrinsics
2008-01-04 11:14 [Bug libfortran/34670] New: bounds checking for array intrinsics tkoenig at gcc dot gnu dot org
` (8 preceding siblings ...)
2008-10-15 16:30 ` tkoenig at gcc dot gnu dot org
@ 2008-10-15 16:32 ` tkoenig at gcc dot gnu dot org
2008-10-16 10:19 ` tkoenig at gcc dot gnu dot org
` (8 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: tkoenig at gcc dot gnu dot org @ 2008-10-15 16:32 UTC (permalink / raw)
To: gcc-bugs
------- Comment #9 from tkoenig at gcc dot gnu dot org 2008-10-15 16:31 -------
Matmul and spread are also done.
Still a few to go...
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34670
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug libfortran/34670] bounds checking for array intrinsics
2008-01-04 11:14 [Bug libfortran/34670] New: bounds checking for array intrinsics tkoenig at gcc dot gnu dot org
` (9 preceding siblings ...)
2008-10-15 16:32 ` tkoenig at gcc dot gnu dot org
@ 2008-10-16 10:19 ` tkoenig at gcc dot gnu dot org
2008-10-21 20:15 ` tkoenig at gcc dot gnu dot org
` (7 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: tkoenig at gcc dot gnu dot org @ 2008-10-16 10:19 UTC (permalink / raw)
To: gcc-bugs
------- Comment #10 from tkoenig at gcc dot gnu dot org 2008-10-16 10:18 -------
Subject: Bug 34670
Author: tkoenig
Date: Thu Oct 16 10:16:38 2008
New Revision: 141167
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=141167
Log:
2008-10-16 Thomas Koenig <tkoenig@gcc.gnu.org>
PR libfortran/34670
* generated/spread_r4.c: Regenerated.
Modified:
trunk/libgfortran/ChangeLog
trunk/libgfortran/generated/spread_r4.c
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34670
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug libfortran/34670] bounds checking for array intrinsics
2008-01-04 11:14 [Bug libfortran/34670] New: bounds checking for array intrinsics tkoenig at gcc dot gnu dot org
` (10 preceding siblings ...)
2008-10-16 10:19 ` tkoenig at gcc dot gnu dot org
@ 2008-10-21 20:15 ` tkoenig at gcc dot gnu dot org
2009-07-19 15:07 ` tkoenig at gcc dot gnu dot org
` (6 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: tkoenig at gcc dot gnu dot org @ 2008-10-21 20:15 UTC (permalink / raw)
To: gcc-bugs
------- Comment #11 from tkoenig at gcc dot gnu dot org 2008-10-21 20:14 -------
Subject: Bug 34670
Author: tkoenig
Date: Tue Oct 21 20:12:52 2008
New Revision: 141276
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=141276
Log:
2008-10-21 Thomas Koenig <tkoenig@gcc.gnu.org>
PR libfortran/34670
* intrinsics/transpose_generic.c: Implement bounds checking.
* m4/transpose.m4: Likewise.
* generated/transpose_c8.c: Regenerated.
* generated/transpose_c16.c: Regenerated.
* generated/transpose_r10.c: Regenerated.
* generated/transpose_i8.c: Regenerated.
* generated/transpose_c10.c: Regenerated.
* generated/transpose_r4.c: Regenerated.
* generated/transpose_c4.c: Regenerated.
* generated/transpose_i16.c: Regenerated.
* generated/transpose_i4.c: Regenerated.
* generated/transpose_r8.c: Regenerated.
* generated/transpose_r16.c: Regenerated.
2008-10-21 Thomas Koenig <tkoenig@gcc.gnu.org>
PR libfortran/34670
* gfortran.dg/transpose_2.f90: New test.
Added:
trunk/gcc/testsuite/gfortran.dg/transpose_2.f90
Modified:
trunk/gcc/testsuite/ChangeLog
trunk/libgfortran/ChangeLog
trunk/libgfortran/generated/transpose_c10.c
trunk/libgfortran/generated/transpose_c16.c
trunk/libgfortran/generated/transpose_c4.c
trunk/libgfortran/generated/transpose_c8.c
trunk/libgfortran/generated/transpose_i16.c
trunk/libgfortran/generated/transpose_i4.c
trunk/libgfortran/generated/transpose_i8.c
trunk/libgfortran/generated/transpose_r10.c
trunk/libgfortran/generated/transpose_r16.c
trunk/libgfortran/generated/transpose_r4.c
trunk/libgfortran/generated/transpose_r8.c
trunk/libgfortran/intrinsics/transpose_generic.c
trunk/libgfortran/m4/transpose.m4
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34670
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug libfortran/34670] bounds checking for array intrinsics
2008-01-04 11:14 [Bug libfortran/34670] New: bounds checking for array intrinsics tkoenig at gcc dot gnu dot org
` (11 preceding siblings ...)
2008-10-21 20:15 ` tkoenig at gcc dot gnu dot org
@ 2009-07-19 15:07 ` tkoenig at gcc dot gnu dot org
2009-07-28 9:04 ` tkoenig at gcc dot gnu dot org
` (5 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: tkoenig at gcc dot gnu dot org @ 2009-07-19 15:07 UTC (permalink / raw)
To: gcc-bugs
------- Comment #12 from tkoenig at gcc dot gnu dot org 2009-07-19 15:07 -------
Subject: Bug 34670
Author: tkoenig
Date: Sun Jul 19 15:07:21 2009
New Revision: 149792
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=149792
Log:
2009-07-19 Thomas Koenig <tkoenig@gcc.gnu.org>
PR libfortran/34670
PR libfortran/36874
* Makefile.am: Add bounds.c
* libgfortran.h (bounds_equal_extents): Add prototype.
(bounds_iforeach_return): Likewise.
(bounds_ifunction_return): Likewise.
(bounds_reduced_extents): Likewise.
* runtime/bounds.c: New file.
(bounds_iforeach_return): New function; correct typo in
error message.
(bounds_ifunction_return): New function.
(bounds_equal_extents): New function.
(bounds_reduced_extents): Likewise.
* intrinsics/cshift0.c (cshift0): Use new functions
for bounds checking.
* intrinsics/eoshift0.c (eoshift0): Likewise.
* intrinsics/eoshift2.c (eoshift2): Likewise.
* m4/iforeach.m4: Likewise.
* m4/eoshift1.m4: Likewise.
* m4/eoshift3.m4: Likewise.
* m4/cshift1.m4: Likewise.
* m4/ifunction.m4: Likewise.
* Makefile.in: Regenerated.
* generated/cshift1_16.c: Regenerated.
* generated/cshift1_4.c: Regenerated.
* generated/cshift1_8.c: Regenerated.
* generated/eoshift1_16.c: Regenerated.
* generated/eoshift1_4.c: Regenerated.
* generated/eoshift1_8.c: Regenerated.
* generated/eoshift3_16.c: Regenerated.
* generated/eoshift3_4.c: Regenerated.
* generated/eoshift3_8.c: Regenerated.
* generated/maxloc0_16_i1.c: Regenerated.
* generated/maxloc0_16_i16.c: Regenerated.
* generated/maxloc0_16_i2.c: Regenerated.
* generated/maxloc0_16_i4.c: Regenerated.
* generated/maxloc0_16_i8.c: Regenerated.
* generated/maxloc0_16_r10.c: Regenerated.
* generated/maxloc0_16_r16.c: Regenerated.
* generated/maxloc0_16_r4.c: Regenerated.
* generated/maxloc0_16_r8.c: Regenerated.
* generated/maxloc0_4_i1.c: Regenerated.
* generated/maxloc0_4_i16.c: Regenerated.
* generated/maxloc0_4_i2.c: Regenerated.
* generated/maxloc0_4_i4.c: Regenerated.
* generated/maxloc0_4_i8.c: Regenerated.
* generated/maxloc0_4_r10.c: Regenerated.
* generated/maxloc0_4_r16.c: Regenerated.
* generated/maxloc0_4_r4.c: Regenerated.
* generated/maxloc0_4_r8.c: Regenerated.
* generated/maxloc0_8_i1.c: Regenerated.
* generated/maxloc0_8_i16.c: Regenerated.
* generated/maxloc0_8_i2.c: Regenerated.
* generated/maxloc0_8_i4.c: Regenerated.
* generated/maxloc0_8_i8.c: Regenerated.
* generated/maxloc0_8_r10.c: Regenerated.
* generated/maxloc0_8_r16.c: Regenerated.
* generated/maxloc0_8_r4.c: Regenerated.
* generated/maxloc0_8_r8.c: Regenerated.
* generated/maxloc1_16_i1.c: Regenerated.
* generated/maxloc1_16_i16.c: Regenerated.
* generated/maxloc1_16_i2.c: Regenerated.
* generated/maxloc1_16_i4.c: Regenerated.
* generated/maxloc1_16_i8.c: Regenerated.
* generated/maxloc1_16_r10.c: Regenerated.
* generated/maxloc1_16_r16.c: Regenerated.
* generated/maxloc1_16_r4.c: Regenerated.
* generated/maxloc1_16_r8.c: Regenerated.
* generated/maxloc1_4_i1.c: Regenerated.
* generated/maxloc1_4_i16.c: Regenerated.
* generated/maxloc1_4_i2.c: Regenerated.
* generated/maxloc1_4_i4.c: Regenerated.
* generated/maxloc1_4_i8.c: Regenerated.
* generated/maxloc1_4_r10.c: Regenerated.
* generated/maxloc1_4_r16.c: Regenerated.
* generated/maxloc1_4_r4.c: Regenerated.
* generated/maxloc1_4_r8.c: Regenerated.
* generated/maxloc1_8_i1.c: Regenerated.
* generated/maxloc1_8_i16.c: Regenerated.
* generated/maxloc1_8_i2.c: Regenerated.
* generated/maxloc1_8_i4.c: Regenerated.
* generated/maxloc1_8_i8.c: Regenerated.
* generated/maxloc1_8_r10.c: Regenerated.
* generated/maxloc1_8_r16.c: Regenerated.
* generated/maxloc1_8_r4.c: Regenerated.
* generated/maxloc1_8_r8.c: Regenerated.
* generated/maxval_i1.c: Regenerated.
* generated/maxval_i16.c: Regenerated.
* generated/maxval_i2.c: Regenerated.
* generated/maxval_i4.c: Regenerated.
* generated/maxval_i8.c: Regenerated.
* generated/maxval_r10.c: Regenerated.
* generated/maxval_r16.c: Regenerated.
* generated/maxval_r4.c: Regenerated.
* generated/maxval_r8.c: Regenerated.
* generated/minloc0_16_i1.c: Regenerated.
* generated/minloc0_16_i16.c: Regenerated.
* generated/minloc0_16_i2.c: Regenerated.
* generated/minloc0_16_i4.c: Regenerated.
* generated/minloc0_16_i8.c: Regenerated.
* generated/minloc0_16_r10.c: Regenerated.
* generated/minloc0_16_r16.c: Regenerated.
* generated/minloc0_16_r4.c: Regenerated.
* generated/minloc0_16_r8.c: Regenerated.
* generated/minloc0_4_i1.c: Regenerated.
* generated/minloc0_4_i16.c: Regenerated.
* generated/minloc0_4_i2.c: Regenerated.
* generated/minloc0_4_i4.c: Regenerated.
* generated/minloc0_4_i8.c: Regenerated.
* generated/minloc0_4_r10.c: Regenerated.
* generated/minloc0_4_r16.c: Regenerated.
* generated/minloc0_4_r4.c: Regenerated.
* generated/minloc0_4_r8.c: Regenerated.
* generated/minloc0_8_i1.c: Regenerated.
* generated/minloc0_8_i16.c: Regenerated.
* generated/minloc0_8_i2.c: Regenerated.
* generated/minloc0_8_i4.c: Regenerated.
* generated/minloc0_8_i8.c: Regenerated.
* generated/minloc0_8_r10.c: Regenerated.
* generated/minloc0_8_r16.c: Regenerated.
* generated/minloc0_8_r4.c: Regenerated.
* generated/minloc0_8_r8.c: Regenerated.
* generated/minloc1_16_i1.c: Regenerated.
* generated/minloc1_16_i16.c: Regenerated.
* generated/minloc1_16_i2.c: Regenerated.
* generated/minloc1_16_i4.c: Regenerated.
* generated/minloc1_16_i8.c: Regenerated.
* generated/minloc1_16_r10.c: Regenerated.
* generated/minloc1_16_r16.c: Regenerated.
* generated/minloc1_16_r4.c: Regenerated.
* generated/minloc1_16_r8.c: Regenerated.
* generated/minloc1_4_i1.c: Regenerated.
* generated/minloc1_4_i16.c: Regenerated.
* generated/minloc1_4_i2.c: Regenerated.
* generated/minloc1_4_i4.c: Regenerated.
* generated/minloc1_4_i8.c: Regenerated.
* generated/minloc1_4_r10.c: Regenerated.
* generated/minloc1_4_r16.c: Regenerated.
* generated/minloc1_4_r4.c: Regenerated.
* generated/minloc1_4_r8.c: Regenerated.
* generated/minloc1_8_i1.c: Regenerated.
* generated/minloc1_8_i16.c: Regenerated.
* generated/minloc1_8_i2.c: Regenerated.
* generated/minloc1_8_i4.c: Regenerated.
* generated/minloc1_8_i8.c: Regenerated.
* generated/minloc1_8_r10.c: Regenerated.
* generated/minloc1_8_r16.c: Regenerated.
* generated/minloc1_8_r4.c: Regenerated.
* generated/minloc1_8_r8.c: Regenerated.
* generated/minval_i1.c: Regenerated.
* generated/minval_i16.c: Regenerated.
* generated/minval_i2.c: Regenerated.
* generated/minval_i4.c: Regenerated.
* generated/minval_i8.c: Regenerated.
* generated/minval_r10.c: Regenerated.
* generated/minval_r16.c: Regenerated.
* generated/minval_r4.c: Regenerated.
* generated/minval_r8.c: Regenerated.
* generated/product_c10.c: Regenerated.
* generated/product_c16.c: Regenerated.
* generated/product_c4.c: Regenerated.
* generated/product_c8.c: Regenerated.
* generated/product_i1.c: Regenerated.
* generated/product_i16.c: Regenerated.
* generated/product_i2.c: Regenerated.
* generated/product_i4.c: Regenerated.
* generated/product_i8.c: Regenerated.
* generated/product_r10.c: Regenerated.
* generated/product_r16.c: Regenerated.
* generated/product_r4.c: Regenerated.
* generated/product_r8.c: Regenerated.
* generated/sum_c10.c: Regenerated.
* generated/sum_c16.c: Regenerated.
* generated/sum_c4.c: Regenerated.
* generated/sum_c8.c: Regenerated.
* generated/sum_i1.c: Regenerated.
* generated/sum_i16.c: Regenerated.
* generated/sum_i2.c: Regenerated.
* generated/sum_i4.c: Regenerated.
* generated/sum_i8.c: Regenerated.
* generated/sum_r10.c: Regenerated.
* generated/sum_r16.c: Regenerated.
* generated/sum_r4.c: Regenerated.
* generated/sum_r8.c: Regenerated.
2009-07-19 Thomas Koenig <tkoenig@gcc.gnu.org>
PR libfortran/34670
PR libfortran/36874
* gfortran.dg/cshift_bounds_1.f90: New test.
* gfortran.dg/cshift_bounds_2.f90: New test.
* gfortran.dg/cshift_bounds_3.f90: New test.
* gfortran.dg/cshift_bounds_4.f90: New test.
* gfortran.dg/eoshift_bounds_1.f90: New test.
* gfortran.dg/maxloc_bounds_4.f90: Correct typo in error message.
* gfortran.dg/maxloc_bounds_5.f90: Correct typo in error message.
* gfortran.dg/maxloc_bounds_7.f90: Correct typo in error message.
Added:
trunk/gcc/testsuite/gfortran.dg/cshift_bounds_1.f90
trunk/gcc/testsuite/gfortran.dg/cshift_bounds_2.f90
trunk/gcc/testsuite/gfortran.dg/cshift_bounds_3.f90
trunk/gcc/testsuite/gfortran.dg/cshift_bounds_4.f90
trunk/gcc/testsuite/gfortran.dg/eoshift_bounds_1.f90
trunk/libgfortran/runtime/bounds.c
Modified:
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/gfortran.dg/maxloc_bounds_4.f90
trunk/gcc/testsuite/gfortran.dg/maxloc_bounds_5.f90
trunk/gcc/testsuite/gfortran.dg/maxloc_bounds_7.f90
trunk/libgfortran/ChangeLog
trunk/libgfortran/Makefile.am
trunk/libgfortran/Makefile.in
trunk/libgfortran/generated/cshift1_16.c
trunk/libgfortran/generated/cshift1_4.c
trunk/libgfortran/generated/cshift1_8.c
trunk/libgfortran/generated/eoshift1_16.c
trunk/libgfortran/generated/eoshift1_4.c
trunk/libgfortran/generated/eoshift1_8.c
trunk/libgfortran/generated/eoshift3_16.c
trunk/libgfortran/generated/eoshift3_4.c
trunk/libgfortran/generated/eoshift3_8.c
trunk/libgfortran/generated/maxloc0_16_i1.c
trunk/libgfortran/generated/maxloc0_16_i16.c
trunk/libgfortran/generated/maxloc0_16_i2.c
trunk/libgfortran/generated/maxloc0_16_i4.c
trunk/libgfortran/generated/maxloc0_16_i8.c
trunk/libgfortran/generated/maxloc0_16_r10.c
trunk/libgfortran/generated/maxloc0_16_r16.c
trunk/libgfortran/generated/maxloc0_16_r4.c
trunk/libgfortran/generated/maxloc0_16_r8.c
trunk/libgfortran/generated/maxloc0_4_i1.c
trunk/libgfortran/generated/maxloc0_4_i16.c
trunk/libgfortran/generated/maxloc0_4_i2.c
trunk/libgfortran/generated/maxloc0_4_i4.c
trunk/libgfortran/generated/maxloc0_4_i8.c
trunk/libgfortran/generated/maxloc0_4_r10.c
trunk/libgfortran/generated/maxloc0_4_r16.c
trunk/libgfortran/generated/maxloc0_4_r4.c
trunk/libgfortran/generated/maxloc0_4_r8.c
trunk/libgfortran/generated/maxloc0_8_i1.c
trunk/libgfortran/generated/maxloc0_8_i16.c
trunk/libgfortran/generated/maxloc0_8_i2.c
trunk/libgfortran/generated/maxloc0_8_i4.c
trunk/libgfortran/generated/maxloc0_8_i8.c
trunk/libgfortran/generated/maxloc0_8_r10.c
trunk/libgfortran/generated/maxloc0_8_r16.c
trunk/libgfortran/generated/maxloc0_8_r4.c
trunk/libgfortran/generated/maxloc0_8_r8.c
trunk/libgfortran/generated/maxloc1_16_i1.c
trunk/libgfortran/generated/maxloc1_16_i16.c
trunk/libgfortran/generated/maxloc1_16_i2.c
trunk/libgfortran/generated/maxloc1_16_i4.c
trunk/libgfortran/generated/maxloc1_16_i8.c
trunk/libgfortran/generated/maxloc1_16_r10.c
trunk/libgfortran/generated/maxloc1_16_r16.c
trunk/libgfortran/generated/maxloc1_16_r4.c
trunk/libgfortran/generated/maxloc1_16_r8.c
trunk/libgfortran/generated/maxloc1_4_i1.c
trunk/libgfortran/generated/maxloc1_4_i16.c
trunk/libgfortran/generated/maxloc1_4_i2.c
trunk/libgfortran/generated/maxloc1_4_i4.c
trunk/libgfortran/generated/maxloc1_4_i8.c
trunk/libgfortran/generated/maxloc1_4_r10.c
trunk/libgfortran/generated/maxloc1_4_r16.c
trunk/libgfortran/generated/maxloc1_4_r4.c
trunk/libgfortran/generated/maxloc1_4_r8.c
trunk/libgfortran/generated/maxloc1_8_i1.c
trunk/libgfortran/generated/maxloc1_8_i16.c
trunk/libgfortran/generated/maxloc1_8_i2.c
trunk/libgfortran/generated/maxloc1_8_i4.c
trunk/libgfortran/generated/maxloc1_8_i8.c
trunk/libgfortran/generated/maxloc1_8_r10.c
trunk/libgfortran/generated/maxloc1_8_r16.c
trunk/libgfortran/generated/maxloc1_8_r4.c
trunk/libgfortran/generated/maxloc1_8_r8.c
trunk/libgfortran/generated/maxval_i1.c
trunk/libgfortran/generated/maxval_i16.c
trunk/libgfortran/generated/maxval_i2.c
trunk/libgfortran/generated/maxval_i4.c
trunk/libgfortran/generated/maxval_i8.c
trunk/libgfortran/generated/maxval_r10.c
trunk/libgfortran/generated/maxval_r16.c
trunk/libgfortran/generated/maxval_r4.c
trunk/libgfortran/generated/maxval_r8.c
trunk/libgfortran/generated/minloc0_16_i1.c
trunk/libgfortran/generated/minloc0_16_i16.c
trunk/libgfortran/generated/minloc0_16_i2.c
trunk/libgfortran/generated/minloc0_16_i4.c
trunk/libgfortran/generated/minloc0_16_i8.c
trunk/libgfortran/generated/minloc0_16_r10.c
trunk/libgfortran/generated/minloc0_16_r16.c
trunk/libgfortran/generated/minloc0_16_r4.c
trunk/libgfortran/generated/minloc0_16_r8.c
trunk/libgfortran/generated/minloc0_4_i1.c
trunk/libgfortran/generated/minloc0_4_i16.c
trunk/libgfortran/generated/minloc0_4_i2.c
trunk/libgfortran/generated/minloc0_4_i4.c
trunk/libgfortran/generated/minloc0_4_i8.c
trunk/libgfortran/generated/minloc0_4_r10.c
trunk/libgfortran/generated/minloc0_4_r16.c
trunk/libgfortran/generated/minloc0_4_r4.c
trunk/libgfortran/generated/minloc0_4_r8.c
trunk/libgfortran/generated/minloc0_8_i1.c
trunk/libgfortran/generated/minloc0_8_i16.c
trunk/libgfortran/generated/minloc0_8_i2.c
trunk/libgfortran/generated/minloc0_8_i4.c
trunk/libgfortran/generated/minloc0_8_i8.c
trunk/libgfortran/generated/minloc0_8_r10.c
trunk/libgfortran/generated/minloc0_8_r16.c
trunk/libgfortran/generated/minloc0_8_r4.c
trunk/libgfortran/generated/minloc0_8_r8.c
trunk/libgfortran/generated/minloc1_16_i1.c
trunk/libgfortran/generated/minloc1_16_i16.c
trunk/libgfortran/generated/minloc1_16_i2.c
trunk/libgfortran/generated/minloc1_16_i4.c
trunk/libgfortran/generated/minloc1_16_i8.c
trunk/libgfortran/generated/minloc1_16_r10.c
trunk/libgfortran/generated/minloc1_16_r16.c
trunk/libgfortran/generated/minloc1_16_r4.c
trunk/libgfortran/generated/minloc1_16_r8.c
trunk/libgfortran/generated/minloc1_4_i1.c
trunk/libgfortran/generated/minloc1_4_i16.c
trunk/libgfortran/generated/minloc1_4_i2.c
trunk/libgfortran/generated/minloc1_4_i4.c
trunk/libgfortran/generated/minloc1_4_i8.c
trunk/libgfortran/generated/minloc1_4_r10.c
trunk/libgfortran/generated/minloc1_4_r16.c
trunk/libgfortran/generated/minloc1_4_r4.c
trunk/libgfortran/generated/minloc1_4_r8.c
trunk/libgfortran/generated/minloc1_8_i1.c
trunk/libgfortran/generated/minloc1_8_i16.c
trunk/libgfortran/generated/minloc1_8_i2.c
trunk/libgfortran/generated/minloc1_8_i4.c
trunk/libgfortran/generated/minloc1_8_i8.c
trunk/libgfortran/generated/minloc1_8_r10.c
trunk/libgfortran/generated/minloc1_8_r16.c
trunk/libgfortran/generated/minloc1_8_r4.c
trunk/libgfortran/generated/minloc1_8_r8.c
trunk/libgfortran/generated/minval_i1.c
trunk/libgfortran/generated/minval_i16.c
trunk/libgfortran/generated/minval_i2.c
trunk/libgfortran/generated/minval_i4.c
trunk/libgfortran/generated/minval_i8.c
trunk/libgfortran/generated/minval_r10.c
trunk/libgfortran/generated/minval_r16.c
trunk/libgfortran/generated/minval_r4.c
trunk/libgfortran/generated/minval_r8.c
trunk/libgfortran/generated/product_c10.c
trunk/libgfortran/generated/product_c16.c
trunk/libgfortran/generated/product_c4.c
trunk/libgfortran/generated/product_c8.c
trunk/libgfortran/generated/product_i1.c
trunk/libgfortran/generated/product_i16.c
trunk/libgfortran/generated/product_i2.c
trunk/libgfortran/generated/product_i4.c
trunk/libgfortran/generated/product_i8.c
trunk/libgfortran/generated/product_r10.c
trunk/libgfortran/generated/product_r16.c
trunk/libgfortran/generated/product_r4.c
trunk/libgfortran/generated/product_r8.c
trunk/libgfortran/generated/sum_c10.c
trunk/libgfortran/generated/sum_c16.c
trunk/libgfortran/generated/sum_c4.c
trunk/libgfortran/generated/sum_c8.c
trunk/libgfortran/generated/sum_i1.c
trunk/libgfortran/generated/sum_i16.c
trunk/libgfortran/generated/sum_i2.c
trunk/libgfortran/generated/sum_i4.c
trunk/libgfortran/generated/sum_i8.c
trunk/libgfortran/generated/sum_r10.c
trunk/libgfortran/generated/sum_r16.c
trunk/libgfortran/generated/sum_r4.c
trunk/libgfortran/generated/sum_r8.c
trunk/libgfortran/intrinsics/cshift0.c
trunk/libgfortran/intrinsics/eoshift0.c
trunk/libgfortran/intrinsics/eoshift2.c
trunk/libgfortran/libgfortran.h
trunk/libgfortran/m4/cshift1.m4
trunk/libgfortran/m4/eoshift1.m4
trunk/libgfortran/m4/eoshift3.m4
trunk/libgfortran/m4/iforeach.m4
trunk/libgfortran/m4/ifunction.m4
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34670
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug libfortran/34670] bounds checking for array intrinsics
2008-01-04 11:14 [Bug libfortran/34670] New: bounds checking for array intrinsics tkoenig at gcc dot gnu dot org
` (12 preceding siblings ...)
2009-07-19 15:07 ` tkoenig at gcc dot gnu dot org
@ 2009-07-28 9:04 ` tkoenig at gcc dot gnu dot org
2009-07-28 9:57 ` burnus at gcc dot gnu dot org
` (4 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: tkoenig at gcc dot gnu dot org @ 2009-07-28 9:04 UTC (permalink / raw)
To: gcc-bugs
------- Comment #13 from tkoenig at gcc dot gnu dot org 2009-07-28 09:04 -------
Still missing in intrinsics (at least as far as
grep -L bounds `grep -l gfc_array *.c` tells me):
associated.c
date_and_time.c
dtime.c
etime.c
iso_c_binding.c
move_alloc.c
random.c
stat.c
unpack_generic.c
Missing in m4:
unpack.m4
I'll try to do those during the next two weeks or so, when I'll have no
Internet connection *gasp*
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34670
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug libfortran/34670] bounds checking for array intrinsics
2008-01-04 11:14 [Bug libfortran/34670] New: bounds checking for array intrinsics tkoenig at gcc dot gnu dot org
` (13 preceding siblings ...)
2009-07-28 9:04 ` tkoenig at gcc dot gnu dot org
@ 2009-07-28 9:57 ` burnus at gcc dot gnu dot org
2009-08-25 17:05 ` tkoenig at gcc dot gnu dot org
` (3 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: burnus at gcc dot gnu dot org @ 2009-07-28 9:57 UTC (permalink / raw)
To: gcc-bugs
------- Comment #14 from burnus at gcc dot gnu dot org 2009-07-28 09:57 -------
(In reply to comment #13)
> Still missing in intrinsics (at least as far as
For those which have one-dimensional arrays, one should consider adding the
checks in trans*.c as this is faster for the non -fcheck=bounds case. At least
functions such as random and *time* sound to be such. (And maybe the standard
allows them to be shorter.)
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34670
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug libfortran/34670] bounds checking for array intrinsics
2008-01-04 11:14 [Bug libfortran/34670] New: bounds checking for array intrinsics tkoenig at gcc dot gnu dot org
` (14 preceding siblings ...)
2009-07-28 9:57 ` burnus at gcc dot gnu dot org
@ 2009-08-25 17:05 ` tkoenig at gcc dot gnu dot org
2010-06-03 21:46 ` tkoenig at gcc dot gnu dot org
` (2 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: tkoenig at gcc dot gnu dot org @ 2009-08-25 17:05 UTC (permalink / raw)
To: gcc-bugs
------- Comment #15 from tkoenig at gcc dot gnu dot org 2009-08-25 17:05 -------
Subject: Bug 34670
Author: tkoenig
Date: Tue Aug 25 17:05:10 2009
New Revision: 151085
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=151085
Log:
2009-08-25 Thomas Koenig <tkoenig@gcc.gnu.org>
PR libfortran/34670
* runtime/bounds.c (count_0): New function.
* intrinsics/unpack_generic (unpack_bounds): New function.
(unpack_internal): Remove zero stride checks.
(unpack1): Use unpack_bounds.
(unpack1_char): Likeweise.
(unpack1_char4): Likewise
(unpack0): Likewise.
(unpack0_char): Likewise.
(unpack0_char4): Likewise.
2009-08-25 Thomas Koenig <tkoenig@gcc.gnu.org>
PR libfortran/34670
* gfortran.dg/unpack_bounds_1.f90: New test.
* gfortran.dg/unpack_bounds_2.f90: New test.
* gfortran.dg/unpack_bounds_3.f90: New test.
Added:
trunk/gcc/testsuite/gfortran.dg/unpack_bounds_1.f90 (with props)
trunk/gcc/testsuite/gfortran.dg/unpack_bounds_2.f90 (with props)
trunk/gcc/testsuite/gfortran.dg/unpack_bounds_3.f90 (with props)
Modified:
trunk/gcc/testsuite/ChangeLog
trunk/libgfortran/ChangeLog
trunk/libgfortran/intrinsics/unpack_generic.c
trunk/libgfortran/libgfortran.h
trunk/libgfortran/runtime/bounds.c
Propchange: trunk/gcc/testsuite/gfortran.dg/unpack_bounds_1.f90
('svn:executable' added)
Propchange: trunk/gcc/testsuite/gfortran.dg/unpack_bounds_2.f90
('svn:executable' added)
Propchange: trunk/gcc/testsuite/gfortran.dg/unpack_bounds_3.f90
('svn:executable' added)
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34670
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug libfortran/34670] bounds checking for array intrinsics
2008-01-04 11:14 [Bug libfortran/34670] New: bounds checking for array intrinsics tkoenig at gcc dot gnu dot org
` (15 preceding siblings ...)
2009-08-25 17:05 ` tkoenig at gcc dot gnu dot org
@ 2010-06-03 21:46 ` tkoenig at gcc dot gnu dot org
2010-06-04 6:50 ` tkoenig at gcc dot gnu dot org
2010-06-04 6:51 ` tkoenig at gcc dot gnu dot org
18 siblings, 0 replies; 20+ messages in thread
From: tkoenig at gcc dot gnu dot org @ 2010-06-03 21:46 UTC (permalink / raw)
To: gcc-bugs
------- Comment #16 from tkoenig at gcc dot gnu dot org 2010-06-03 21:45 -------
Looking at what is actually in there...
> associated.c
This doesn't have any bounds issues.
> date_and_time.c
I'll replace an assert with a runtime_error.
> dtime.c
No changes needed.
> etime.c
No changes needed.
> iso_c_binding.c
No changes needed.
> move_alloc.c
No changes needed.
> random.c
Already has runtime_error.
> stat.c
Already has runtime_error.
> unpack_generic.c
>
> Missing in m4:
>
> unpack.m4
Done in the previous patch.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34670
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug libfortran/34670] bounds checking for array intrinsics
2008-01-04 11:14 [Bug libfortran/34670] New: bounds checking for array intrinsics tkoenig at gcc dot gnu dot org
` (16 preceding siblings ...)
2010-06-03 21:46 ` tkoenig at gcc dot gnu dot org
@ 2010-06-04 6:50 ` tkoenig at gcc dot gnu dot org
2010-06-04 6:51 ` tkoenig at gcc dot gnu dot org
18 siblings, 0 replies; 20+ messages in thread
From: tkoenig at gcc dot gnu dot org @ 2010-06-04 6:50 UTC (permalink / raw)
To: gcc-bugs
------- Comment #17 from tkoenig at gcc dot gnu dot org 2010-06-04 06:50 -------
Subject: Bug 34670
Author: tkoenig
Date: Fri Jun 4 06:50:11 2010
New Revision: 160253
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=160253
Log:
2010-06-04 Thomas Koenig <tkoenig@gcc.gnu.org>
PR libfortran/34670
* intrinsics/date_and_time.c: Replace assert with runtime_error
when VALUE is too small.
Modified:
trunk/libgfortran/ChangeLog
trunk/libgfortran/intrinsics/date_and_time.c
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34670
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug libfortran/34670] bounds checking for array intrinsics
2008-01-04 11:14 [Bug libfortran/34670] New: bounds checking for array intrinsics tkoenig at gcc dot gnu dot org
` (17 preceding siblings ...)
2010-06-04 6:50 ` tkoenig at gcc dot gnu dot org
@ 2010-06-04 6:51 ` tkoenig at gcc dot gnu dot org
18 siblings, 0 replies; 20+ messages in thread
From: tkoenig at gcc dot gnu dot org @ 2010-06-04 6:51 UTC (permalink / raw)
To: gcc-bugs
------- Comment #18 from tkoenig at gcc dot gnu dot org 2010-06-04 06:51 -------
Fixed (finally).
Closing.
--
tkoenig at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |RESOLVED
Resolution| |FIXED
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34670
^ permalink raw reply [flat|nested] 20+ messages in thread
end of thread, other threads:[~2010-06-04 6:51 UTC | newest]
Thread overview: 20+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-01-04 11:14 [Bug libfortran/34670] New: bounds checking for array intrinsics tkoenig at gcc dot gnu dot org
2008-01-05 4:05 ` [Bug libfortran/34670] " jvdelisle at gcc dot gnu dot org
2008-01-05 12:11 ` tkoenig at netcologne dot de
2008-01-05 16:18 ` tkoenig at gcc dot gnu dot org
2008-01-06 21:51 ` tkoenig at gcc dot gnu dot org
2008-01-06 21:55 ` tkoenig at gcc dot gnu dot org
2008-01-11 21:19 ` tkoenig at gcc dot gnu dot org
2008-01-26 20:10 ` tkoenig at gcc dot gnu dot org
2008-07-07 19:45 ` tkoenig at gcc dot gnu dot org
2008-10-15 16:30 ` tkoenig at gcc dot gnu dot org
2008-10-15 16:32 ` tkoenig at gcc dot gnu dot org
2008-10-16 10:19 ` tkoenig at gcc dot gnu dot org
2008-10-21 20:15 ` tkoenig at gcc dot gnu dot org
2009-07-19 15:07 ` tkoenig at gcc dot gnu dot org
2009-07-28 9:04 ` tkoenig at gcc dot gnu dot org
2009-07-28 9:57 ` burnus at gcc dot gnu dot org
2009-08-25 17:05 ` tkoenig at gcc dot gnu dot org
2010-06-03 21:46 ` tkoenig at gcc dot gnu dot org
2010-06-04 6:50 ` tkoenig at gcc dot gnu dot org
2010-06-04 6:51 ` tkoenig 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).