]> gcc.gnu.org Git - gcc.git/commitdiff
re PR fortran/27874 (Bad interaction between bounds checking, forall and derived...
authorFrancois-Xavier Coudert <coudert@clipper.ens.fr>
Thu, 6 Jul 2006 17:12:25 +0000 (19:12 +0200)
committerFrançois-Xavier Coudert <fxcoudert@gcc.gnu.org>
Thu, 6 Jul 2006 17:12:25 +0000 (17:12 +0000)
PR fortran/27874
* trans-stmt.c (compute_inner_temp_size): Don't perform bounds
checking when calculating the bounds of scalarization.

From-SVN: r115224

gcc/fortran/ChangeLog
gcc/fortran/trans-stmt.c

index e67b9bbc3dcfcee31be034b7ce4fcccd70ede809..38be155b6d105993329205dea7c97688bcfb8455 100644 (file)
@@ -1,3 +1,9 @@
+2006-07-06  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       PR fortran/27874
+       * trans-stmt.c (compute_inner_temp_size): Don't perform bounds
+       checking when calculating the bounds of scalarization.
+
 2006-07-05  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 
        PR fortran/20892
index 4e2f0fdfe2d073824d3aad584d76cddd99a622fd..a12316688cb9b12739e1f0d4fca71d37d27204b2 100644 (file)
@@ -1957,6 +1957,7 @@ compute_inner_temp_size (gfc_expr *expr1, gfc_expr *expr2,
   gfc_loopinfo loop;
   tree size;
   int i;
+  int save_flag;
   tree tmp;
 
   *lss = gfc_walk_expr (expr1);
@@ -1989,7 +1990,10 @@ compute_inner_temp_size (gfc_expr *expr1, gfc_expr *expr2,
       loop.array_parameter = 1;
 
       /* Calculate the bounds of the scalarization.  */
+      save_flag = flag_bounds_check;
+      flag_bounds_check = 0;
       gfc_conv_ss_startstride (&loop);
+      flag_bounds_check = save_flag;
       gfc_conv_loop_setup (&loop);
 
       /* Figure out how many elements we need.  */
This page took 0.07412 seconds and 5 git commands to generate.