aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libgfortran/ChangeLog281
-rw-r--r--libgfortran/generated/all_l1.c2
-rw-r--r--libgfortran/generated/all_l16.c2
-rw-r--r--libgfortran/generated/all_l2.c2
-rw-r--r--libgfortran/generated/all_l4.c2
-rw-r--r--libgfortran/generated/all_l8.c2
-rw-r--r--libgfortran/generated/any_l1.c2
-rw-r--r--libgfortran/generated/any_l16.c2
-rw-r--r--libgfortran/generated/any_l2.c2
-rw-r--r--libgfortran/generated/any_l4.c2
-rw-r--r--libgfortran/generated/any_l8.c2
-rw-r--r--libgfortran/generated/count_16_l.c2
-rw-r--r--libgfortran/generated/count_1_l.c2
-rw-r--r--libgfortran/generated/count_2_l.c2
-rw-r--r--libgfortran/generated/count_4_l.c2
-rw-r--r--libgfortran/generated/count_8_l.c2
-rw-r--r--libgfortran/generated/cshift1_16.c2
-rw-r--r--libgfortran/generated/cshift1_4.c2
-rw-r--r--libgfortran/generated/cshift1_8.c2
-rw-r--r--libgfortran/generated/eoshift1_16.c2
-rw-r--r--libgfortran/generated/eoshift1_4.c2
-rw-r--r--libgfortran/generated/eoshift1_8.c2
-rw-r--r--libgfortran/generated/eoshift3_16.c2
-rw-r--r--libgfortran/generated/eoshift3_4.c2
-rw-r--r--libgfortran/generated/eoshift3_8.c2
-rw-r--r--libgfortran/generated/iall_i1.c6
-rw-r--r--libgfortran/generated/iall_i16.c6
-rw-r--r--libgfortran/generated/iall_i2.c6
-rw-r--r--libgfortran/generated/iall_i4.c6
-rw-r--r--libgfortran/generated/iall_i8.c6
-rw-r--r--libgfortran/generated/iany_i1.c6
-rw-r--r--libgfortran/generated/iany_i16.c6
-rw-r--r--libgfortran/generated/iany_i2.c6
-rw-r--r--libgfortran/generated/iany_i4.c6
-rw-r--r--libgfortran/generated/iany_i8.c6
-rw-r--r--libgfortran/generated/iparity_i1.c6
-rw-r--r--libgfortran/generated/iparity_i16.c6
-rw-r--r--libgfortran/generated/iparity_i2.c6
-rw-r--r--libgfortran/generated/iparity_i4.c6
-rw-r--r--libgfortran/generated/iparity_i8.c6
-rw-r--r--libgfortran/generated/maxloc0_16_i1.c6
-rw-r--r--libgfortran/generated/maxloc0_16_i16.c6
-rw-r--r--libgfortran/generated/maxloc0_16_i2.c6
-rw-r--r--libgfortran/generated/maxloc0_16_i4.c6
-rw-r--r--libgfortran/generated/maxloc0_16_i8.c6
-rw-r--r--libgfortran/generated/maxloc0_16_r10.c6
-rw-r--r--libgfortran/generated/maxloc0_16_r16.c6
-rw-r--r--libgfortran/generated/maxloc0_16_r4.c6
-rw-r--r--libgfortran/generated/maxloc0_16_r8.c6
-rw-r--r--libgfortran/generated/maxloc0_16_s1.c6
-rw-r--r--libgfortran/generated/maxloc0_16_s4.c6
-rw-r--r--libgfortran/generated/maxloc0_4_i1.c6
-rw-r--r--libgfortran/generated/maxloc0_4_i16.c6
-rw-r--r--libgfortran/generated/maxloc0_4_i2.c6
-rw-r--r--libgfortran/generated/maxloc0_4_i4.c6
-rw-r--r--libgfortran/generated/maxloc0_4_i8.c6
-rw-r--r--libgfortran/generated/maxloc0_4_r10.c6
-rw-r--r--libgfortran/generated/maxloc0_4_r16.c6
-rw-r--r--libgfortran/generated/maxloc0_4_r4.c6
-rw-r--r--libgfortran/generated/maxloc0_4_r8.c6
-rw-r--r--libgfortran/generated/maxloc0_4_s1.c6
-rw-r--r--libgfortran/generated/maxloc0_4_s4.c6
-rw-r--r--libgfortran/generated/maxloc0_8_i1.c6
-rw-r--r--libgfortran/generated/maxloc0_8_i16.c6
-rw-r--r--libgfortran/generated/maxloc0_8_i2.c6
-rw-r--r--libgfortran/generated/maxloc0_8_i4.c6
-rw-r--r--libgfortran/generated/maxloc0_8_i8.c6
-rw-r--r--libgfortran/generated/maxloc0_8_r10.c6
-rw-r--r--libgfortran/generated/maxloc0_8_r16.c6
-rw-r--r--libgfortran/generated/maxloc0_8_r4.c6
-rw-r--r--libgfortran/generated/maxloc0_8_r8.c6
-rw-r--r--libgfortran/generated/maxloc0_8_s1.c6
-rw-r--r--libgfortran/generated/maxloc0_8_s4.c6
-rw-r--r--libgfortran/generated/maxloc1_16_i1.c6
-rw-r--r--libgfortran/generated/maxloc1_16_i16.c6
-rw-r--r--libgfortran/generated/maxloc1_16_i2.c6
-rw-r--r--libgfortran/generated/maxloc1_16_i4.c6
-rw-r--r--libgfortran/generated/maxloc1_16_i8.c6
-rw-r--r--libgfortran/generated/maxloc1_16_r10.c6
-rw-r--r--libgfortran/generated/maxloc1_16_r16.c6
-rw-r--r--libgfortran/generated/maxloc1_16_r4.c6
-rw-r--r--libgfortran/generated/maxloc1_16_r8.c6
-rw-r--r--libgfortran/generated/maxloc1_16_s1.c6
-rw-r--r--libgfortran/generated/maxloc1_16_s4.c6
-rw-r--r--libgfortran/generated/maxloc1_4_i1.c6
-rw-r--r--libgfortran/generated/maxloc1_4_i16.c6
-rw-r--r--libgfortran/generated/maxloc1_4_i2.c6
-rw-r--r--libgfortran/generated/maxloc1_4_i4.c6
-rw-r--r--libgfortran/generated/maxloc1_4_i8.c6
-rw-r--r--libgfortran/generated/maxloc1_4_r10.c6
-rw-r--r--libgfortran/generated/maxloc1_4_r16.c6
-rw-r--r--libgfortran/generated/maxloc1_4_r4.c6
-rw-r--r--libgfortran/generated/maxloc1_4_r8.c6
-rw-r--r--libgfortran/generated/maxloc1_4_s1.c6
-rw-r--r--libgfortran/generated/maxloc1_4_s4.c6
-rw-r--r--libgfortran/generated/maxloc1_8_i1.c6
-rw-r--r--libgfortran/generated/maxloc1_8_i16.c6
-rw-r--r--libgfortran/generated/maxloc1_8_i2.c6
-rw-r--r--libgfortran/generated/maxloc1_8_i4.c6
-rw-r--r--libgfortran/generated/maxloc1_8_i8.c6
-rw-r--r--libgfortran/generated/maxloc1_8_r10.c6
-rw-r--r--libgfortran/generated/maxloc1_8_r16.c6
-rw-r--r--libgfortran/generated/maxloc1_8_r4.c6
-rw-r--r--libgfortran/generated/maxloc1_8_r8.c6
-rw-r--r--libgfortran/generated/maxloc1_8_s1.c6
-rw-r--r--libgfortran/generated/maxloc1_8_s4.c6
-rw-r--r--libgfortran/generated/maxval1_s1.c6
-rw-r--r--libgfortran/generated/maxval1_s4.c6
-rw-r--r--libgfortran/generated/maxval_i1.c6
-rw-r--r--libgfortran/generated/maxval_i16.c6
-rw-r--r--libgfortran/generated/maxval_i2.c6
-rw-r--r--libgfortran/generated/maxval_i4.c6
-rw-r--r--libgfortran/generated/maxval_i8.c6
-rw-r--r--libgfortran/generated/maxval_r10.c6
-rw-r--r--libgfortran/generated/maxval_r16.c6
-rw-r--r--libgfortran/generated/maxval_r4.c6
-rw-r--r--libgfortran/generated/maxval_r8.c6
-rw-r--r--libgfortran/generated/minloc0_16_i1.c6
-rw-r--r--libgfortran/generated/minloc0_16_i16.c6
-rw-r--r--libgfortran/generated/minloc0_16_i2.c6
-rw-r--r--libgfortran/generated/minloc0_16_i4.c6
-rw-r--r--libgfortran/generated/minloc0_16_i8.c6
-rw-r--r--libgfortran/generated/minloc0_16_r10.c6
-rw-r--r--libgfortran/generated/minloc0_16_r16.c6
-rw-r--r--libgfortran/generated/minloc0_16_r4.c6
-rw-r--r--libgfortran/generated/minloc0_16_r8.c6
-rw-r--r--libgfortran/generated/minloc0_16_s1.c6
-rw-r--r--libgfortran/generated/minloc0_16_s4.c6
-rw-r--r--libgfortran/generated/minloc0_4_i1.c6
-rw-r--r--libgfortran/generated/minloc0_4_i16.c6
-rw-r--r--libgfortran/generated/minloc0_4_i2.c6
-rw-r--r--libgfortran/generated/minloc0_4_i4.c6
-rw-r--r--libgfortran/generated/minloc0_4_i8.c6
-rw-r--r--libgfortran/generated/minloc0_4_r10.c6
-rw-r--r--libgfortran/generated/minloc0_4_r16.c6
-rw-r--r--libgfortran/generated/minloc0_4_r4.c6
-rw-r--r--libgfortran/generated/minloc0_4_r8.c6
-rw-r--r--libgfortran/generated/minloc0_4_s1.c6
-rw-r--r--libgfortran/generated/minloc0_4_s4.c6
-rw-r--r--libgfortran/generated/minloc0_8_i1.c6
-rw-r--r--libgfortran/generated/minloc0_8_i16.c6
-rw-r--r--libgfortran/generated/minloc0_8_i2.c6
-rw-r--r--libgfortran/generated/minloc0_8_i4.c6
-rw-r--r--libgfortran/generated/minloc0_8_i8.c6
-rw-r--r--libgfortran/generated/minloc0_8_r10.c6
-rw-r--r--libgfortran/generated/minloc0_8_r16.c6
-rw-r--r--libgfortran/generated/minloc0_8_r4.c6
-rw-r--r--libgfortran/generated/minloc0_8_r8.c6
-rw-r--r--libgfortran/generated/minloc0_8_s1.c6
-rw-r--r--libgfortran/generated/minloc0_8_s4.c6
-rw-r--r--libgfortran/generated/minloc1_16_i1.c6
-rw-r--r--libgfortran/generated/minloc1_16_i16.c6
-rw-r--r--libgfortran/generated/minloc1_16_i2.c6
-rw-r--r--libgfortran/generated/minloc1_16_i4.c6
-rw-r--r--libgfortran/generated/minloc1_16_i8.c6
-rw-r--r--libgfortran/generated/minloc1_16_r10.c6
-rw-r--r--libgfortran/generated/minloc1_16_r16.c6
-rw-r--r--libgfortran/generated/minloc1_16_r4.c6
-rw-r--r--libgfortran/generated/minloc1_16_r8.c6
-rw-r--r--libgfortran/generated/minloc1_16_s1.c6
-rw-r--r--libgfortran/generated/minloc1_16_s4.c6
-rw-r--r--libgfortran/generated/minloc1_4_i1.c6
-rw-r--r--libgfortran/generated/minloc1_4_i16.c6
-rw-r--r--libgfortran/generated/minloc1_4_i2.c6
-rw-r--r--libgfortran/generated/minloc1_4_i4.c6
-rw-r--r--libgfortran/generated/minloc1_4_i8.c6
-rw-r--r--libgfortran/generated/minloc1_4_r10.c6
-rw-r--r--libgfortran/generated/minloc1_4_r16.c6
-rw-r--r--libgfortran/generated/minloc1_4_r4.c6
-rw-r--r--libgfortran/generated/minloc1_4_r8.c6
-rw-r--r--libgfortran/generated/minloc1_4_s1.c6
-rw-r--r--libgfortran/generated/minloc1_4_s4.c6
-rw-r--r--libgfortran/generated/minloc1_8_i1.c6
-rw-r--r--libgfortran/generated/minloc1_8_i16.c6
-rw-r--r--libgfortran/generated/minloc1_8_i2.c6
-rw-r--r--libgfortran/generated/minloc1_8_i4.c6
-rw-r--r--libgfortran/generated/minloc1_8_i8.c6
-rw-r--r--libgfortran/generated/minloc1_8_r10.c6
-rw-r--r--libgfortran/generated/minloc1_8_r16.c6
-rw-r--r--libgfortran/generated/minloc1_8_r4.c6
-rw-r--r--libgfortran/generated/minloc1_8_r8.c6
-rw-r--r--libgfortran/generated/minloc1_8_s1.c6
-rw-r--r--libgfortran/generated/minloc1_8_s4.c6
-rw-r--r--libgfortran/generated/minval1_s1.c6
-rw-r--r--libgfortran/generated/minval1_s4.c6
-rw-r--r--libgfortran/generated/minval_i1.c6
-rw-r--r--libgfortran/generated/minval_i16.c6
-rw-r--r--libgfortran/generated/minval_i2.c6
-rw-r--r--libgfortran/generated/minval_i4.c6
-rw-r--r--libgfortran/generated/minval_i8.c6
-rw-r--r--libgfortran/generated/minval_r10.c6
-rw-r--r--libgfortran/generated/minval_r16.c6
-rw-r--r--libgfortran/generated/minval_r4.c6
-rw-r--r--libgfortran/generated/minval_r8.c6
-rw-r--r--libgfortran/generated/norm2_r10.c2
-rw-r--r--libgfortran/generated/norm2_r16.c2
-rw-r--r--libgfortran/generated/norm2_r4.c2
-rw-r--r--libgfortran/generated/norm2_r8.c2
-rw-r--r--libgfortran/generated/parity_l1.c2
-rw-r--r--libgfortran/generated/parity_l16.c2
-rw-r--r--libgfortran/generated/parity_l2.c2
-rw-r--r--libgfortran/generated/parity_l4.c2
-rw-r--r--libgfortran/generated/parity_l8.c2
-rw-r--r--libgfortran/generated/product_c10.c6
-rw-r--r--libgfortran/generated/product_c16.c6
-rw-r--r--libgfortran/generated/product_c4.c6
-rw-r--r--libgfortran/generated/product_c8.c6
-rw-r--r--libgfortran/generated/product_i1.c6
-rw-r--r--libgfortran/generated/product_i16.c6
-rw-r--r--libgfortran/generated/product_i2.c6
-rw-r--r--libgfortran/generated/product_i4.c6
-rw-r--r--libgfortran/generated/product_i8.c6
-rw-r--r--libgfortran/generated/product_r10.c6
-rw-r--r--libgfortran/generated/product_r16.c6
-rw-r--r--libgfortran/generated/product_r4.c6
-rw-r--r--libgfortran/generated/product_r8.c6
-rw-r--r--libgfortran/generated/reshape_c10.c2
-rw-r--r--libgfortran/generated/reshape_c16.c2
-rw-r--r--libgfortran/generated/reshape_c4.c2
-rw-r--r--libgfortran/generated/reshape_c8.c2
-rw-r--r--libgfortran/generated/reshape_i16.c2
-rw-r--r--libgfortran/generated/reshape_i4.c2
-rw-r--r--libgfortran/generated/reshape_i8.c2
-rw-r--r--libgfortran/generated/reshape_r10.c2
-rw-r--r--libgfortran/generated/reshape_r16.c2
-rw-r--r--libgfortran/generated/reshape_r4.c2
-rw-r--r--libgfortran/generated/reshape_r8.c2
-rw-r--r--libgfortran/generated/spread_c10.c2
-rw-r--r--libgfortran/generated/spread_c16.c2
-rw-r--r--libgfortran/generated/spread_c4.c2
-rw-r--r--libgfortran/generated/spread_c8.c2
-rw-r--r--libgfortran/generated/spread_i1.c2
-rw-r--r--libgfortran/generated/spread_i16.c2
-rw-r--r--libgfortran/generated/spread_i2.c2
-rw-r--r--libgfortran/generated/spread_i4.c2
-rw-r--r--libgfortran/generated/spread_i8.c2
-rw-r--r--libgfortran/generated/spread_r10.c2
-rw-r--r--libgfortran/generated/spread_r16.c2
-rw-r--r--libgfortran/generated/spread_r4.c2
-rw-r--r--libgfortran/generated/spread_r8.c2
-rw-r--r--libgfortran/generated/sum_c10.c6
-rw-r--r--libgfortran/generated/sum_c16.c6
-rw-r--r--libgfortran/generated/sum_c4.c6
-rw-r--r--libgfortran/generated/sum_c8.c6
-rw-r--r--libgfortran/generated/sum_i1.c6
-rw-r--r--libgfortran/generated/sum_i16.c6
-rw-r--r--libgfortran/generated/sum_i2.c6
-rw-r--r--libgfortran/generated/sum_i4.c6
-rw-r--r--libgfortran/generated/sum_i8.c6
-rw-r--r--libgfortran/generated/sum_r10.c6
-rw-r--r--libgfortran/generated/sum_r16.c6
-rw-r--r--libgfortran/generated/sum_r4.c6
-rw-r--r--libgfortran/generated/sum_r8.c6
-rw-r--r--libgfortran/intrinsics/cshift0.c2
-rw-r--r--libgfortran/intrinsics/eoshift0.c2
-rw-r--r--libgfortran/intrinsics/eoshift2.c2
-rw-r--r--libgfortran/intrinsics/move_alloc.c2
-rw-r--r--libgfortran/intrinsics/reshape_generic.c2
-rw-r--r--libgfortran/intrinsics/spread_generic.c8
-rw-r--r--libgfortran/intrinsics/unpack_generic.c6
-rw-r--r--libgfortran/libgfortran.h11
-rw-r--r--libgfortran/m4/cshift1.m42
-rw-r--r--libgfortran/m4/eoshift1.m42
-rw-r--r--libgfortran/m4/eoshift3.m42
-rw-r--r--libgfortran/m4/iforeach-s.m46
-rw-r--r--libgfortran/m4/iforeach.m46
-rw-r--r--libgfortran/m4/ifunction-s.m46
-rw-r--r--libgfortran/m4/ifunction-s2.m46
-rw-r--r--libgfortran/m4/ifunction.m46
-rw-r--r--libgfortran/m4/ifunction_logical.m42
-rw-r--r--libgfortran/m4/reshape.m42
-rw-r--r--libgfortran/m4/spread.m42
272 files changed, 967 insertions, 675 deletions
diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog
index 64f671b0..d05e6c6 100644
--- a/libgfortran/ChangeLog
+++ b/libgfortran/ChangeLog
@@ -1,3 +1,284 @@
+2018-01-07 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ * libgfortran.h (GFC_DTYPE_COPY): New macro.
+ (GFC_DTYPE_COPY_SETRANK): New macro.
+ (GFC_DTYPE_IS_UNSET): New macro.
+ * intrinsics/cshift0.c (cshift0): Use new macros.
+ * intrinsics/eoshift0.c (eoshift0): Likewise.
+ * intrinsics/eoshift2.c (eoshift2): Likewise.
+ * intrinsics/move_alloc.c (move_alloc): Likewise.
+ * intrinsics/reshape_generic.c (reshape_internal): Likewise.
+ * intrinsics/spread_generic.c (spread_internal): Likewise.
+ * intrinsics/spread_generic.c (spread_scalar): Likewise.
+ * intrinsics/spread_generic.c (spread_char_scalar): Likewise.
+ * intrinsics/spread_generic.c (spread_char4_scalar): Likewise.
+ * intrinsics/unpack_generic.c (unpack0): Likewise.
+ * intrinsics/unpack_generic.c (unpack0_char): Likewise.
+ * intrinsics/unpack_generic.c (unpack0_char4): Likewise.
+ * m4/cshift1.m4 (cshift1): Likewise.
+ * m4/eoshift1.m4 (eoshift1): Likewise.
+ * m4/eoshift3.m4 (eoshift3): Likewise.
+ * m4/iforeach-s.m4: Likewise.
+ * m4/iforeach.m4: Likewise.
+ * m4/ifunction-s.m4: Likewise.
+ * m4/ifunction-s2.m4: Likewise.
+ * m4/ifunction.m4: Likewise.
+ * m4/ifunction_logical.m4: Likewise.
+ * m4/reshape.m4: Likewise.
+ * m4/spread.m4: Likewise.
+ * generated/all_l1.c : Regenerated.
+ * generated/all_l16.c : Regenerated.
+ * generated/all_l2.c : Regenerated.
+ * generated/all_l4.c : Regenerated.
+ * generated/all_l8.c : Regenerated.
+ * generated/any_l1.c : Regenerated.
+ * generated/any_l16.c : Regenerated.
+ * generated/any_l2.c : Regenerated.
+ * generated/any_l4.c : Regenerated.
+ * generated/any_l8.c : Regenerated.
+ * generated/count_16_l.c : Regenerated.
+ * generated/count_1_l.c : Regenerated.
+ * generated/count_2_l.c : Regenerated.
+ * generated/count_4_l.c : Regenerated.
+ * generated/count_8_l.c : 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/iall_i1.c : Regenerated.
+ * generated/iall_i16.c : Regenerated.
+ * generated/iall_i2.c : Regenerated.
+ * generated/iall_i4.c : Regenerated.
+ * generated/iall_i8.c : Regenerated.
+ * generated/iany_i1.c : Regenerated.
+ * generated/iany_i16.c : Regenerated.
+ * generated/iany_i2.c : Regenerated.
+ * generated/iany_i4.c : Regenerated.
+ * generated/iany_i8.c : Regenerated.
+ * generated/iparity_i1.c : Regenerated.
+ * generated/iparity_i16.c : Regenerated.
+ * generated/iparity_i2.c : Regenerated.
+ * generated/iparity_i4.c : Regenerated.
+ * generated/iparity_i8.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_16_s1.c : Regenerated.
+ * generated/maxloc0_16_s4.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_4_s1.c : Regenerated.
+ * generated/maxloc0_4_s4.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/maxloc0_8_s1.c : Regenerated.
+ * generated/maxloc0_8_s4.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_16_s1.c : Regenerated.
+ * generated/maxloc1_16_s4.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_4_s1.c : Regenerated.
+ * generated/maxloc1_4_s4.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/maxloc1_8_s1.c : Regenerated.
+ * generated/maxloc1_8_s4.c : Regenerated.
+ * generated/maxval1_s1.c : Regenerated.
+ * generated/maxval1_s4.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_16_s1.c : Regenerated.
+ * generated/minloc0_16_s4.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_4_s1.c : Regenerated.
+ * generated/minloc0_4_s4.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/minloc0_8_s1.c : Regenerated.
+ * generated/minloc0_8_s4.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_16_s1.c : Regenerated.
+ * generated/minloc1_16_s4.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_4_s1.c : Regenerated.
+ * generated/minloc1_4_s4.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/minloc1_8_s1.c : Regenerated.
+ * generated/minloc1_8_s4.c : Regenerated.
+ * generated/minval1_s1.c : Regenerated.
+ * generated/minval1_s4.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/norm2_r10.c : Regenerated.
+ * generated/norm2_r16.c : Regenerated.
+ * generated/norm2_r4.c : Regenerated.
+ * generated/norm2_r8.c : Regenerated.
+ * generated/parity_l1.c : Regenerated.
+ * generated/parity_l16.c : Regenerated.
+ * generated/parity_l2.c : Regenerated.
+ * generated/parity_l4.c : Regenerated.
+ * generated/parity_l8.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/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_c10.c : Regenerated.
+ * generated/spread_c16.c : Regenerated.
+ * generated/spread_c4.c : Regenerated.
+ * generated/spread_c8.c : Regenerated.
+ * generated/spread_i1.c : Regenerated.
+ * generated/spread_i16.c : Regenerated.
+ * generated/spread_i2.c : Regenerated.
+ * generated/spread_i4.c : Regenerated.
+ * generated/spread_i8.c : Regenerated.
+ * generated/spread_r10.c : Regenerated.
+ * generated/spread_r16.c : Regenerated.
+ * generated/spread_r4.c : Regenerated.
+ * generated/spread_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.
+
2018-01-07 Janne Blomqvist <jb@gcc.gnu.org>
PR fortran/78534
diff --git a/libgfortran/generated/all_l1.c b/libgfortran/generated/all_l1.c
index 82859eb..8779367 100644
--- a/libgfortran/generated/all_l1.c
+++ b/libgfortran/generated/all_l1.c
@@ -97,7 +97,7 @@ all_l1 (gfc_array_l1 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/all_l16.c b/libgfortran/generated/all_l16.c
index f7104b0..ef3d12e 100644
--- a/libgfortran/generated/all_l16.c
+++ b/libgfortran/generated/all_l16.c
@@ -97,7 +97,7 @@ all_l16 (gfc_array_l16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/all_l2.c b/libgfortran/generated/all_l2.c
index e44a937..18a0ef6 100644
--- a/libgfortran/generated/all_l2.c
+++ b/libgfortran/generated/all_l2.c
@@ -97,7 +97,7 @@ all_l2 (gfc_array_l2 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/all_l4.c b/libgfortran/generated/all_l4.c
index 9f5c9f5..522c591 100644
--- a/libgfortran/generated/all_l4.c
+++ b/libgfortran/generated/all_l4.c
@@ -97,7 +97,7 @@ all_l4 (gfc_array_l4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/all_l8.c b/libgfortran/generated/all_l8.c
index 88a8fa0..a762ac0 100644
--- a/libgfortran/generated/all_l8.c
+++ b/libgfortran/generated/all_l8.c
@@ -97,7 +97,7 @@ all_l8 (gfc_array_l8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/any_l1.c b/libgfortran/generated/any_l1.c
index 6d83119..c2d3d54 100644
--- a/libgfortran/generated/any_l1.c
+++ b/libgfortran/generated/any_l1.c
@@ -97,7 +97,7 @@ any_l1 (gfc_array_l1 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/any_l16.c b/libgfortran/generated/any_l16.c
index aebee57..181bb85 100644
--- a/libgfortran/generated/any_l16.c
+++ b/libgfortran/generated/any_l16.c
@@ -97,7 +97,7 @@ any_l16 (gfc_array_l16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/any_l2.c b/libgfortran/generated/any_l2.c
index de78437..b6b86e5 100644
--- a/libgfortran/generated/any_l2.c
+++ b/libgfortran/generated/any_l2.c
@@ -97,7 +97,7 @@ any_l2 (gfc_array_l2 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/any_l4.c b/libgfortran/generated/any_l4.c
index 2b1d216..3249b28 100644
--- a/libgfortran/generated/any_l4.c
+++ b/libgfortran/generated/any_l4.c
@@ -97,7 +97,7 @@ any_l4 (gfc_array_l4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/any_l8.c b/libgfortran/generated/any_l8.c
index 5bdf182..6569cb5 100644
--- a/libgfortran/generated/any_l8.c
+++ b/libgfortran/generated/any_l8.c
@@ -97,7 +97,7 @@ any_l8 (gfc_array_l8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/count_16_l.c b/libgfortran/generated/count_16_l.c
index 37adb25..d099eed 100644
--- a/libgfortran/generated/count_16_l.c
+++ b/libgfortran/generated/count_16_l.c
@@ -97,7 +97,7 @@ count_16_l (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/count_1_l.c b/libgfortran/generated/count_1_l.c
index 5627064..b403d83 100644
--- a/libgfortran/generated/count_1_l.c
+++ b/libgfortran/generated/count_1_l.c
@@ -97,7 +97,7 @@ count_1_l (gfc_array_i1 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/count_2_l.c b/libgfortran/generated/count_2_l.c
index fe83426..e316bbb 100644
--- a/libgfortran/generated/count_2_l.c
+++ b/libgfortran/generated/count_2_l.c
@@ -97,7 +97,7 @@ count_2_l (gfc_array_i2 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/count_4_l.c b/libgfortran/generated/count_4_l.c
index 8493cb1..1748e85 100644
--- a/libgfortran/generated/count_4_l.c
+++ b/libgfortran/generated/count_4_l.c
@@ -97,7 +97,7 @@ count_4_l (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/count_8_l.c b/libgfortran/generated/count_8_l.c
index 0964df2..d191786 100644
--- a/libgfortran/generated/count_8_l.c
+++ b/libgfortran/generated/count_8_l.c
@@ -97,7 +97,7 @@ count_8_l (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/cshift1_16.c b/libgfortran/generated/cshift1_16.c
index c79b90a..e6921ac 100644
--- a/libgfortran/generated/cshift1_16.c
+++ b/libgfortran/generated/cshift1_16.c
@@ -81,7 +81,7 @@ cshift1 (gfc_array_char * const restrict ret,
ret->base_addr = xmallocarray (arraysize, size);
ret->offset = 0;
- ret->dtype = array->dtype;
+ GFC_DTYPE_COPY(ret,array);
for (i = 0; i < GFC_DESCRIPTOR_RANK (array); i++)
{
index_type ub, str;
diff --git a/libgfortran/generated/cshift1_4.c b/libgfortran/generated/cshift1_4.c
index 0da8513..530aabc 100644
--- a/libgfortran/generated/cshift1_4.c
+++ b/libgfortran/generated/cshift1_4.c
@@ -81,7 +81,7 @@ cshift1 (gfc_array_char * const restrict ret,
ret->base_addr = xmallocarray (arraysize, size);
ret->offset = 0;
- ret->dtype = array->dtype;
+ GFC_DTYPE_COPY(ret,array);
for (i = 0; i < GFC_DESCRIPTOR_RANK (array); i++)
{
index_type ub, str;
diff --git a/libgfortran/generated/cshift1_8.c b/libgfortran/generated/cshift1_8.c
index cc0800f..9d65c4a 100644
--- a/libgfortran/generated/cshift1_8.c
+++ b/libgfortran/generated/cshift1_8.c
@@ -81,7 +81,7 @@ cshift1 (gfc_array_char * const restrict ret,
ret->base_addr = xmallocarray (arraysize, size);
ret->offset = 0;
- ret->dtype = array->dtype;
+ GFC_DTYPE_COPY(ret,array);
for (i = 0; i < GFC_DESCRIPTOR_RANK (array); i++)
{
index_type ub, str;
diff --git a/libgfortran/generated/eoshift1_16.c b/libgfortran/generated/eoshift1_16.c
index 58afe8e..35620d6 100644
--- a/libgfortran/generated/eoshift1_16.c
+++ b/libgfortran/generated/eoshift1_16.c
@@ -87,7 +87,7 @@ eoshift1 (gfc_array_char * const restrict ret,
int i;
ret->offset = 0;
- ret->dtype = array->dtype;
+ GFC_DTYPE_COPY(ret,array);
for (i = 0; i < GFC_DESCRIPTOR_RANK (array); i++)
{
index_type ub, str;
diff --git a/libgfortran/generated/eoshift1_4.c b/libgfortran/generated/eoshift1_4.c
index 32dd33e4..2e6c014 100644
--- a/libgfortran/generated/eoshift1_4.c
+++ b/libgfortran/generated/eoshift1_4.c
@@ -87,7 +87,7 @@ eoshift1 (gfc_array_char * const restrict ret,
int i;
ret->offset = 0;
- ret->dtype = array->dtype;
+ GFC_DTYPE_COPY(ret,array);
for (i = 0; i < GFC_DESCRIPTOR_RANK (array); i++)
{
index_type ub, str;
diff --git a/libgfortran/generated/eoshift1_8.c b/libgfortran/generated/eoshift1_8.c
index 175b390..4cd90a5 100644
--- a/libgfortran/generated/eoshift1_8.c
+++ b/libgfortran/generated/eoshift1_8.c
@@ -87,7 +87,7 @@ eoshift1 (gfc_array_char * const restrict ret,
int i;
ret->offset = 0;
- ret->dtype = array->dtype;
+ GFC_DTYPE_COPY(ret,array);
for (i = 0; i < GFC_DESCRIPTOR_RANK (array); i++)
{
index_type ub, str;
diff --git a/libgfortran/generated/eoshift3_16.c b/libgfortran/generated/eoshift3_16.c
index 88f6c29..018b640 100644
--- a/libgfortran/generated/eoshift3_16.c
+++ b/libgfortran/generated/eoshift3_16.c
@@ -89,7 +89,7 @@ eoshift3 (gfc_array_char * const restrict ret,
ret->base_addr = xmallocarray (arraysize, size);
ret->offset = 0;
- ret->dtype = array->dtype;
+ GFC_DTYPE_COPY(ret,array);
for (i = 0; i < GFC_DESCRIPTOR_RANK (array); i++)
{
index_type ub, str;
diff --git a/libgfortran/generated/eoshift3_4.c b/libgfortran/generated/eoshift3_4.c
index 1ccb270..c27dcba 100644
--- a/libgfortran/generated/eoshift3_4.c
+++ b/libgfortran/generated/eoshift3_4.c
@@ -89,7 +89,7 @@ eoshift3 (gfc_array_char * const restrict ret,
ret->base_addr = xmallocarray (arraysize, size);
ret->offset = 0;
- ret->dtype = array->dtype;
+ GFC_DTYPE_COPY(ret,array);
for (i = 0; i < GFC_DESCRIPTOR_RANK (array); i++)
{
index_type ub, str;
diff --git a/libgfortran/generated/eoshift3_8.c b/libgfortran/generated/eoshift3_8.c
index 1ef11dc..2649ced 100644
--- a/libgfortran/generated/eoshift3_8.c
+++ b/libgfortran/generated/eoshift3_8.c
@@ -89,7 +89,7 @@ eoshift3 (gfc_array_char * const restrict ret,
ret->base_addr = xmallocarray (arraysize, size);
ret->offset = 0;
- ret->dtype = array->dtype;
+ GFC_DTYPE_COPY(ret,array);
for (i = 0; i < GFC_DESCRIPTOR_RANK (array); i++)
{
index_type ub, str;
diff --git a/libgfortran/generated/iall_i1.c b/libgfortran/generated/iall_i1.c
index a3cea87..bf13b79 100644
--- a/libgfortran/generated/iall_i1.c
+++ b/libgfortran/generated/iall_i1.c
@@ -100,7 +100,7 @@ iall_i1 (gfc_array_i1 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -287,7 +287,7 @@ miall_i1 (gfc_array_i1 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -446,7 +446,7 @@ siall_i1 (gfc_array_i1 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/iall_i16.c b/libgfortran/generated/iall_i16.c
index 0eab5ab..a3de245 100644
--- a/libgfortran/generated/iall_i16.c
+++ b/libgfortran/generated/iall_i16.c
@@ -100,7 +100,7 @@ iall_i16 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -287,7 +287,7 @@ miall_i16 (gfc_array_i16 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -446,7 +446,7 @@ siall_i16 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/iall_i2.c b/libgfortran/generated/iall_i2.c
index 4711c81..b2b3f05 100644
--- a/libgfortran/generated/iall_i2.c
+++ b/libgfortran/generated/iall_i2.c
@@ -100,7 +100,7 @@ iall_i2 (gfc_array_i2 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -287,7 +287,7 @@ miall_i2 (gfc_array_i2 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -446,7 +446,7 @@ siall_i2 (gfc_array_i2 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/iall_i4.c b/libgfortran/generated/iall_i4.c
index 02b3078..70a4379 100644
--- a/libgfortran/generated/iall_i4.c
+++ b/libgfortran/generated/iall_i4.c
@@ -100,7 +100,7 @@ iall_i4 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -287,7 +287,7 @@ miall_i4 (gfc_array_i4 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -446,7 +446,7 @@ siall_i4 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/iall_i8.c b/libgfortran/generated/iall_i8.c
index 4baacdb..77cc4c0 100644
--- a/libgfortran/generated/iall_i8.c
+++ b/libgfortran/generated/iall_i8.c
@@ -100,7 +100,7 @@ iall_i8 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -287,7 +287,7 @@ miall_i8 (gfc_array_i8 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -446,7 +446,7 @@ siall_i8 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/iany_i1.c b/libgfortran/generated/iany_i1.c
index e70d4b7..9673cb0 100644
--- a/libgfortran/generated/iany_i1.c
+++ b/libgfortran/generated/iany_i1.c
@@ -100,7 +100,7 @@ iany_i1 (gfc_array_i1 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -287,7 +287,7 @@ miany_i1 (gfc_array_i1 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -446,7 +446,7 @@ siany_i1 (gfc_array_i1 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/iany_i16.c b/libgfortran/generated/iany_i16.c
index a76214d..df60f10 100644
--- a/libgfortran/generated/iany_i16.c
+++ b/libgfortran/generated/iany_i16.c
@@ -100,7 +100,7 @@ iany_i16 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -287,7 +287,7 @@ miany_i16 (gfc_array_i16 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -446,7 +446,7 @@ siany_i16 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/iany_i2.c b/libgfortran/generated/iany_i2.c
index c309b49..5b0623bd 100644
--- a/libgfortran/generated/iany_i2.c
+++ b/libgfortran/generated/iany_i2.c
@@ -100,7 +100,7 @@ iany_i2 (gfc_array_i2 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -287,7 +287,7 @@ miany_i2 (gfc_array_i2 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -446,7 +446,7 @@ siany_i2 (gfc_array_i2 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/iany_i4.c b/libgfortran/generated/iany_i4.c
index 09dc81e..a7effd6 100644
--- a/libgfortran/generated/iany_i4.c
+++ b/libgfortran/generated/iany_i4.c
@@ -100,7 +100,7 @@ iany_i4 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -287,7 +287,7 @@ miany_i4 (gfc_array_i4 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -446,7 +446,7 @@ siany_i4 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/iany_i8.c b/libgfortran/generated/iany_i8.c
index dda57da..c87ba7a 100644
--- a/libgfortran/generated/iany_i8.c
+++ b/libgfortran/generated/iany_i8.c
@@ -100,7 +100,7 @@ iany_i8 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -287,7 +287,7 @@ miany_i8 (gfc_array_i8 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -446,7 +446,7 @@ siany_i8 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/iparity_i1.c b/libgfortran/generated/iparity_i1.c
index 9780a2f..4315406 100644
--- a/libgfortran/generated/iparity_i1.c
+++ b/libgfortran/generated/iparity_i1.c
@@ -100,7 +100,7 @@ iparity_i1 (gfc_array_i1 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -287,7 +287,7 @@ miparity_i1 (gfc_array_i1 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -446,7 +446,7 @@ siparity_i1 (gfc_array_i1 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/iparity_i16.c b/libgfortran/generated/iparity_i16.c
index 29aaea2..8817487 100644
--- a/libgfortran/generated/iparity_i16.c
+++ b/libgfortran/generated/iparity_i16.c
@@ -100,7 +100,7 @@ iparity_i16 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -287,7 +287,7 @@ miparity_i16 (gfc_array_i16 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -446,7 +446,7 @@ siparity_i16 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/iparity_i2.c b/libgfortran/generated/iparity_i2.c
index 04ac62d..0c73703 100644
--- a/libgfortran/generated/iparity_i2.c
+++ b/libgfortran/generated/iparity_i2.c
@@ -100,7 +100,7 @@ iparity_i2 (gfc_array_i2 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -287,7 +287,7 @@ miparity_i2 (gfc_array_i2 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -446,7 +446,7 @@ siparity_i2 (gfc_array_i2 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/iparity_i4.c b/libgfortran/generated/iparity_i4.c
index 41a0e33..1f1bfa9 100644
--- a/libgfortran/generated/iparity_i4.c
+++ b/libgfortran/generated/iparity_i4.c
@@ -100,7 +100,7 @@ iparity_i4 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -287,7 +287,7 @@ miparity_i4 (gfc_array_i4 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -446,7 +446,7 @@ siparity_i4 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/iparity_i8.c b/libgfortran/generated/iparity_i8.c
index 352cf9c..ad58b53 100644
--- a/libgfortran/generated/iparity_i8.c
+++ b/libgfortran/generated/iparity_i8.c
@@ -100,7 +100,7 @@ iparity_i8 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -287,7 +287,7 @@ miparity_i8 (gfc_array_i8 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -446,7 +446,7 @@ siparity_i8 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/maxloc0_16_i1.c b/libgfortran/generated/maxloc0_16_i1.c
index fe79a55..aa5ac36 100644
--- a/libgfortran/generated/maxloc0_16_i1.c
+++ b/libgfortran/generated/maxloc0_16_i1.c
@@ -53,7 +53,7 @@ maxloc0_16_i1 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
@@ -194,7 +194,7 @@ mmaxloc0_16_i1 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
@@ -362,7 +362,7 @@ smaxloc0_16_i1 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
diff --git a/libgfortran/generated/maxloc0_16_i16.c b/libgfortran/generated/maxloc0_16_i16.c
index 8986910..f648402 100644
--- a/libgfortran/generated/maxloc0_16_i16.c
+++ b/libgfortran/generated/maxloc0_16_i16.c
@@ -53,7 +53,7 @@ maxloc0_16_i16 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
@@ -194,7 +194,7 @@ mmaxloc0_16_i16 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
@@ -362,7 +362,7 @@ smaxloc0_16_i16 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
diff --git a/libgfortran/generated/maxloc0_16_i2.c b/libgfortran/generated/maxloc0_16_i2.c
index ee0d5c2..825eb74 100644
--- a/libgfortran/generated/maxloc0_16_i2.c
+++ b/libgfortran/generated/maxloc0_16_i2.c
@@ -53,7 +53,7 @@ maxloc0_16_i2 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
@@ -194,7 +194,7 @@ mmaxloc0_16_i2 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
@@ -362,7 +362,7 @@ smaxloc0_16_i2 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
diff --git a/libgfortran/generated/maxloc0_16_i4.c b/libgfortran/generated/maxloc0_16_i4.c
index 9b0d675..0720609 100644
--- a/libgfortran/generated/maxloc0_16_i4.c
+++ b/libgfortran/generated/maxloc0_16_i4.c
@@ -53,7 +53,7 @@ maxloc0_16_i4 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
@@ -194,7 +194,7 @@ mmaxloc0_16_i4 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
@@ -362,7 +362,7 @@ smaxloc0_16_i4 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
diff --git a/libgfortran/generated/maxloc0_16_i8.c b/libgfortran/generated/maxloc0_16_i8.c
index 113b76e..f5318e9 100644
--- a/libgfortran/generated/maxloc0_16_i8.c
+++ b/libgfortran/generated/maxloc0_16_i8.c
@@ -53,7 +53,7 @@ maxloc0_16_i8 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
@@ -194,7 +194,7 @@ mmaxloc0_16_i8 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
@@ -362,7 +362,7 @@ smaxloc0_16_i8 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
diff --git a/libgfortran/generated/maxloc0_16_r10.c b/libgfortran/generated/maxloc0_16_r10.c
index 810bf89..1641b3a 100644
--- a/libgfortran/generated/maxloc0_16_r10.c
+++ b/libgfortran/generated/maxloc0_16_r10.c
@@ -53,7 +53,7 @@ maxloc0_16_r10 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
@@ -194,7 +194,7 @@ mmaxloc0_16_r10 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
@@ -362,7 +362,7 @@ smaxloc0_16_r10 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
diff --git a/libgfortran/generated/maxloc0_16_r16.c b/libgfortran/generated/maxloc0_16_r16.c
index 945acf7..c5409fd 100644
--- a/libgfortran/generated/maxloc0_16_r16.c
+++ b/libgfortran/generated/maxloc0_16_r16.c
@@ -53,7 +53,7 @@ maxloc0_16_r16 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
@@ -194,7 +194,7 @@ mmaxloc0_16_r16 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
@@ -362,7 +362,7 @@ smaxloc0_16_r16 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
diff --git a/libgfortran/generated/maxloc0_16_r4.c b/libgfortran/generated/maxloc0_16_r4.c
index 78c4d8c..1d076a1 100644
--- a/libgfortran/generated/maxloc0_16_r4.c
+++ b/libgfortran/generated/maxloc0_16_r4.c
@@ -53,7 +53,7 @@ maxloc0_16_r4 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
@@ -194,7 +194,7 @@ mmaxloc0_16_r4 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
@@ -362,7 +362,7 @@ smaxloc0_16_r4 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
diff --git a/libgfortran/generated/maxloc0_16_r8.c b/libgfortran/generated/maxloc0_16_r8.c
index 8853d24..2cb175b 100644
--- a/libgfortran/generated/maxloc0_16_r8.c
+++ b/libgfortran/generated/maxloc0_16_r8.c
@@ -53,7 +53,7 @@ maxloc0_16_r8 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
@@ -194,7 +194,7 @@ mmaxloc0_16_r8 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
@@ -362,7 +362,7 @@ smaxloc0_16_r8 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
diff --git a/libgfortran/generated/maxloc0_16_s1.c b/libgfortran/generated/maxloc0_16_s1.c
index 631e973..424237c 100644
--- a/libgfortran/generated/maxloc0_16_s1.c
+++ b/libgfortran/generated/maxloc0_16_s1.c
@@ -66,7 +66,7 @@ maxloc0_16_s1 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
@@ -176,7 +176,7 @@ mmaxloc0_16_s1 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
@@ -309,7 +309,7 @@ smaxloc0_16_s1 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
diff --git a/libgfortran/generated/maxloc0_16_s4.c b/libgfortran/generated/maxloc0_16_s4.c
index 18da7cd..e0c236a 100644
--- a/libgfortran/generated/maxloc0_16_s4.c
+++ b/libgfortran/generated/maxloc0_16_s4.c
@@ -66,7 +66,7 @@ maxloc0_16_s4 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
@@ -176,7 +176,7 @@ mmaxloc0_16_s4 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
@@ -309,7 +309,7 @@ smaxloc0_16_s4 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
diff --git a/libgfortran/generated/maxloc0_4_i1.c b/libgfortran/generated/maxloc0_4_i1.c
index 6b37487..137e852 100644
--- a/libgfortran/generated/maxloc0_4_i1.c
+++ b/libgfortran/generated/maxloc0_4_i1.c
@@ -53,7 +53,7 @@ maxloc0_4_i1 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
@@ -194,7 +194,7 @@ mmaxloc0_4_i1 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
@@ -362,7 +362,7 @@ smaxloc0_4_i1 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
diff --git a/libgfortran/generated/maxloc0_4_i16.c b/libgfortran/generated/maxloc0_4_i16.c
index 2a874fd..880e3ca 100644
--- a/libgfortran/generated/maxloc0_4_i16.c
+++ b/libgfortran/generated/maxloc0_4_i16.c
@@ -53,7 +53,7 @@ maxloc0_4_i16 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
@@ -194,7 +194,7 @@ mmaxloc0_4_i16 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
@@ -362,7 +362,7 @@ smaxloc0_4_i16 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
diff --git a/libgfortran/generated/maxloc0_4_i2.c b/libgfortran/generated/maxloc0_4_i2.c
index df62aad..98197ec 100644
--- a/libgfortran/generated/maxloc0_4_i2.c
+++ b/libgfortran/generated/maxloc0_4_i2.c
@@ -53,7 +53,7 @@ maxloc0_4_i2 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
@@ -194,7 +194,7 @@ mmaxloc0_4_i2 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
@@ -362,7 +362,7 @@ smaxloc0_4_i2 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
diff --git a/libgfortran/generated/maxloc0_4_i4.c b/libgfortran/generated/maxloc0_4_i4.c
index 187d04c..cc6ad84 100644
--- a/libgfortran/generated/maxloc0_4_i4.c
+++ b/libgfortran/generated/maxloc0_4_i4.c
@@ -53,7 +53,7 @@ maxloc0_4_i4 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
@@ -194,7 +194,7 @@ mmaxloc0_4_i4 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
@@ -362,7 +362,7 @@ smaxloc0_4_i4 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
diff --git a/libgfortran/generated/maxloc0_4_i8.c b/libgfortran/generated/maxloc0_4_i8.c
index 304eda5..802f935 100644
--- a/libgfortran/generated/maxloc0_4_i8.c
+++ b/libgfortran/generated/maxloc0_4_i8.c
@@ -53,7 +53,7 @@ maxloc0_4_i8 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
@@ -194,7 +194,7 @@ mmaxloc0_4_i8 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
@@ -362,7 +362,7 @@ smaxloc0_4_i8 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
diff --git a/libgfortran/generated/maxloc0_4_r10.c b/libgfortran/generated/maxloc0_4_r10.c
index 0585aa1..1222096 100644
--- a/libgfortran/generated/maxloc0_4_r10.c
+++ b/libgfortran/generated/maxloc0_4_r10.c
@@ -53,7 +53,7 @@ maxloc0_4_r10 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
@@ -194,7 +194,7 @@ mmaxloc0_4_r10 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
@@ -362,7 +362,7 @@ smaxloc0_4_r10 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
diff --git a/libgfortran/generated/maxloc0_4_r16.c b/libgfortran/generated/maxloc0_4_r16.c
index 14388e0..deaca72 100644
--- a/libgfortran/generated/maxloc0_4_r16.c
+++ b/libgfortran/generated/maxloc0_4_r16.c
@@ -53,7 +53,7 @@ maxloc0_4_r16 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
@@ -194,7 +194,7 @@ mmaxloc0_4_r16 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
@@ -362,7 +362,7 @@ smaxloc0_4_r16 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
diff --git a/libgfortran/generated/maxloc0_4_r4.c b/libgfortran/generated/maxloc0_4_r4.c
index 2626a7f..aa7fca0 100644
--- a/libgfortran/generated/maxloc0_4_r4.c
+++ b/libgfortran/generated/maxloc0_4_r4.c
@@ -53,7 +53,7 @@ maxloc0_4_r4 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
@@ -194,7 +194,7 @@ mmaxloc0_4_r4 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
@@ -362,7 +362,7 @@ smaxloc0_4_r4 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
diff --git a/libgfortran/generated/maxloc0_4_r8.c b/libgfortran/generated/maxloc0_4_r8.c
index 9760f9d..ba0659d 100644
--- a/libgfortran/generated/maxloc0_4_r8.c
+++ b/libgfortran/generated/maxloc0_4_r8.c
@@ -53,7 +53,7 @@ maxloc0_4_r8 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
@@ -194,7 +194,7 @@ mmaxloc0_4_r8 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
@@ -362,7 +362,7 @@ smaxloc0_4_r8 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
diff --git a/libgfortran/generated/maxloc0_4_s1.c b/libgfortran/generated/maxloc0_4_s1.c
index a3e3ce3..80759a6 100644
--- a/libgfortran/generated/maxloc0_4_s1.c
+++ b/libgfortran/generated/maxloc0_4_s1.c
@@ -66,7 +66,7 @@ maxloc0_4_s1 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
@@ -176,7 +176,7 @@ mmaxloc0_4_s1 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
@@ -309,7 +309,7 @@ smaxloc0_4_s1 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
diff --git a/libgfortran/generated/maxloc0_4_s4.c b/libgfortran/generated/maxloc0_4_s4.c
index 318a27f..75eeaee 100644
--- a/libgfortran/generated/maxloc0_4_s4.c
+++ b/libgfortran/generated/maxloc0_4_s4.c
@@ -66,7 +66,7 @@ maxloc0_4_s4 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
@@ -176,7 +176,7 @@ mmaxloc0_4_s4 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
@@ -309,7 +309,7 @@ smaxloc0_4_s4 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
diff --git a/libgfortran/generated/maxloc0_8_i1.c b/libgfortran/generated/maxloc0_8_i1.c
index d114646..dd07066 100644
--- a/libgfortran/generated/maxloc0_8_i1.c
+++ b/libgfortran/generated/maxloc0_8_i1.c
@@ -53,7 +53,7 @@ maxloc0_8_i1 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
@@ -194,7 +194,7 @@ mmaxloc0_8_i1 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
@@ -362,7 +362,7 @@ smaxloc0_8_i1 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
diff --git a/libgfortran/generated/maxloc0_8_i16.c b/libgfortran/generated/maxloc0_8_i16.c
index 88e3fd5..44ab70c 100644
--- a/libgfortran/generated/maxloc0_8_i16.c
+++ b/libgfortran/generated/maxloc0_8_i16.c
@@ -53,7 +53,7 @@ maxloc0_8_i16 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
@@ -194,7 +194,7 @@ mmaxloc0_8_i16 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
@@ -362,7 +362,7 @@ smaxloc0_8_i16 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
diff --git a/libgfortran/generated/maxloc0_8_i2.c b/libgfortran/generated/maxloc0_8_i2.c
index 4753688..6dfd0d8 100644
--- a/libgfortran/generated/maxloc0_8_i2.c
+++ b/libgfortran/generated/maxloc0_8_i2.c
@@ -53,7 +53,7 @@ maxloc0_8_i2 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
@@ -194,7 +194,7 @@ mmaxloc0_8_i2 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
@@ -362,7 +362,7 @@ smaxloc0_8_i2 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
diff --git a/libgfortran/generated/maxloc0_8_i4.c b/libgfortran/generated/maxloc0_8_i4.c
index 08a145d..01b18c3 100644
--- a/libgfortran/generated/maxloc0_8_i4.c
+++ b/libgfortran/generated/maxloc0_8_i4.c
@@ -53,7 +53,7 @@ maxloc0_8_i4 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
@@ -194,7 +194,7 @@ mmaxloc0_8_i4 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
@@ -362,7 +362,7 @@ smaxloc0_8_i4 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
diff --git a/libgfortran/generated/maxloc0_8_i8.c b/libgfortran/generated/maxloc0_8_i8.c
index 70f8ba1..df7544f 100644
--- a/libgfortran/generated/maxloc0_8_i8.c
+++ b/libgfortran/generated/maxloc0_8_i8.c
@@ -53,7 +53,7 @@ maxloc0_8_i8 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
@@ -194,7 +194,7 @@ mmaxloc0_8_i8 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
@@ -362,7 +362,7 @@ smaxloc0_8_i8 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
diff --git a/libgfortran/generated/maxloc0_8_r10.c b/libgfortran/generated/maxloc0_8_r10.c
index d0447a0..3047b1e 100644
--- a/libgfortran/generated/maxloc0_8_r10.c
+++ b/libgfortran/generated/maxloc0_8_r10.c
@@ -53,7 +53,7 @@ maxloc0_8_r10 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
@@ -194,7 +194,7 @@ mmaxloc0_8_r10 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
@@ -362,7 +362,7 @@ smaxloc0_8_r10 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
diff --git a/libgfortran/generated/maxloc0_8_r16.c b/libgfortran/generated/maxloc0_8_r16.c
index 4635719..baf000c 100644
--- a/libgfortran/generated/maxloc0_8_r16.c
+++ b/libgfortran/generated/maxloc0_8_r16.c
@@ -53,7 +53,7 @@ maxloc0_8_r16 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
@@ -194,7 +194,7 @@ mmaxloc0_8_r16 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
@@ -362,7 +362,7 @@ smaxloc0_8_r16 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
diff --git a/libgfortran/generated/maxloc0_8_r4.c b/libgfortran/generated/maxloc0_8_r4.c
index 20d2f03..48fa424 100644
--- a/libgfortran/generated/maxloc0_8_r4.c
+++ b/libgfortran/generated/maxloc0_8_r4.c
@@ -53,7 +53,7 @@ maxloc0_8_r4 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
@@ -194,7 +194,7 @@ mmaxloc0_8_r4 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
@@ -362,7 +362,7 @@ smaxloc0_8_r4 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
diff --git a/libgfortran/generated/maxloc0_8_r8.c b/libgfortran/generated/maxloc0_8_r8.c
index ce16597..37a25ef 100644
--- a/libgfortran/generated/maxloc0_8_r8.c
+++ b/libgfortran/generated/maxloc0_8_r8.c
@@ -53,7 +53,7 @@ maxloc0_8_r8 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
@@ -194,7 +194,7 @@ mmaxloc0_8_r8 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
@@ -362,7 +362,7 @@ smaxloc0_8_r8 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
diff --git a/libgfortran/generated/maxloc0_8_s1.c b/libgfortran/generated/maxloc0_8_s1.c
index 1a613ce..1c86ff4 100644
--- a/libgfortran/generated/maxloc0_8_s1.c
+++ b/libgfortran/generated/maxloc0_8_s1.c
@@ -66,7 +66,7 @@ maxloc0_8_s1 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
@@ -176,7 +176,7 @@ mmaxloc0_8_s1 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
@@ -309,7 +309,7 @@ smaxloc0_8_s1 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
diff --git a/libgfortran/generated/maxloc0_8_s4.c b/libgfortran/generated/maxloc0_8_s4.c
index 6e19aef..14f4658 100644
--- a/libgfortran/generated/maxloc0_8_s4.c
+++ b/libgfortran/generated/maxloc0_8_s4.c
@@ -66,7 +66,7 @@ maxloc0_8_s4 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
@@ -176,7 +176,7 @@ mmaxloc0_8_s4 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
@@ -309,7 +309,7 @@ smaxloc0_8_s4 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
diff --git a/libgfortran/generated/maxloc1_16_i1.c b/libgfortran/generated/maxloc1_16_i1.c
index 4970c2c..d1d1d5e 100644
--- a/libgfortran/generated/maxloc1_16_i1.c
+++ b/libgfortran/generated/maxloc1_16_i1.c
@@ -100,7 +100,7 @@ maxloc1_16_i1 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mmaxloc1_16_i1 (gfc_array_i16 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ smaxloc1_16_i1 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/maxloc1_16_i16.c b/libgfortran/generated/maxloc1_16_i16.c
index 59d26f6..27aa37d 100644
--- a/libgfortran/generated/maxloc1_16_i16.c
+++ b/libgfortran/generated/maxloc1_16_i16.c
@@ -100,7 +100,7 @@ maxloc1_16_i16 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mmaxloc1_16_i16 (gfc_array_i16 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ smaxloc1_16_i16 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/maxloc1_16_i2.c b/libgfortran/generated/maxloc1_16_i2.c
index e133723..a79088d 100644
--- a/libgfortran/generated/maxloc1_16_i2.c
+++ b/libgfortran/generated/maxloc1_16_i2.c
@@ -100,7 +100,7 @@ maxloc1_16_i2 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mmaxloc1_16_i2 (gfc_array_i16 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ smaxloc1_16_i2 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/maxloc1_16_i4.c b/libgfortran/generated/maxloc1_16_i4.c
index ea1e46f..852677d 100644
--- a/libgfortran/generated/maxloc1_16_i4.c
+++ b/libgfortran/generated/maxloc1_16_i4.c
@@ -100,7 +100,7 @@ maxloc1_16_i4 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mmaxloc1_16_i4 (gfc_array_i16 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ smaxloc1_16_i4 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/maxloc1_16_i8.c b/libgfortran/generated/maxloc1_16_i8.c
index e6a1bf2..4cdc1a7 100644
--- a/libgfortran/generated/maxloc1_16_i8.c
+++ b/libgfortran/generated/maxloc1_16_i8.c
@@ -100,7 +100,7 @@ maxloc1_16_i8 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mmaxloc1_16_i8 (gfc_array_i16 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ smaxloc1_16_i8 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/maxloc1_16_r10.c b/libgfortran/generated/maxloc1_16_r10.c
index f9f4887..f3f9890 100644
--- a/libgfortran/generated/maxloc1_16_r10.c
+++ b/libgfortran/generated/maxloc1_16_r10.c
@@ -100,7 +100,7 @@ maxloc1_16_r10 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mmaxloc1_16_r10 (gfc_array_i16 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ smaxloc1_16_r10 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/maxloc1_16_r16.c b/libgfortran/generated/maxloc1_16_r16.c
index 104f6f7..6bbef79 100644
--- a/libgfortran/generated/maxloc1_16_r16.c
+++ b/libgfortran/generated/maxloc1_16_r16.c
@@ -100,7 +100,7 @@ maxloc1_16_r16 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mmaxloc1_16_r16 (gfc_array_i16 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ smaxloc1_16_r16 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/maxloc1_16_r4.c b/libgfortran/generated/maxloc1_16_r4.c
index 6a9d23c..9801989 100644
--- a/libgfortran/generated/maxloc1_16_r4.c
+++ b/libgfortran/generated/maxloc1_16_r4.c
@@ -100,7 +100,7 @@ maxloc1_16_r4 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mmaxloc1_16_r4 (gfc_array_i16 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ smaxloc1_16_r4 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/maxloc1_16_r8.c b/libgfortran/generated/maxloc1_16_r8.c
index 6aa9207..86cffb9 100644
--- a/libgfortran/generated/maxloc1_16_r8.c
+++ b/libgfortran/generated/maxloc1_16_r8.c
@@ -100,7 +100,7 @@ maxloc1_16_r8 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mmaxloc1_16_r8 (gfc_array_i16 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ smaxloc1_16_r8 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/maxloc1_16_s1.c b/libgfortran/generated/maxloc1_16_s1.c
index f745397..16be611 100644
--- a/libgfortran/generated/maxloc1_16_s1.c
+++ b/libgfortran/generated/maxloc1_16_s1.c
@@ -111,7 +111,7 @@ maxloc1_16_s1 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -304,7 +304,7 @@ mmaxloc1_16_s1 (gfc_array_i16 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -478,7 +478,7 @@ smaxloc1_16_s1 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/maxloc1_16_s4.c b/libgfortran/generated/maxloc1_16_s4.c
index a77da96..09bbb99 100644
--- a/libgfortran/generated/maxloc1_16_s4.c
+++ b/libgfortran/generated/maxloc1_16_s4.c
@@ -111,7 +111,7 @@ maxloc1_16_s4 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -304,7 +304,7 @@ mmaxloc1_16_s4 (gfc_array_i16 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -478,7 +478,7 @@ smaxloc1_16_s4 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/maxloc1_4_i1.c b/libgfortran/generated/maxloc1_4_i1.c
index 492fa61..364d09e 100644
--- a/libgfortran/generated/maxloc1_4_i1.c
+++ b/libgfortran/generated/maxloc1_4_i1.c
@@ -100,7 +100,7 @@ maxloc1_4_i1 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mmaxloc1_4_i1 (gfc_array_i4 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ smaxloc1_4_i1 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/maxloc1_4_i16.c b/libgfortran/generated/maxloc1_4_i16.c
index cf34c33..e05a9ac 100644
--- a/libgfortran/generated/maxloc1_4_i16.c
+++ b/libgfortran/generated/maxloc1_4_i16.c
@@ -100,7 +100,7 @@ maxloc1_4_i16 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mmaxloc1_4_i16 (gfc_array_i4 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ smaxloc1_4_i16 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/maxloc1_4_i2.c b/libgfortran/generated/maxloc1_4_i2.c
index ec76833..3887917 100644
--- a/libgfortran/generated/maxloc1_4_i2.c
+++ b/libgfortran/generated/maxloc1_4_i2.c
@@ -100,7 +100,7 @@ maxloc1_4_i2 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mmaxloc1_4_i2 (gfc_array_i4 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ smaxloc1_4_i2 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/maxloc1_4_i4.c b/libgfortran/generated/maxloc1_4_i4.c
index ee48be8..bc8a7fd 100644
--- a/libgfortran/generated/maxloc1_4_i4.c
+++ b/libgfortran/generated/maxloc1_4_i4.c
@@ -100,7 +100,7 @@ maxloc1_4_i4 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mmaxloc1_4_i4 (gfc_array_i4 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ smaxloc1_4_i4 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/maxloc1_4_i8.c b/libgfortran/generated/maxloc1_4_i8.c
index 4aa514d..e1d2aee 100644
--- a/libgfortran/generated/maxloc1_4_i8.c
+++ b/libgfortran/generated/maxloc1_4_i8.c
@@ -100,7 +100,7 @@ maxloc1_4_i8 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mmaxloc1_4_i8 (gfc_array_i4 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ smaxloc1_4_i8 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/maxloc1_4_r10.c b/libgfortran/generated/maxloc1_4_r10.c
index b2201b1..03d55cc 100644
--- a/libgfortran/generated/maxloc1_4_r10.c
+++ b/libgfortran/generated/maxloc1_4_r10.c
@@ -100,7 +100,7 @@ maxloc1_4_r10 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mmaxloc1_4_r10 (gfc_array_i4 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ smaxloc1_4_r10 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/maxloc1_4_r16.c b/libgfortran/generated/maxloc1_4_r16.c
index 387ff31..1d86824 100644
--- a/libgfortran/generated/maxloc1_4_r16.c
+++ b/libgfortran/generated/maxloc1_4_r16.c
@@ -100,7 +100,7 @@ maxloc1_4_r16 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mmaxloc1_4_r16 (gfc_array_i4 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ smaxloc1_4_r16 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/maxloc1_4_r4.c b/libgfortran/generated/maxloc1_4_r4.c
index 95c5754..8dcae97 100644
--- a/libgfortran/generated/maxloc1_4_r4.c
+++ b/libgfortran/generated/maxloc1_4_r4.c
@@ -100,7 +100,7 @@ maxloc1_4_r4 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mmaxloc1_4_r4 (gfc_array_i4 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ smaxloc1_4_r4 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/maxloc1_4_r8.c b/libgfortran/generated/maxloc1_4_r8.c
index be4f467..9c0f5b1 100644
--- a/libgfortran/generated/maxloc1_4_r8.c
+++ b/libgfortran/generated/maxloc1_4_r8.c
@@ -100,7 +100,7 @@ maxloc1_4_r8 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mmaxloc1_4_r8 (gfc_array_i4 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ smaxloc1_4_r8 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/maxloc1_4_s1.c b/libgfortran/generated/maxloc1_4_s1.c
index b762d6b..a882a7b 100644
--- a/libgfortran/generated/maxloc1_4_s1.c
+++ b/libgfortran/generated/maxloc1_4_s1.c
@@ -111,7 +111,7 @@ maxloc1_4_s1 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -304,7 +304,7 @@ mmaxloc1_4_s1 (gfc_array_i4 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -478,7 +478,7 @@ smaxloc1_4_s1 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/maxloc1_4_s4.c b/libgfortran/generated/maxloc1_4_s4.c
index 7920c7f..acc989c 100644
--- a/libgfortran/generated/maxloc1_4_s4.c
+++ b/libgfortran/generated/maxloc1_4_s4.c
@@ -111,7 +111,7 @@ maxloc1_4_s4 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -304,7 +304,7 @@ mmaxloc1_4_s4 (gfc_array_i4 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -478,7 +478,7 @@ smaxloc1_4_s4 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/maxloc1_8_i1.c b/libgfortran/generated/maxloc1_8_i1.c
index 4cd775a..8087789 100644
--- a/libgfortran/generated/maxloc1_8_i1.c
+++ b/libgfortran/generated/maxloc1_8_i1.c
@@ -100,7 +100,7 @@ maxloc1_8_i1 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mmaxloc1_8_i1 (gfc_array_i8 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ smaxloc1_8_i1 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/maxloc1_8_i16.c b/libgfortran/generated/maxloc1_8_i16.c
index d8c3956..71ad13c 100644
--- a/libgfortran/generated/maxloc1_8_i16.c
+++ b/libgfortran/generated/maxloc1_8_i16.c
@@ -100,7 +100,7 @@ maxloc1_8_i16 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mmaxloc1_8_i16 (gfc_array_i8 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ smaxloc1_8_i16 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/maxloc1_8_i2.c b/libgfortran/generated/maxloc1_8_i2.c
index 170d6af..d89b74f 100644
--- a/libgfortran/generated/maxloc1_8_i2.c
+++ b/libgfortran/generated/maxloc1_8_i2.c
@@ -100,7 +100,7 @@ maxloc1_8_i2 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mmaxloc1_8_i2 (gfc_array_i8 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ smaxloc1_8_i2 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/maxloc1_8_i4.c b/libgfortran/generated/maxloc1_8_i4.c
index 06daed5..df4b218 100644
--- a/libgfortran/generated/maxloc1_8_i4.c
+++ b/libgfortran/generated/maxloc1_8_i4.c
@@ -100,7 +100,7 @@ maxloc1_8_i4 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mmaxloc1_8_i4 (gfc_array_i8 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ smaxloc1_8_i4 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/maxloc1_8_i8.c b/libgfortran/generated/maxloc1_8_i8.c
index 1ffa15b..946e4ca 100644
--- a/libgfortran/generated/maxloc1_8_i8.c
+++ b/libgfortran/generated/maxloc1_8_i8.c
@@ -100,7 +100,7 @@ maxloc1_8_i8 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mmaxloc1_8_i8 (gfc_array_i8 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ smaxloc1_8_i8 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/maxloc1_8_r10.c b/libgfortran/generated/maxloc1_8_r10.c
index 96f45e7..a7db332 100644
--- a/libgfortran/generated/maxloc1_8_r10.c
+++ b/libgfortran/generated/maxloc1_8_r10.c
@@ -100,7 +100,7 @@ maxloc1_8_r10 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mmaxloc1_8_r10 (gfc_array_i8 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ smaxloc1_8_r10 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/maxloc1_8_r16.c b/libgfortran/generated/maxloc1_8_r16.c
index 70f042b..e118f12 100644
--- a/libgfortran/generated/maxloc1_8_r16.c
+++ b/libgfortran/generated/maxloc1_8_r16.c
@@ -100,7 +100,7 @@ maxloc1_8_r16 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mmaxloc1_8_r16 (gfc_array_i8 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ smaxloc1_8_r16 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/maxloc1_8_r4.c b/libgfortran/generated/maxloc1_8_r4.c
index a8506cb..b97cd4c 100644
--- a/libgfortran/generated/maxloc1_8_r4.c
+++ b/libgfortran/generated/maxloc1_8_r4.c
@@ -100,7 +100,7 @@ maxloc1_8_r4 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mmaxloc1_8_r4 (gfc_array_i8 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ smaxloc1_8_r4 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/maxloc1_8_r8.c b/libgfortran/generated/maxloc1_8_r8.c
index c29ee1e..69c0c29 100644
--- a/libgfortran/generated/maxloc1_8_r8.c
+++ b/libgfortran/generated/maxloc1_8_r8.c
@@ -100,7 +100,7 @@ maxloc1_8_r8 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mmaxloc1_8_r8 (gfc_array_i8 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ smaxloc1_8_r8 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/maxloc1_8_s1.c b/libgfortran/generated/maxloc1_8_s1.c
index 3716334..e18ec1a 100644
--- a/libgfortran/generated/maxloc1_8_s1.c
+++ b/libgfortran/generated/maxloc1_8_s1.c
@@ -111,7 +111,7 @@ maxloc1_8_s1 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -304,7 +304,7 @@ mmaxloc1_8_s1 (gfc_array_i8 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -478,7 +478,7 @@ smaxloc1_8_s1 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/maxloc1_8_s4.c b/libgfortran/generated/maxloc1_8_s4.c
index fd4c429..dbe40e9 100644
--- a/libgfortran/generated/maxloc1_8_s4.c
+++ b/libgfortran/generated/maxloc1_8_s4.c
@@ -111,7 +111,7 @@ maxloc1_8_s4 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -304,7 +304,7 @@ mmaxloc1_8_s4 (gfc_array_i8 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -478,7 +478,7 @@ smaxloc1_8_s4 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/maxval1_s1.c b/libgfortran/generated/maxval1_s1.c
index d2cd5bd..094eecf 100644
--- a/libgfortran/generated/maxval1_s1.c
+++ b/libgfortran/generated/maxval1_s1.c
@@ -114,7 +114,7 @@ maxval1_s1 (gfc_array_s1 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1]
* string_len;
@@ -310,7 +310,7 @@ mmaxval1_s1 (gfc_array_s1 * const restrict retarray,
* string_len;
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -485,7 +485,7 @@ smaxval1_s1 (gfc_array_s1 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1]
* string_len;
diff --git a/libgfortran/generated/maxval1_s4.c b/libgfortran/generated/maxval1_s4.c
index 22f1e50..e9260ce 100644
--- a/libgfortran/generated/maxval1_s4.c
+++ b/libgfortran/generated/maxval1_s4.c
@@ -114,7 +114,7 @@ maxval1_s4 (gfc_array_s4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1]
* string_len;
@@ -310,7 +310,7 @@ mmaxval1_s4 (gfc_array_s4 * const restrict retarray,
* string_len;
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -485,7 +485,7 @@ smaxval1_s4 (gfc_array_s4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1]
* string_len;
diff --git a/libgfortran/generated/maxval_i1.c b/libgfortran/generated/maxval_i1.c
index 8102274..88d80e1 100644
--- a/libgfortran/generated/maxval_i1.c
+++ b/libgfortran/generated/maxval_i1.c
@@ -100,7 +100,7 @@ maxval_i1 (gfc_array_i1 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -301,7 +301,7 @@ mmaxval_i1 (gfc_array_i1 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -488,7 +488,7 @@ smaxval_i1 (gfc_array_i1 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/maxval_i16.c b/libgfortran/generated/maxval_i16.c
index 390682d..c555085 100644
--- a/libgfortran/generated/maxval_i16.c
+++ b/libgfortran/generated/maxval_i16.c
@@ -100,7 +100,7 @@ maxval_i16 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -301,7 +301,7 @@ mmaxval_i16 (gfc_array_i16 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -488,7 +488,7 @@ smaxval_i16 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/maxval_i2.c b/libgfortran/generated/maxval_i2.c
index 1e06322..159ec96 100644
--- a/libgfortran/generated/maxval_i2.c
+++ b/libgfortran/generated/maxval_i2.c
@@ -100,7 +100,7 @@ maxval_i2 (gfc_array_i2 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -301,7 +301,7 @@ mmaxval_i2 (gfc_array_i2 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -488,7 +488,7 @@ smaxval_i2 (gfc_array_i2 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/maxval_i4.c b/libgfortran/generated/maxval_i4.c
index cc1a74d..70f8e90 100644
--- a/libgfortran/generated/maxval_i4.c
+++ b/libgfortran/generated/maxval_i4.c
@@ -100,7 +100,7 @@ maxval_i4 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -301,7 +301,7 @@ mmaxval_i4 (gfc_array_i4 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -488,7 +488,7 @@ smaxval_i4 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/maxval_i8.c b/libgfortran/generated/maxval_i8.c
index e6ff1c8..49517bb 100644
--- a/libgfortran/generated/maxval_i8.c
+++ b/libgfortran/generated/maxval_i8.c
@@ -100,7 +100,7 @@ maxval_i8 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -301,7 +301,7 @@ mmaxval_i8 (gfc_array_i8 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -488,7 +488,7 @@ smaxval_i8 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/maxval_r10.c b/libgfortran/generated/maxval_r10.c
index 93b34ee..683a6f9 100644
--- a/libgfortran/generated/maxval_r10.c
+++ b/libgfortran/generated/maxval_r10.c
@@ -100,7 +100,7 @@ maxval_r10 (gfc_array_r10 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -301,7 +301,7 @@ mmaxval_r10 (gfc_array_r10 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -488,7 +488,7 @@ smaxval_r10 (gfc_array_r10 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/maxval_r16.c b/libgfortran/generated/maxval_r16.c
index dd07522..1eaae8c 100644
--- a/libgfortran/generated/maxval_r16.c
+++ b/libgfortran/generated/maxval_r16.c
@@ -100,7 +100,7 @@ maxval_r16 (gfc_array_r16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -301,7 +301,7 @@ mmaxval_r16 (gfc_array_r16 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -488,7 +488,7 @@ smaxval_r16 (gfc_array_r16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/maxval_r4.c b/libgfortran/generated/maxval_r4.c
index f0ffddb..72ac583 100644
--- a/libgfortran/generated/maxval_r4.c
+++ b/libgfortran/generated/maxval_r4.c
@@ -100,7 +100,7 @@ maxval_r4 (gfc_array_r4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -301,7 +301,7 @@ mmaxval_r4 (gfc_array_r4 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -488,7 +488,7 @@ smaxval_r4 (gfc_array_r4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/maxval_r8.c b/libgfortran/generated/maxval_r8.c
index 8c33d36..de58c87 100644
--- a/libgfortran/generated/maxval_r8.c
+++ b/libgfortran/generated/maxval_r8.c
@@ -100,7 +100,7 @@ maxval_r8 (gfc_array_r8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -301,7 +301,7 @@ mmaxval_r8 (gfc_array_r8 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -488,7 +488,7 @@ smaxval_r8 (gfc_array_r8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/minloc0_16_i1.c b/libgfortran/generated/minloc0_16_i1.c
index e0b6891..c958fdc 100644
--- a/libgfortran/generated/minloc0_16_i1.c
+++ b/libgfortran/generated/minloc0_16_i1.c
@@ -53,7 +53,7 @@ minloc0_16_i1 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
@@ -194,7 +194,7 @@ mminloc0_16_i1 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
@@ -362,7 +362,7 @@ sminloc0_16_i1 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
diff --git a/libgfortran/generated/minloc0_16_i16.c b/libgfortran/generated/minloc0_16_i16.c
index f392b72..82c86b5 100644
--- a/libgfortran/generated/minloc0_16_i16.c
+++ b/libgfortran/generated/minloc0_16_i16.c
@@ -53,7 +53,7 @@ minloc0_16_i16 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
@@ -194,7 +194,7 @@ mminloc0_16_i16 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
@@ -362,7 +362,7 @@ sminloc0_16_i16 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
diff --git a/libgfortran/generated/minloc0_16_i2.c b/libgfortran/generated/minloc0_16_i2.c
index efb1c7b..b32d560 100644
--- a/libgfortran/generated/minloc0_16_i2.c
+++ b/libgfortran/generated/minloc0_16_i2.c
@@ -53,7 +53,7 @@ minloc0_16_i2 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
@@ -194,7 +194,7 @@ mminloc0_16_i2 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
@@ -362,7 +362,7 @@ sminloc0_16_i2 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
diff --git a/libgfortran/generated/minloc0_16_i4.c b/libgfortran/generated/minloc0_16_i4.c
index df5015c..977bbb6 100644
--- a/libgfortran/generated/minloc0_16_i4.c
+++ b/libgfortran/generated/minloc0_16_i4.c
@@ -53,7 +53,7 @@ minloc0_16_i4 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
@@ -194,7 +194,7 @@ mminloc0_16_i4 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
@@ -362,7 +362,7 @@ sminloc0_16_i4 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
diff --git a/libgfortran/generated/minloc0_16_i8.c b/libgfortran/generated/minloc0_16_i8.c
index fc2e497..a55c97e 100644
--- a/libgfortran/generated/minloc0_16_i8.c
+++ b/libgfortran/generated/minloc0_16_i8.c
@@ -53,7 +53,7 @@ minloc0_16_i8 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
@@ -194,7 +194,7 @@ mminloc0_16_i8 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
@@ -362,7 +362,7 @@ sminloc0_16_i8 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
diff --git a/libgfortran/generated/minloc0_16_r10.c b/libgfortran/generated/minloc0_16_r10.c
index 82560dd..594e433 100644
--- a/libgfortran/generated/minloc0_16_r10.c
+++ b/libgfortran/generated/minloc0_16_r10.c
@@ -53,7 +53,7 @@ minloc0_16_r10 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
@@ -194,7 +194,7 @@ mminloc0_16_r10 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
@@ -362,7 +362,7 @@ sminloc0_16_r10 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
diff --git a/libgfortran/generated/minloc0_16_r16.c b/libgfortran/generated/minloc0_16_r16.c
index 4cdf480..22bf131 100644
--- a/libgfortran/generated/minloc0_16_r16.c
+++ b/libgfortran/generated/minloc0_16_r16.c
@@ -53,7 +53,7 @@ minloc0_16_r16 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
@@ -194,7 +194,7 @@ mminloc0_16_r16 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
@@ -362,7 +362,7 @@ sminloc0_16_r16 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
diff --git a/libgfortran/generated/minloc0_16_r4.c b/libgfortran/generated/minloc0_16_r4.c
index 8b52b3e..f7b8e9e 100644
--- a/libgfortran/generated/minloc0_16_r4.c
+++ b/libgfortran/generated/minloc0_16_r4.c
@@ -53,7 +53,7 @@ minloc0_16_r4 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
@@ -194,7 +194,7 @@ mminloc0_16_r4 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
@@ -362,7 +362,7 @@ sminloc0_16_r4 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
diff --git a/libgfortran/generated/minloc0_16_r8.c b/libgfortran/generated/minloc0_16_r8.c
index e5abdaf..3be2ea9 100644
--- a/libgfortran/generated/minloc0_16_r8.c
+++ b/libgfortran/generated/minloc0_16_r8.c
@@ -53,7 +53,7 @@ minloc0_16_r8 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
@@ -194,7 +194,7 @@ mminloc0_16_r8 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
@@ -362,7 +362,7 @@ sminloc0_16_r8 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
diff --git a/libgfortran/generated/minloc0_16_s1.c b/libgfortran/generated/minloc0_16_s1.c
index bdd4597..524d27d 100644
--- a/libgfortran/generated/minloc0_16_s1.c
+++ b/libgfortran/generated/minloc0_16_s1.c
@@ -66,7 +66,7 @@ minloc0_16_s1 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
@@ -176,7 +176,7 @@ mminloc0_16_s1 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
@@ -309,7 +309,7 @@ sminloc0_16_s1 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
diff --git a/libgfortran/generated/minloc0_16_s4.c b/libgfortran/generated/minloc0_16_s4.c
index 01fbc79..736eaa3 100644
--- a/libgfortran/generated/minloc0_16_s4.c
+++ b/libgfortran/generated/minloc0_16_s4.c
@@ -66,7 +66,7 @@ minloc0_16_s4 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
@@ -176,7 +176,7 @@ mminloc0_16_s4 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
@@ -309,7 +309,7 @@ sminloc0_16_s4 (gfc_array_i16 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_16));
}
diff --git a/libgfortran/generated/minloc0_4_i1.c b/libgfortran/generated/minloc0_4_i1.c
index 44cf484..acfbb91 100644
--- a/libgfortran/generated/minloc0_4_i1.c
+++ b/libgfortran/generated/minloc0_4_i1.c
@@ -53,7 +53,7 @@ minloc0_4_i1 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
@@ -194,7 +194,7 @@ mminloc0_4_i1 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
@@ -362,7 +362,7 @@ sminloc0_4_i1 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
diff --git a/libgfortran/generated/minloc0_4_i16.c b/libgfortran/generated/minloc0_4_i16.c
index c3bba2b..a47b20e 100644
--- a/libgfortran/generated/minloc0_4_i16.c
+++ b/libgfortran/generated/minloc0_4_i16.c
@@ -53,7 +53,7 @@ minloc0_4_i16 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
@@ -194,7 +194,7 @@ mminloc0_4_i16 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
@@ -362,7 +362,7 @@ sminloc0_4_i16 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
diff --git a/libgfortran/generated/minloc0_4_i2.c b/libgfortran/generated/minloc0_4_i2.c
index 6341c82..8b378ba 100644
--- a/libgfortran/generated/minloc0_4_i2.c
+++ b/libgfortran/generated/minloc0_4_i2.c
@@ -53,7 +53,7 @@ minloc0_4_i2 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
@@ -194,7 +194,7 @@ mminloc0_4_i2 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
@@ -362,7 +362,7 @@ sminloc0_4_i2 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
diff --git a/libgfortran/generated/minloc0_4_i4.c b/libgfortran/generated/minloc0_4_i4.c
index 22f24a2..b91d2bf 100644
--- a/libgfortran/generated/minloc0_4_i4.c
+++ b/libgfortran/generated/minloc0_4_i4.c
@@ -53,7 +53,7 @@ minloc0_4_i4 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
@@ -194,7 +194,7 @@ mminloc0_4_i4 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
@@ -362,7 +362,7 @@ sminloc0_4_i4 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
diff --git a/libgfortran/generated/minloc0_4_i8.c b/libgfortran/generated/minloc0_4_i8.c
index 950bdec..ee87eaa 100644
--- a/libgfortran/generated/minloc0_4_i8.c
+++ b/libgfortran/generated/minloc0_4_i8.c
@@ -53,7 +53,7 @@ minloc0_4_i8 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
@@ -194,7 +194,7 @@ mminloc0_4_i8 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
@@ -362,7 +362,7 @@ sminloc0_4_i8 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
diff --git a/libgfortran/generated/minloc0_4_r10.c b/libgfortran/generated/minloc0_4_r10.c
index 516d586..9d39606 100644
--- a/libgfortran/generated/minloc0_4_r10.c
+++ b/libgfortran/generated/minloc0_4_r10.c
@@ -53,7 +53,7 @@ minloc0_4_r10 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
@@ -194,7 +194,7 @@ mminloc0_4_r10 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
@@ -362,7 +362,7 @@ sminloc0_4_r10 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
diff --git a/libgfortran/generated/minloc0_4_r16.c b/libgfortran/generated/minloc0_4_r16.c
index 792094c..be920c3 100644
--- a/libgfortran/generated/minloc0_4_r16.c
+++ b/libgfortran/generated/minloc0_4_r16.c
@@ -53,7 +53,7 @@ minloc0_4_r16 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
@@ -194,7 +194,7 @@ mminloc0_4_r16 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
@@ -362,7 +362,7 @@ sminloc0_4_r16 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
diff --git a/libgfortran/generated/minloc0_4_r4.c b/libgfortran/generated/minloc0_4_r4.c
index 72d4d9c..f5beb64 100644
--- a/libgfortran/generated/minloc0_4_r4.c
+++ b/libgfortran/generated/minloc0_4_r4.c
@@ -53,7 +53,7 @@ minloc0_4_r4 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
@@ -194,7 +194,7 @@ mminloc0_4_r4 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
@@ -362,7 +362,7 @@ sminloc0_4_r4 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
diff --git a/libgfortran/generated/minloc0_4_r8.c b/libgfortran/generated/minloc0_4_r8.c
index d540a4d..2f6973c 100644
--- a/libgfortran/generated/minloc0_4_r8.c
+++ b/libgfortran/generated/minloc0_4_r8.c
@@ -53,7 +53,7 @@ minloc0_4_r8 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
@@ -194,7 +194,7 @@ mminloc0_4_r8 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
@@ -362,7 +362,7 @@ sminloc0_4_r8 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
diff --git a/libgfortran/generated/minloc0_4_s1.c b/libgfortran/generated/minloc0_4_s1.c
index 47d71c5..111ee09 100644
--- a/libgfortran/generated/minloc0_4_s1.c
+++ b/libgfortran/generated/minloc0_4_s1.c
@@ -66,7 +66,7 @@ minloc0_4_s1 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
@@ -176,7 +176,7 @@ mminloc0_4_s1 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
@@ -309,7 +309,7 @@ sminloc0_4_s1 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
diff --git a/libgfortran/generated/minloc0_4_s4.c b/libgfortran/generated/minloc0_4_s4.c
index 00ce3e9..d5379df 100644
--- a/libgfortran/generated/minloc0_4_s4.c
+++ b/libgfortran/generated/minloc0_4_s4.c
@@ -66,7 +66,7 @@ minloc0_4_s4 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
@@ -176,7 +176,7 @@ mminloc0_4_s4 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
@@ -309,7 +309,7 @@ sminloc0_4_s4 (gfc_array_i4 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_4));
}
diff --git a/libgfortran/generated/minloc0_8_i1.c b/libgfortran/generated/minloc0_8_i1.c
index 7f70385..cf7f5c1 100644
--- a/libgfortran/generated/minloc0_8_i1.c
+++ b/libgfortran/generated/minloc0_8_i1.c
@@ -53,7 +53,7 @@ minloc0_8_i1 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
@@ -194,7 +194,7 @@ mminloc0_8_i1 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
@@ -362,7 +362,7 @@ sminloc0_8_i1 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
diff --git a/libgfortran/generated/minloc0_8_i16.c b/libgfortran/generated/minloc0_8_i16.c
index 79a1380..d703408f 100644
--- a/libgfortran/generated/minloc0_8_i16.c
+++ b/libgfortran/generated/minloc0_8_i16.c
@@ -53,7 +53,7 @@ minloc0_8_i16 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
@@ -194,7 +194,7 @@ mminloc0_8_i16 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
@@ -362,7 +362,7 @@ sminloc0_8_i16 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
diff --git a/libgfortran/generated/minloc0_8_i2.c b/libgfortran/generated/minloc0_8_i2.c
index f4f4b03..003c33b 100644
--- a/libgfortran/generated/minloc0_8_i2.c
+++ b/libgfortran/generated/minloc0_8_i2.c
@@ -53,7 +53,7 @@ minloc0_8_i2 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
@@ -194,7 +194,7 @@ mminloc0_8_i2 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
@@ -362,7 +362,7 @@ sminloc0_8_i2 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
diff --git a/libgfortran/generated/minloc0_8_i4.c b/libgfortran/generated/minloc0_8_i4.c
index 47138e2..4b2f245 100644
--- a/libgfortran/generated/minloc0_8_i4.c
+++ b/libgfortran/generated/minloc0_8_i4.c
@@ -53,7 +53,7 @@ minloc0_8_i4 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
@@ -194,7 +194,7 @@ mminloc0_8_i4 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
@@ -362,7 +362,7 @@ sminloc0_8_i4 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
diff --git a/libgfortran/generated/minloc0_8_i8.c b/libgfortran/generated/minloc0_8_i8.c
index b92c106..6f2dc2e 100644
--- a/libgfortran/generated/minloc0_8_i8.c
+++ b/libgfortran/generated/minloc0_8_i8.c
@@ -53,7 +53,7 @@ minloc0_8_i8 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
@@ -194,7 +194,7 @@ mminloc0_8_i8 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
@@ -362,7 +362,7 @@ sminloc0_8_i8 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
diff --git a/libgfortran/generated/minloc0_8_r10.c b/libgfortran/generated/minloc0_8_r10.c
index aa89eab..1f08628 100644
--- a/libgfortran/generated/minloc0_8_r10.c
+++ b/libgfortran/generated/minloc0_8_r10.c
@@ -53,7 +53,7 @@ minloc0_8_r10 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
@@ -194,7 +194,7 @@ mminloc0_8_r10 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
@@ -362,7 +362,7 @@ sminloc0_8_r10 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
diff --git a/libgfortran/generated/minloc0_8_r16.c b/libgfortran/generated/minloc0_8_r16.c
index ffb34ce..e32fd13 100644
--- a/libgfortran/generated/minloc0_8_r16.c
+++ b/libgfortran/generated/minloc0_8_r16.c
@@ -53,7 +53,7 @@ minloc0_8_r16 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
@@ -194,7 +194,7 @@ mminloc0_8_r16 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
@@ -362,7 +362,7 @@ sminloc0_8_r16 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
diff --git a/libgfortran/generated/minloc0_8_r4.c b/libgfortran/generated/minloc0_8_r4.c
index 5d60b68..533e748 100644
--- a/libgfortran/generated/minloc0_8_r4.c
+++ b/libgfortran/generated/minloc0_8_r4.c
@@ -53,7 +53,7 @@ minloc0_8_r4 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
@@ -194,7 +194,7 @@ mminloc0_8_r4 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
@@ -362,7 +362,7 @@ sminloc0_8_r4 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
diff --git a/libgfortran/generated/minloc0_8_r8.c b/libgfortran/generated/minloc0_8_r8.c
index 72f1e7b..1eb7423 100644
--- a/libgfortran/generated/minloc0_8_r8.c
+++ b/libgfortran/generated/minloc0_8_r8.c
@@ -53,7 +53,7 @@ minloc0_8_r8 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
@@ -194,7 +194,7 @@ mminloc0_8_r8 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
@@ -362,7 +362,7 @@ sminloc0_8_r8 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
diff --git a/libgfortran/generated/minloc0_8_s1.c b/libgfortran/generated/minloc0_8_s1.c
index cefae90..d7b6bee 100644
--- a/libgfortran/generated/minloc0_8_s1.c
+++ b/libgfortran/generated/minloc0_8_s1.c
@@ -66,7 +66,7 @@ minloc0_8_s1 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
@@ -176,7 +176,7 @@ mminloc0_8_s1 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
@@ -309,7 +309,7 @@ sminloc0_8_s1 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
diff --git a/libgfortran/generated/minloc0_8_s4.c b/libgfortran/generated/minloc0_8_s4.c
index 162c966..ca1910c 100644
--- a/libgfortran/generated/minloc0_8_s4.c
+++ b/libgfortran/generated/minloc0_8_s4.c
@@ -66,7 +66,7 @@ minloc0_8_s4 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
@@ -176,7 +176,7 @@ mminloc0_8_s4 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
@@ -309,7 +309,7 @@ sminloc0_8_s4 (gfc_array_i8 * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (GFC_INTEGER_8));
}
diff --git a/libgfortran/generated/minloc1_16_i1.c b/libgfortran/generated/minloc1_16_i1.c
index 862ece8..e03ea37 100644
--- a/libgfortran/generated/minloc1_16_i1.c
+++ b/libgfortran/generated/minloc1_16_i1.c
@@ -100,7 +100,7 @@ minloc1_16_i1 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mminloc1_16_i1 (gfc_array_i16 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ sminloc1_16_i1 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/minloc1_16_i16.c b/libgfortran/generated/minloc1_16_i16.c
index e2dd18f..0ef0bda 100644
--- a/libgfortran/generated/minloc1_16_i16.c
+++ b/libgfortran/generated/minloc1_16_i16.c
@@ -100,7 +100,7 @@ minloc1_16_i16 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mminloc1_16_i16 (gfc_array_i16 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ sminloc1_16_i16 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/minloc1_16_i2.c b/libgfortran/generated/minloc1_16_i2.c
index a9d5a58..df854ce 100644
--- a/libgfortran/generated/minloc1_16_i2.c
+++ b/libgfortran/generated/minloc1_16_i2.c
@@ -100,7 +100,7 @@ minloc1_16_i2 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mminloc1_16_i2 (gfc_array_i16 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ sminloc1_16_i2 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/minloc1_16_i4.c b/libgfortran/generated/minloc1_16_i4.c
index be38dec..8c02e7a 100644
--- a/libgfortran/generated/minloc1_16_i4.c
+++ b/libgfortran/generated/minloc1_16_i4.c
@@ -100,7 +100,7 @@ minloc1_16_i4 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mminloc1_16_i4 (gfc_array_i16 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ sminloc1_16_i4 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/minloc1_16_i8.c b/libgfortran/generated/minloc1_16_i8.c
index 9b83616..938da8d 100644
--- a/libgfortran/generated/minloc1_16_i8.c
+++ b/libgfortran/generated/minloc1_16_i8.c
@@ -100,7 +100,7 @@ minloc1_16_i8 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mminloc1_16_i8 (gfc_array_i16 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ sminloc1_16_i8 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/minloc1_16_r10.c b/libgfortran/generated/minloc1_16_r10.c
index 78f0ba0..fbbcce6 100644
--- a/libgfortran/generated/minloc1_16_r10.c
+++ b/libgfortran/generated/minloc1_16_r10.c
@@ -100,7 +100,7 @@ minloc1_16_r10 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mminloc1_16_r10 (gfc_array_i16 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ sminloc1_16_r10 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/minloc1_16_r16.c b/libgfortran/generated/minloc1_16_r16.c
index 2ff24c1..4d3df6c 100644
--- a/libgfortran/generated/minloc1_16_r16.c
+++ b/libgfortran/generated/minloc1_16_r16.c
@@ -100,7 +100,7 @@ minloc1_16_r16 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mminloc1_16_r16 (gfc_array_i16 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ sminloc1_16_r16 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/minloc1_16_r4.c b/libgfortran/generated/minloc1_16_r4.c
index 8ac638a..ff62be4 100644
--- a/libgfortran/generated/minloc1_16_r4.c
+++ b/libgfortran/generated/minloc1_16_r4.c
@@ -100,7 +100,7 @@ minloc1_16_r4 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mminloc1_16_r4 (gfc_array_i16 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ sminloc1_16_r4 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/minloc1_16_r8.c b/libgfortran/generated/minloc1_16_r8.c
index 840956b..51ea636 100644
--- a/libgfortran/generated/minloc1_16_r8.c
+++ b/libgfortran/generated/minloc1_16_r8.c
@@ -100,7 +100,7 @@ minloc1_16_r8 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mminloc1_16_r8 (gfc_array_i16 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ sminloc1_16_r8 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/minloc1_16_s1.c b/libgfortran/generated/minloc1_16_s1.c
index 4c90fd1..51d49c2 100644
--- a/libgfortran/generated/minloc1_16_s1.c
+++ b/libgfortran/generated/minloc1_16_s1.c
@@ -111,7 +111,7 @@ minloc1_16_s1 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -304,7 +304,7 @@ mminloc1_16_s1 (gfc_array_i16 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -478,7 +478,7 @@ sminloc1_16_s1 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/minloc1_16_s4.c b/libgfortran/generated/minloc1_16_s4.c
index 8afbccf..cebf6b3 100644
--- a/libgfortran/generated/minloc1_16_s4.c
+++ b/libgfortran/generated/minloc1_16_s4.c
@@ -111,7 +111,7 @@ minloc1_16_s4 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -304,7 +304,7 @@ mminloc1_16_s4 (gfc_array_i16 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -478,7 +478,7 @@ sminloc1_16_s4 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/minloc1_4_i1.c b/libgfortran/generated/minloc1_4_i1.c
index 0f2a2be..e961877 100644
--- a/libgfortran/generated/minloc1_4_i1.c
+++ b/libgfortran/generated/minloc1_4_i1.c
@@ -100,7 +100,7 @@ minloc1_4_i1 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mminloc1_4_i1 (gfc_array_i4 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ sminloc1_4_i1 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/minloc1_4_i16.c b/libgfortran/generated/minloc1_4_i16.c
index d373c76..3ea294e 100644
--- a/libgfortran/generated/minloc1_4_i16.c
+++ b/libgfortran/generated/minloc1_4_i16.c
@@ -100,7 +100,7 @@ minloc1_4_i16 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mminloc1_4_i16 (gfc_array_i4 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ sminloc1_4_i16 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/minloc1_4_i2.c b/libgfortran/generated/minloc1_4_i2.c
index 63aaee3..564c262 100644
--- a/libgfortran/generated/minloc1_4_i2.c
+++ b/libgfortran/generated/minloc1_4_i2.c
@@ -100,7 +100,7 @@ minloc1_4_i2 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mminloc1_4_i2 (gfc_array_i4 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ sminloc1_4_i2 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/minloc1_4_i4.c b/libgfortran/generated/minloc1_4_i4.c
index 19aa5b2..97dd9c2 100644
--- a/libgfortran/generated/minloc1_4_i4.c
+++ b/libgfortran/generated/minloc1_4_i4.c
@@ -100,7 +100,7 @@ minloc1_4_i4 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mminloc1_4_i4 (gfc_array_i4 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ sminloc1_4_i4 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/minloc1_4_i8.c b/libgfortran/generated/minloc1_4_i8.c
index d9fe2c58..4c40632 100644
--- a/libgfortran/generated/minloc1_4_i8.c
+++ b/libgfortran/generated/minloc1_4_i8.c
@@ -100,7 +100,7 @@ minloc1_4_i8 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mminloc1_4_i8 (gfc_array_i4 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ sminloc1_4_i8 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/minloc1_4_r10.c b/libgfortran/generated/minloc1_4_r10.c
index 10373c3..01903a79 100644
--- a/libgfortran/generated/minloc1_4_r10.c
+++ b/libgfortran/generated/minloc1_4_r10.c
@@ -100,7 +100,7 @@ minloc1_4_r10 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mminloc1_4_r10 (gfc_array_i4 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ sminloc1_4_r10 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/minloc1_4_r16.c b/libgfortran/generated/minloc1_4_r16.c
index ef0391f..f266ea7 100644
--- a/libgfortran/generated/minloc1_4_r16.c
+++ b/libgfortran/generated/minloc1_4_r16.c
@@ -100,7 +100,7 @@ minloc1_4_r16 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mminloc1_4_r16 (gfc_array_i4 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ sminloc1_4_r16 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/minloc1_4_r4.c b/libgfortran/generated/minloc1_4_r4.c
index b70367d..3f680e5 100644
--- a/libgfortran/generated/minloc1_4_r4.c
+++ b/libgfortran/generated/minloc1_4_r4.c
@@ -100,7 +100,7 @@ minloc1_4_r4 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mminloc1_4_r4 (gfc_array_i4 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ sminloc1_4_r4 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/minloc1_4_r8.c b/libgfortran/generated/minloc1_4_r8.c
index 76fb6c8..dc425ef 100644
--- a/libgfortran/generated/minloc1_4_r8.c
+++ b/libgfortran/generated/minloc1_4_r8.c
@@ -100,7 +100,7 @@ minloc1_4_r8 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mminloc1_4_r8 (gfc_array_i4 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ sminloc1_4_r8 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/minloc1_4_s1.c b/libgfortran/generated/minloc1_4_s1.c
index 9b942c9..0b8c0e8 100644
--- a/libgfortran/generated/minloc1_4_s1.c
+++ b/libgfortran/generated/minloc1_4_s1.c
@@ -111,7 +111,7 @@ minloc1_4_s1 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -304,7 +304,7 @@ mminloc1_4_s1 (gfc_array_i4 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -478,7 +478,7 @@ sminloc1_4_s1 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/minloc1_4_s4.c b/libgfortran/generated/minloc1_4_s4.c
index 33f08b7..c92f690 100644
--- a/libgfortran/generated/minloc1_4_s4.c
+++ b/libgfortran/generated/minloc1_4_s4.c
@@ -111,7 +111,7 @@ minloc1_4_s4 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -304,7 +304,7 @@ mminloc1_4_s4 (gfc_array_i4 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -478,7 +478,7 @@ sminloc1_4_s4 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/minloc1_8_i1.c b/libgfortran/generated/minloc1_8_i1.c
index 0644497..913a7a6 100644
--- a/libgfortran/generated/minloc1_8_i1.c
+++ b/libgfortran/generated/minloc1_8_i1.c
@@ -100,7 +100,7 @@ minloc1_8_i1 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mminloc1_8_i1 (gfc_array_i8 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ sminloc1_8_i1 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/minloc1_8_i16.c b/libgfortran/generated/minloc1_8_i16.c
index 1c9e8d89..218b20c 100644
--- a/libgfortran/generated/minloc1_8_i16.c
+++ b/libgfortran/generated/minloc1_8_i16.c
@@ -100,7 +100,7 @@ minloc1_8_i16 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mminloc1_8_i16 (gfc_array_i8 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ sminloc1_8_i16 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/minloc1_8_i2.c b/libgfortran/generated/minloc1_8_i2.c
index 3762ed1..191bcce 100644
--- a/libgfortran/generated/minloc1_8_i2.c
+++ b/libgfortran/generated/minloc1_8_i2.c
@@ -100,7 +100,7 @@ minloc1_8_i2 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mminloc1_8_i2 (gfc_array_i8 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ sminloc1_8_i2 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/minloc1_8_i4.c b/libgfortran/generated/minloc1_8_i4.c
index efbe13a..ff61786 100644
--- a/libgfortran/generated/minloc1_8_i4.c
+++ b/libgfortran/generated/minloc1_8_i4.c
@@ -100,7 +100,7 @@ minloc1_8_i4 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mminloc1_8_i4 (gfc_array_i8 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ sminloc1_8_i4 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/minloc1_8_i8.c b/libgfortran/generated/minloc1_8_i8.c
index 6295ae3..42f917c 100644
--- a/libgfortran/generated/minloc1_8_i8.c
+++ b/libgfortran/generated/minloc1_8_i8.c
@@ -100,7 +100,7 @@ minloc1_8_i8 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mminloc1_8_i8 (gfc_array_i8 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ sminloc1_8_i8 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/minloc1_8_r10.c b/libgfortran/generated/minloc1_8_r10.c
index f0f1d3f..603f57b 100644
--- a/libgfortran/generated/minloc1_8_r10.c
+++ b/libgfortran/generated/minloc1_8_r10.c
@@ -100,7 +100,7 @@ minloc1_8_r10 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mminloc1_8_r10 (gfc_array_i8 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ sminloc1_8_r10 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/minloc1_8_r16.c b/libgfortran/generated/minloc1_8_r16.c
index dc32144..cad0d00 100644
--- a/libgfortran/generated/minloc1_8_r16.c
+++ b/libgfortran/generated/minloc1_8_r16.c
@@ -100,7 +100,7 @@ minloc1_8_r16 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mminloc1_8_r16 (gfc_array_i8 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ sminloc1_8_r16 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/minloc1_8_r4.c b/libgfortran/generated/minloc1_8_r4.c
index 5178236..15d7482 100644
--- a/libgfortran/generated/minloc1_8_r4.c
+++ b/libgfortran/generated/minloc1_8_r4.c
@@ -100,7 +100,7 @@ minloc1_8_r4 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mminloc1_8_r4 (gfc_array_i8 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ sminloc1_8_r4 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/minloc1_8_r8.c b/libgfortran/generated/minloc1_8_r8.c
index 863a513..7cd1c9d 100644
--- a/libgfortran/generated/minloc1_8_r8.c
+++ b/libgfortran/generated/minloc1_8_r8.c
@@ -100,7 +100,7 @@ minloc1_8_r8 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -308,7 +308,7 @@ mminloc1_8_r8 (gfc_array_i8 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -500,7 +500,7 @@ sminloc1_8_r8 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/minloc1_8_s1.c b/libgfortran/generated/minloc1_8_s1.c
index 88ab4cf..8428db2 100644
--- a/libgfortran/generated/minloc1_8_s1.c
+++ b/libgfortran/generated/minloc1_8_s1.c
@@ -111,7 +111,7 @@ minloc1_8_s1 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -304,7 +304,7 @@ mminloc1_8_s1 (gfc_array_i8 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -478,7 +478,7 @@ sminloc1_8_s1 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/minloc1_8_s4.c b/libgfortran/generated/minloc1_8_s4.c
index 65fb691..8042dd2 100644
--- a/libgfortran/generated/minloc1_8_s4.c
+++ b/libgfortran/generated/minloc1_8_s4.c
@@ -111,7 +111,7 @@ minloc1_8_s4 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -304,7 +304,7 @@ mminloc1_8_s4 (gfc_array_i8 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -478,7 +478,7 @@ sminloc1_8_s4 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/minval1_s1.c b/libgfortran/generated/minval1_s1.c
index c4f8cd1..153ce0d 100644
--- a/libgfortran/generated/minval1_s1.c
+++ b/libgfortran/generated/minval1_s1.c
@@ -114,7 +114,7 @@ minval1_s1 (gfc_array_s1 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1]
* string_len;
@@ -310,7 +310,7 @@ mminval1_s1 (gfc_array_s1 * const restrict retarray,
* string_len;
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -485,7 +485,7 @@ sminval1_s1 (gfc_array_s1 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1]
* string_len;
diff --git a/libgfortran/generated/minval1_s4.c b/libgfortran/generated/minval1_s4.c
index b513980..47c0283 100644
--- a/libgfortran/generated/minval1_s4.c
+++ b/libgfortran/generated/minval1_s4.c
@@ -114,7 +114,7 @@ minval1_s4 (gfc_array_s4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1]
* string_len;
@@ -310,7 +310,7 @@ mminval1_s4 (gfc_array_s4 * const restrict retarray,
* string_len;
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -485,7 +485,7 @@ sminval1_s4 (gfc_array_s4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1]
* string_len;
diff --git a/libgfortran/generated/minval_i1.c b/libgfortran/generated/minval_i1.c
index 4794d25..f57c5ab 100644
--- a/libgfortran/generated/minval_i1.c
+++ b/libgfortran/generated/minval_i1.c
@@ -100,7 +100,7 @@ minval_i1 (gfc_array_i1 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -301,7 +301,7 @@ mminval_i1 (gfc_array_i1 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -488,7 +488,7 @@ sminval_i1 (gfc_array_i1 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/minval_i16.c b/libgfortran/generated/minval_i16.c
index fc57082..11781a6 100644
--- a/libgfortran/generated/minval_i16.c
+++ b/libgfortran/generated/minval_i16.c
@@ -100,7 +100,7 @@ minval_i16 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -301,7 +301,7 @@ mminval_i16 (gfc_array_i16 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -488,7 +488,7 @@ sminval_i16 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/minval_i2.c b/libgfortran/generated/minval_i2.c
index 34c3e2f..b786985 100644
--- a/libgfortran/generated/minval_i2.c
+++ b/libgfortran/generated/minval_i2.c
@@ -100,7 +100,7 @@ minval_i2 (gfc_array_i2 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -301,7 +301,7 @@ mminval_i2 (gfc_array_i2 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -488,7 +488,7 @@ sminval_i2 (gfc_array_i2 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/minval_i4.c b/libgfortran/generated/minval_i4.c
index de9f299..ecd0b4e 100644
--- a/libgfortran/generated/minval_i4.c
+++ b/libgfortran/generated/minval_i4.c
@@ -100,7 +100,7 @@ minval_i4 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -301,7 +301,7 @@ mminval_i4 (gfc_array_i4 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -488,7 +488,7 @@ sminval_i4 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/minval_i8.c b/libgfortran/generated/minval_i8.c
index b7351d8..a4e8f78 100644
--- a/libgfortran/generated/minval_i8.c
+++ b/libgfortran/generated/minval_i8.c
@@ -100,7 +100,7 @@ minval_i8 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -301,7 +301,7 @@ mminval_i8 (gfc_array_i8 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -488,7 +488,7 @@ sminval_i8 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/minval_r10.c b/libgfortran/generated/minval_r10.c
index 76be913..0ac2185 100644
--- a/libgfortran/generated/minval_r10.c
+++ b/libgfortran/generated/minval_r10.c
@@ -100,7 +100,7 @@ minval_r10 (gfc_array_r10 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -301,7 +301,7 @@ mminval_r10 (gfc_array_r10 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -488,7 +488,7 @@ sminval_r10 (gfc_array_r10 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/minval_r16.c b/libgfortran/generated/minval_r16.c
index 0ddca01..bee1289 100644
--- a/libgfortran/generated/minval_r16.c
+++ b/libgfortran/generated/minval_r16.c
@@ -100,7 +100,7 @@ minval_r16 (gfc_array_r16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -301,7 +301,7 @@ mminval_r16 (gfc_array_r16 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -488,7 +488,7 @@ sminval_r16 (gfc_array_r16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/minval_r4.c b/libgfortran/generated/minval_r4.c
index 6afb656..d47a9c8 100644
--- a/libgfortran/generated/minval_r4.c
+++ b/libgfortran/generated/minval_r4.c
@@ -100,7 +100,7 @@ minval_r4 (gfc_array_r4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -301,7 +301,7 @@ mminval_r4 (gfc_array_r4 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -488,7 +488,7 @@ sminval_r4 (gfc_array_r4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/minval_r8.c b/libgfortran/generated/minval_r8.c
index aa82435..0552847 100644
--- a/libgfortran/generated/minval_r8.c
+++ b/libgfortran/generated/minval_r8.c
@@ -100,7 +100,7 @@ minval_r8 (gfc_array_r8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -301,7 +301,7 @@ mminval_r8 (gfc_array_r8 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -488,7 +488,7 @@ sminval_r8 (gfc_array_r8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/norm2_r10.c b/libgfortran/generated/norm2_r10.c
index a8715ab..37b3a87 100644
--- a/libgfortran/generated/norm2_r10.c
+++ b/libgfortran/generated/norm2_r10.c
@@ -103,7 +103,7 @@ norm2_r10 (gfc_array_r10 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/norm2_r16.c b/libgfortran/generated/norm2_r16.c
index 7461abf..faa06ba 100644
--- a/libgfortran/generated/norm2_r16.c
+++ b/libgfortran/generated/norm2_r16.c
@@ -107,7 +107,7 @@ norm2_r16 (gfc_array_r16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/norm2_r4.c b/libgfortran/generated/norm2_r4.c
index c240fd3..22a006b 100644
--- a/libgfortran/generated/norm2_r4.c
+++ b/libgfortran/generated/norm2_r4.c
@@ -103,7 +103,7 @@ norm2_r4 (gfc_array_r4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/norm2_r8.c b/libgfortran/generated/norm2_r8.c
index a2ec173..7b2a5ae 100644
--- a/libgfortran/generated/norm2_r8.c
+++ b/libgfortran/generated/norm2_r8.c
@@ -103,7 +103,7 @@ norm2_r8 (gfc_array_r8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/parity_l1.c b/libgfortran/generated/parity_l1.c
index 011c9c8..fe4e5c8 100644
--- a/libgfortran/generated/parity_l1.c
+++ b/libgfortran/generated/parity_l1.c
@@ -100,7 +100,7 @@ parity_l1 (gfc_array_l1 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/parity_l16.c b/libgfortran/generated/parity_l16.c
index 8e08b2f..b74882c 100644
--- a/libgfortran/generated/parity_l16.c
+++ b/libgfortran/generated/parity_l16.c
@@ -100,7 +100,7 @@ parity_l16 (gfc_array_l16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/parity_l2.c b/libgfortran/generated/parity_l2.c
index 0ae04ec..9c0b0eb 100644
--- a/libgfortran/generated/parity_l2.c
+++ b/libgfortran/generated/parity_l2.c
@@ -100,7 +100,7 @@ parity_l2 (gfc_array_l2 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/parity_l4.c b/libgfortran/generated/parity_l4.c
index 14a03cc..7506605 100644
--- a/libgfortran/generated/parity_l4.c
+++ b/libgfortran/generated/parity_l4.c
@@ -100,7 +100,7 @@ parity_l4 (gfc_array_l4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/parity_l8.c b/libgfortran/generated/parity_l8.c
index 86d1744..273c272 100644
--- a/libgfortran/generated/parity_l8.c
+++ b/libgfortran/generated/parity_l8.c
@@ -100,7 +100,7 @@ parity_l8 (gfc_array_l8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/product_c10.c b/libgfortran/generated/product_c10.c
index ef9c98f..d78bab9 100644
--- a/libgfortran/generated/product_c10.c
+++ b/libgfortran/generated/product_c10.c
@@ -100,7 +100,7 @@ product_c10 (gfc_array_c10 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -287,7 +287,7 @@ mproduct_c10 (gfc_array_c10 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -446,7 +446,7 @@ sproduct_c10 (gfc_array_c10 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/product_c16.c b/libgfortran/generated/product_c16.c
index 8e06baf..7b6b1ee 100644
--- a/libgfortran/generated/product_c16.c
+++ b/libgfortran/generated/product_c16.c
@@ -100,7 +100,7 @@ product_c16 (gfc_array_c16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -287,7 +287,7 @@ mproduct_c16 (gfc_array_c16 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -446,7 +446,7 @@ sproduct_c16 (gfc_array_c16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/product_c4.c b/libgfortran/generated/product_c4.c
index 76fb9fb..ddb28bc 100644
--- a/libgfortran/generated/product_c4.c
+++ b/libgfortran/generated/product_c4.c
@@ -100,7 +100,7 @@ product_c4 (gfc_array_c4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -287,7 +287,7 @@ mproduct_c4 (gfc_array_c4 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -446,7 +446,7 @@ sproduct_c4 (gfc_array_c4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/product_c8.c b/libgfortran/generated/product_c8.c
index 97dd825..e1705bc 100644
--- a/libgfortran/generated/product_c8.c
+++ b/libgfortran/generated/product_c8.c
@@ -100,7 +100,7 @@ product_c8 (gfc_array_c8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -287,7 +287,7 @@ mproduct_c8 (gfc_array_c8 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -446,7 +446,7 @@ sproduct_c8 (gfc_array_c8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/product_i1.c b/libgfortran/generated/product_i1.c
index 83e87b9..38f6f21 100644
--- a/libgfortran/generated/product_i1.c
+++ b/libgfortran/generated/product_i1.c
@@ -100,7 +100,7 @@ product_i1 (gfc_array_i1 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -287,7 +287,7 @@ mproduct_i1 (gfc_array_i1 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -446,7 +446,7 @@ sproduct_i1 (gfc_array_i1 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/product_i16.c b/libgfortran/generated/product_i16.c
index 462e581..58c51fb 100644
--- a/libgfortran/generated/product_i16.c
+++ b/libgfortran/generated/product_i16.c
@@ -100,7 +100,7 @@ product_i16 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -287,7 +287,7 @@ mproduct_i16 (gfc_array_i16 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -446,7 +446,7 @@ sproduct_i16 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/product_i2.c b/libgfortran/generated/product_i2.c
index e99e3e3..b91ca75 100644
--- a/libgfortran/generated/product_i2.c
+++ b/libgfortran/generated/product_i2.c
@@ -100,7 +100,7 @@ product_i2 (gfc_array_i2 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -287,7 +287,7 @@ mproduct_i2 (gfc_array_i2 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -446,7 +446,7 @@ sproduct_i2 (gfc_array_i2 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/product_i4.c b/libgfortran/generated/product_i4.c
index ebca81e..246dc7e 100644
--- a/libgfortran/generated/product_i4.c
+++ b/libgfortran/generated/product_i4.c
@@ -100,7 +100,7 @@ product_i4 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -287,7 +287,7 @@ mproduct_i4 (gfc_array_i4 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -446,7 +446,7 @@ sproduct_i4 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/product_i8.c b/libgfortran/generated/product_i8.c
index 8291716..a0e264f 100644
--- a/libgfortran/generated/product_i8.c
+++ b/libgfortran/generated/product_i8.c
@@ -100,7 +100,7 @@ product_i8 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -287,7 +287,7 @@ mproduct_i8 (gfc_array_i8 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -446,7 +446,7 @@ sproduct_i8 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/product_r10.c b/libgfortran/generated/product_r10.c
index f98aeed..decefd7 100644
--- a/libgfortran/generated/product_r10.c
+++ b/libgfortran/generated/product_r10.c
@@ -100,7 +100,7 @@ product_r10 (gfc_array_r10 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -287,7 +287,7 @@ mproduct_r10 (gfc_array_r10 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -446,7 +446,7 @@ sproduct_r10 (gfc_array_r10 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/product_r16.c b/libgfortran/generated/product_r16.c
index 042f04e..66f3ef9 100644
--- a/libgfortran/generated/product_r16.c
+++ b/libgfortran/generated/product_r16.c
@@ -100,7 +100,7 @@ product_r16 (gfc_array_r16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -287,7 +287,7 @@ mproduct_r16 (gfc_array_r16 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -446,7 +446,7 @@ sproduct_r16 (gfc_array_r16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/product_r4.c b/libgfortran/generated/product_r4.c
index 60985df..0f5f1f5 100644
--- a/libgfortran/generated/product_r4.c
+++ b/libgfortran/generated/product_r4.c
@@ -100,7 +100,7 @@ product_r4 (gfc_array_r4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -287,7 +287,7 @@ mproduct_r4 (gfc_array_r4 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -446,7 +446,7 @@ sproduct_r4 (gfc_array_r4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/product_r8.c b/libgfortran/generated/product_r8.c
index 196db93..75ed99c 100644
--- a/libgfortran/generated/product_r8.c
+++ b/libgfortran/generated/product_r8.c
@@ -100,7 +100,7 @@ product_r8 (gfc_array_r8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -287,7 +287,7 @@ mproduct_r8 (gfc_array_r8 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -446,7 +446,7 @@ sproduct_r8 (gfc_array_r8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/reshape_c10.c b/libgfortran/generated/reshape_c10.c
index 68331f6..6bf12fd 100644
--- a/libgfortran/generated/reshape_c10.c
+++ b/libgfortran/generated/reshape_c10.c
@@ -118,7 +118,7 @@ reshape_c10 (gfc_array_c10 * const restrict ret,
alloc_size = rs;
ret->base_addr = xmallocarray (alloc_size, sizeof (GFC_COMPLEX_10));
- ret->dtype = (source->dtype & ~GFC_DTYPE_RANK_MASK) | rdim;
+ GFC_DTYPE_COPY_SETRANK(ret,source,rdim);
}
if (shape_empty)
diff --git a/libgfortran/generated/reshape_c16.c b/libgfortran/generated/reshape_c16.c
index 546811e..28e7eeb 100644
--- a/libgfortran/generated/reshape_c16.c
+++ b/libgfortran/generated/reshape_c16.c
@@ -118,7 +118,7 @@ reshape_c16 (gfc_array_c16 * const restrict ret,
alloc_size = rs;
ret->base_addr = xmallocarray (alloc_size, sizeof (GFC_COMPLEX_16));
- ret->dtype = (source->dtype & ~GFC_DTYPE_RANK_MASK) | rdim;
+ GFC_DTYPE_COPY_SETRANK(ret,source,rdim);
}
if (shape_empty)
diff --git a/libgfortran/generated/reshape_c4.c b/libgfortran/generated/reshape_c4.c
index c86a8c7..15997a0 100644
--- a/libgfortran/generated/reshape_c4.c
+++ b/libgfortran/generated/reshape_c4.c
@@ -118,7 +118,7 @@ reshape_c4 (gfc_array_c4 * const restrict ret,
alloc_size = rs;
ret->base_addr = xmallocarray (alloc_size, sizeof (GFC_COMPLEX_4));
- ret->dtype = (source->dtype & ~GFC_DTYPE_RANK_MASK) | rdim;
+ GFC_DTYPE_COPY_SETRANK(ret,source,rdim);
}
if (shape_empty)
diff --git a/libgfortran/generated/reshape_c8.c b/libgfortran/generated/reshape_c8.c
index cb99994..be5457f 100644
--- a/libgfortran/generated/reshape_c8.c
+++ b/libgfortran/generated/reshape_c8.c
@@ -118,7 +118,7 @@ reshape_c8 (gfc_array_c8 * const restrict ret,
alloc_size = rs;
ret->base_addr = xmallocarray (alloc_size, sizeof (GFC_COMPLEX_8));
- ret->dtype = (source->dtype & ~GFC_DTYPE_RANK_MASK) | rdim;
+ GFC_DTYPE_COPY_SETRANK(ret,source,rdim);
}
if (shape_empty)
diff --git a/libgfortran/generated/reshape_i16.c b/libgfortran/generated/reshape_i16.c
index 0d4d706..3d4d516 100644
--- a/libgfortran/generated/reshape_i16.c
+++ b/libgfortran/generated/reshape_i16.c
@@ -118,7 +118,7 @@ reshape_16 (gfc_array_i16 * const restrict ret,
alloc_size = rs;
ret->base_addr = xmallocarray (alloc_size, sizeof (GFC_INTEGER_16));
- ret->dtype = (source->dtype & ~GFC_DTYPE_RANK_MASK) | rdim;
+ GFC_DTYPE_COPY_SETRANK(ret,source,rdim);
}
if (shape_empty)
diff --git a/libgfortran/generated/reshape_i4.c b/libgfortran/generated/reshape_i4.c
index fd356b5..64fae81 100644
--- a/libgfortran/generated/reshape_i4.c
+++ b/libgfortran/generated/reshape_i4.c
@@ -118,7 +118,7 @@ reshape_4 (gfc_array_i4 * const restrict ret,
alloc_size = rs;
ret->base_addr = xmallocarray (alloc_size, sizeof (GFC_INTEGER_4));
- ret->dtype = (source->dtype & ~GFC_DTYPE_RANK_MASK) | rdim;
+ GFC_DTYPE_COPY_SETRANK(ret,source,rdim);
}
if (shape_empty)
diff --git a/libgfortran/generated/reshape_i8.c b/libgfortran/generated/reshape_i8.c
index 6a16e39..aa675a7 100644
--- a/libgfortran/generated/reshape_i8.c
+++ b/libgfortran/generated/reshape_i8.c
@@ -118,7 +118,7 @@ reshape_8 (gfc_array_i8 * const restrict ret,
alloc_size = rs;
ret->base_addr = xmallocarray (alloc_size, sizeof (GFC_INTEGER_8));
- ret->dtype = (source->dtype & ~GFC_DTYPE_RANK_MASK) | rdim;
+ GFC_DTYPE_COPY_SETRANK(ret,source,rdim);
}
if (shape_empty)
diff --git a/libgfortran/generated/reshape_r10.c b/libgfortran/generated/reshape_r10.c
index e47eabf..2feac5a 100644
--- a/libgfortran/generated/reshape_r10.c
+++ b/libgfortran/generated/reshape_r10.c
@@ -118,7 +118,7 @@ reshape_r10 (gfc_array_r10 * const restrict ret,
alloc_size = rs;
ret->base_addr = xmallocarray (alloc_size, sizeof (GFC_REAL_10));
- ret->dtype = (source->dtype & ~GFC_DTYPE_RANK_MASK) | rdim;
+ GFC_DTYPE_COPY_SETRANK(ret,source,rdim);
}
if (shape_empty)
diff --git a/libgfortran/generated/reshape_r16.c b/libgfortran/generated/reshape_r16.c
index 7236d2b..bbfd2ad 100644
--- a/libgfortran/generated/reshape_r16.c
+++ b/libgfortran/generated/reshape_r16.c
@@ -118,7 +118,7 @@ reshape_r16 (gfc_array_r16 * const restrict ret,
alloc_size = rs;
ret->base_addr = xmallocarray (alloc_size, sizeof (GFC_REAL_16));
- ret->dtype = (source->dtype & ~GFC_DTYPE_RANK_MASK) | rdim;
+ GFC_DTYPE_COPY_SETRANK(ret,source,rdim);
}
if (shape_empty)
diff --git a/libgfortran/generated/reshape_r4.c b/libgfortran/generated/reshape_r4.c
index 483e726..b0f27dc 100644
--- a/libgfortran/generated/reshape_r4.c
+++ b/libgfortran/generated/reshape_r4.c
@@ -118,7 +118,7 @@ reshape_r4 (gfc_array_r4 * const restrict ret,
alloc_size = rs;
ret->base_addr = xmallocarray (alloc_size, sizeof (GFC_REAL_4));
- ret->dtype = (source->dtype & ~GFC_DTYPE_RANK_MASK) | rdim;
+ GFC_DTYPE_COPY_SETRANK(ret,source,rdim);
}
if (shape_empty)
diff --git a/libgfortran/generated/reshape_r8.c b/libgfortran/generated/reshape_r8.c
index 011f252..bd0d2bc 100644
--- a/libgfortran/generated/reshape_r8.c
+++ b/libgfortran/generated/reshape_r8.c
@@ -118,7 +118,7 @@ reshape_r8 (gfc_array_r8 * const restrict ret,
alloc_size = rs;
ret->base_addr = xmallocarray (alloc_size, sizeof (GFC_REAL_8));
- ret->dtype = (source->dtype & ~GFC_DTYPE_RANK_MASK) | rdim;
+ GFC_DTYPE_COPY_SETRANK(ret,source,rdim);
}
if (shape_empty)
diff --git a/libgfortran/generated/spread_c10.c b/libgfortran/generated/spread_c10.c
index eca8ab9..70aa950 100644
--- a/libgfortran/generated/spread_c10.c
+++ b/libgfortran/generated/spread_c10.c
@@ -72,7 +72,7 @@ spread_c10 (gfc_array_c10 *ret, const gfc_array_c10 *source,
/* The front end has signalled that we need to populate the
return array descriptor. */
- ret->dtype = (source->dtype & ~GFC_DTYPE_RANK_MASK) | rrank;
+ GFC_DTYPE_COPY_SETRANK(ret,source,rrank);
dim = 0;
rs = 1;
for (n = 0; n < rrank; n++)
diff --git a/libgfortran/generated/spread_c16.c b/libgfortran/generated/spread_c16.c
index 5297954..9a284a1 100644
--- a/libgfortran/generated/spread_c16.c
+++ b/libgfortran/generated/spread_c16.c
@@ -72,7 +72,7 @@ spread_c16 (gfc_array_c16 *ret, const gfc_array_c16 *source,
/* The front end has signalled that we need to populate the
return array descriptor. */
- ret->dtype = (source->dtype & ~GFC_DTYPE_RANK_MASK) | rrank;
+ GFC_DTYPE_COPY_SETRANK(ret,source,rrank);
dim = 0;
rs = 1;
for (n = 0; n < rrank; n++)
diff --git a/libgfortran/generated/spread_c4.c b/libgfortran/generated/spread_c4.c
index b7dc830..dbb12d5 100644
--- a/libgfortran/generated/spread_c4.c
+++ b/libgfortran/generated/spread_c4.c
@@ -72,7 +72,7 @@ spread_c4 (gfc_array_c4 *ret, const gfc_array_c4 *source,
/* The front end has signalled that we need to populate the
return array descriptor. */
- ret->dtype = (source->dtype & ~GFC_DTYPE_RANK_MASK) | rrank;
+ GFC_DTYPE_COPY_SETRANK(ret,source,rrank);
dim = 0;
rs = 1;
for (n = 0; n < rrank; n++)
diff --git a/libgfortran/generated/spread_c8.c b/libgfortran/generated/spread_c8.c
index 6887db1..09f371f 100644
--- a/libgfortran/generated/spread_c8.c
+++ b/libgfortran/generated/spread_c8.c
@@ -72,7 +72,7 @@ spread_c8 (gfc_array_c8 *ret, const gfc_array_c8 *source,
/* The front end has signalled that we need to populate the
return array descriptor. */
- ret->dtype = (source->dtype & ~GFC_DTYPE_RANK_MASK) | rrank;
+ GFC_DTYPE_COPY_SETRANK(ret,source,rrank);
dim = 0;
rs = 1;
for (n = 0; n < rrank; n++)
diff --git a/libgfortran/generated/spread_i1.c b/libgfortran/generated/spread_i1.c
index 11596b7..6c56bfc 100644
--- a/libgfortran/generated/spread_i1.c
+++ b/libgfortran/generated/spread_i1.c
@@ -72,7 +72,7 @@ spread_i1 (gfc_array_i1 *ret, const gfc_array_i1 *source,
/* The front end has signalled that we need to populate the
return array descriptor. */
- ret->dtype = (source->dtype & ~GFC_DTYPE_RANK_MASK) | rrank;
+ GFC_DTYPE_COPY_SETRANK(ret,source,rrank);
dim = 0;
rs = 1;
for (n = 0; n < rrank; n++)
diff --git a/libgfortran/generated/spread_i16.c b/libgfortran/generated/spread_i16.c
index d948d8e..a00ed75 100644
--- a/libgfortran/generated/spread_i16.c
+++ b/libgfortran/generated/spread_i16.c
@@ -72,7 +72,7 @@ spread_i16 (gfc_array_i16 *ret, const gfc_array_i16 *source,
/* The front end has signalled that we need to populate the
return array descriptor. */
- ret->dtype = (source->dtype & ~GFC_DTYPE_RANK_MASK) | rrank;
+ GFC_DTYPE_COPY_SETRANK(ret,source,rrank);
dim = 0;
rs = 1;
for (n = 0; n < rrank; n++)
diff --git a/libgfortran/generated/spread_i2.c b/libgfortran/generated/spread_i2.c
index 7baf814..f48d66e 100644
--- a/libgfortran/generated/spread_i2.c
+++ b/libgfortran/generated/spread_i2.c
@@ -72,7 +72,7 @@ spread_i2 (gfc_array_i2 *ret, const gfc_array_i2 *source,
/* The front end has signalled that we need to populate the
return array descriptor. */
- ret->dtype = (source->dtype & ~GFC_DTYPE_RANK_MASK) | rrank;
+ GFC_DTYPE_COPY_SETRANK(ret,source,rrank);
dim = 0;
rs = 1;
for (n = 0; n < rrank; n++)
diff --git a/libgfortran/generated/spread_i4.c b/libgfortran/generated/spread_i4.c
index b93a3ee..5703cd6 100644
--- a/libgfortran/generated/spread_i4.c
+++ b/libgfortran/generated/spread_i4.c
@@ -72,7 +72,7 @@ spread_i4 (gfc_array_i4 *ret, const gfc_array_i4 *source,
/* The front end has signalled that we need to populate the
return array descriptor. */
- ret->dtype = (source->dtype & ~GFC_DTYPE_RANK_MASK) | rrank;
+ GFC_DTYPE_COPY_SETRANK(ret,source,rrank);
dim = 0;
rs = 1;
for (n = 0; n < rrank; n++)
diff --git a/libgfortran/generated/spread_i8.c b/libgfortran/generated/spread_i8.c
index fa0bc49..25465a1 100644
--- a/libgfortran/generated/spread_i8.c
+++ b/libgfortran/generated/spread_i8.c
@@ -72,7 +72,7 @@ spread_i8 (gfc_array_i8 *ret, const gfc_array_i8 *source,
/* The front end has signalled that we need to populate the
return array descriptor. */
- ret->dtype = (source->dtype & ~GFC_DTYPE_RANK_MASK) | rrank;
+ GFC_DTYPE_COPY_SETRANK(ret,source,rrank);
dim = 0;
rs = 1;
for (n = 0; n < rrank; n++)
diff --git a/libgfortran/generated/spread_r10.c b/libgfortran/generated/spread_r10.c
index 32ed606..5f9b021 100644
--- a/libgfortran/generated/spread_r10.c
+++ b/libgfortran/generated/spread_r10.c
@@ -72,7 +72,7 @@ spread_r10 (gfc_array_r10 *ret, const gfc_array_r10 *source,
/* The front end has signalled that we need to populate the
return array descriptor. */
- ret->dtype = (source->dtype & ~GFC_DTYPE_RANK_MASK) | rrank;
+ GFC_DTYPE_COPY_SETRANK(ret,source,rrank);
dim = 0;
rs = 1;
for (n = 0; n < rrank; n++)
diff --git a/libgfortran/generated/spread_r16.c b/libgfortran/generated/spread_r16.c
index 9d9cb8c..df0007f 100644
--- a/libgfortran/generated/spread_r16.c
+++ b/libgfortran/generated/spread_r16.c
@@ -72,7 +72,7 @@ spread_r16 (gfc_array_r16 *ret, const gfc_array_r16 *source,
/* The front end has signalled that we need to populate the
return array descriptor. */
- ret->dtype = (source->dtype & ~GFC_DTYPE_RANK_MASK) | rrank;
+ GFC_DTYPE_COPY_SETRANK(ret,source,rrank);
dim = 0;
rs = 1;
for (n = 0; n < rrank; n++)
diff --git a/libgfortran/generated/spread_r4.c b/libgfortran/generated/spread_r4.c
index 96d1587..e64bf71 100644
--- a/libgfortran/generated/spread_r4.c
+++ b/libgfortran/generated/spread_r4.c
@@ -72,7 +72,7 @@ spread_r4 (gfc_array_r4 *ret, const gfc_array_r4 *source,
/* The front end has signalled that we need to populate the
return array descriptor. */
- ret->dtype = (source->dtype & ~GFC_DTYPE_RANK_MASK) | rrank;
+ GFC_DTYPE_COPY_SETRANK(ret,source,rrank);
dim = 0;
rs = 1;
for (n = 0; n < rrank; n++)
diff --git a/libgfortran/generated/spread_r8.c b/libgfortran/generated/spread_r8.c
index bba49c5..ca5b2f2 100644
--- a/libgfortran/generated/spread_r8.c
+++ b/libgfortran/generated/spread_r8.c
@@ -72,7 +72,7 @@ spread_r8 (gfc_array_r8 *ret, const gfc_array_r8 *source,
/* The front end has signalled that we need to populate the
return array descriptor. */
- ret->dtype = (source->dtype & ~GFC_DTYPE_RANK_MASK) | rrank;
+ GFC_DTYPE_COPY_SETRANK(ret,source,rrank);
dim = 0;
rs = 1;
for (n = 0; n < rrank; n++)
diff --git a/libgfortran/generated/sum_c10.c b/libgfortran/generated/sum_c10.c
index 3603eb0..9083745 100644
--- a/libgfortran/generated/sum_c10.c
+++ b/libgfortran/generated/sum_c10.c
@@ -100,7 +100,7 @@ sum_c10 (gfc_array_c10 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -287,7 +287,7 @@ msum_c10 (gfc_array_c10 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -446,7 +446,7 @@ ssum_c10 (gfc_array_c10 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/sum_c16.c b/libgfortran/generated/sum_c16.c
index a886940..15c2d6b 100644
--- a/libgfortran/generated/sum_c16.c
+++ b/libgfortran/generated/sum_c16.c
@@ -100,7 +100,7 @@ sum_c16 (gfc_array_c16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -287,7 +287,7 @@ msum_c16 (gfc_array_c16 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -446,7 +446,7 @@ ssum_c16 (gfc_array_c16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/sum_c4.c b/libgfortran/generated/sum_c4.c
index 1d0015c..654ed60 100644
--- a/libgfortran/generated/sum_c4.c
+++ b/libgfortran/generated/sum_c4.c
@@ -100,7 +100,7 @@ sum_c4 (gfc_array_c4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -287,7 +287,7 @@ msum_c4 (gfc_array_c4 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -446,7 +446,7 @@ ssum_c4 (gfc_array_c4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/sum_c8.c b/libgfortran/generated/sum_c8.c
index 54a1626..1313c5d 100644
--- a/libgfortran/generated/sum_c8.c
+++ b/libgfortran/generated/sum_c8.c
@@ -100,7 +100,7 @@ sum_c8 (gfc_array_c8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -287,7 +287,7 @@ msum_c8 (gfc_array_c8 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -446,7 +446,7 @@ ssum_c8 (gfc_array_c8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/sum_i1.c b/libgfortran/generated/sum_i1.c
index 74908b9..a6d3043 100644
--- a/libgfortran/generated/sum_i1.c
+++ b/libgfortran/generated/sum_i1.c
@@ -100,7 +100,7 @@ sum_i1 (gfc_array_i1 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -287,7 +287,7 @@ msum_i1 (gfc_array_i1 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -446,7 +446,7 @@ ssum_i1 (gfc_array_i1 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/sum_i16.c b/libgfortran/generated/sum_i16.c
index d490c7e..d8f80b0 100644
--- a/libgfortran/generated/sum_i16.c
+++ b/libgfortran/generated/sum_i16.c
@@ -100,7 +100,7 @@ sum_i16 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -287,7 +287,7 @@ msum_i16 (gfc_array_i16 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -446,7 +446,7 @@ ssum_i16 (gfc_array_i16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/sum_i2.c b/libgfortran/generated/sum_i2.c
index d5a91e9..49209c4 100644
--- a/libgfortran/generated/sum_i2.c
+++ b/libgfortran/generated/sum_i2.c
@@ -100,7 +100,7 @@ sum_i2 (gfc_array_i2 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -287,7 +287,7 @@ msum_i2 (gfc_array_i2 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -446,7 +446,7 @@ ssum_i2 (gfc_array_i2 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/sum_i4.c b/libgfortran/generated/sum_i4.c
index 4eba054..39954d1 100644
--- a/libgfortran/generated/sum_i4.c
+++ b/libgfortran/generated/sum_i4.c
@@ -100,7 +100,7 @@ sum_i4 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -287,7 +287,7 @@ msum_i4 (gfc_array_i4 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -446,7 +446,7 @@ ssum_i4 (gfc_array_i4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/sum_i8.c b/libgfortran/generated/sum_i8.c
index 203c83c..6fb7d9b 100644
--- a/libgfortran/generated/sum_i8.c
+++ b/libgfortran/generated/sum_i8.c
@@ -100,7 +100,7 @@ sum_i8 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -287,7 +287,7 @@ msum_i8 (gfc_array_i8 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -446,7 +446,7 @@ ssum_i8 (gfc_array_i8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/sum_r10.c b/libgfortran/generated/sum_r10.c
index ba28045..dcafdec8 100644
--- a/libgfortran/generated/sum_r10.c
+++ b/libgfortran/generated/sum_r10.c
@@ -100,7 +100,7 @@ sum_r10 (gfc_array_r10 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -287,7 +287,7 @@ msum_r10 (gfc_array_r10 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -446,7 +446,7 @@ ssum_r10 (gfc_array_r10 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/sum_r16.c b/libgfortran/generated/sum_r16.c
index 593711c..e230e61 100644
--- a/libgfortran/generated/sum_r16.c
+++ b/libgfortran/generated/sum_r16.c
@@ -100,7 +100,7 @@ sum_r16 (gfc_array_r16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -287,7 +287,7 @@ msum_r16 (gfc_array_r16 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -446,7 +446,7 @@ ssum_r16 (gfc_array_r16 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/sum_r4.c b/libgfortran/generated/sum_r4.c
index 24d4bfd..a2bca49 100644
--- a/libgfortran/generated/sum_r4.c
+++ b/libgfortran/generated/sum_r4.c
@@ -100,7 +100,7 @@ sum_r4 (gfc_array_r4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -287,7 +287,7 @@ msum_r4 (gfc_array_r4 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -446,7 +446,7 @@ ssum_r4 (gfc_array_r4 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/generated/sum_r8.c b/libgfortran/generated/sum_r8.c
index 24b882e..7c2836e 100644
--- a/libgfortran/generated/sum_r8.c
+++ b/libgfortran/generated/sum_r8.c
@@ -100,7 +100,7 @@ sum_r8 (gfc_array_r8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -287,7 +287,7 @@ msum_r8 (gfc_array_r8 * const restrict retarray,
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -446,7 +446,7 @@ ssum_r8 (gfc_array_r8 * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/intrinsics/cshift0.c b/libgfortran/intrinsics/cshift0.c
index 8063d86..b07da9c 100644
--- a/libgfortran/intrinsics/cshift0.c
+++ b/libgfortran/intrinsics/cshift0.c
@@ -61,7 +61,7 @@ cshift0 (gfc_array_char * ret, const gfc_array_char * array,
int i;
ret->offset = 0;
- ret->dtype = array->dtype;
+ GFC_DTYPE_COPY(ret,array);
for (i = 0; i < GFC_DESCRIPTOR_RANK (array); i++)
{
index_type ub, str;
diff --git a/libgfortran/intrinsics/eoshift0.c b/libgfortran/intrinsics/eoshift0.c
index 6500b1d..c14b485 100644
--- a/libgfortran/intrinsics/eoshift0.c
+++ b/libgfortran/intrinsics/eoshift0.c
@@ -66,7 +66,7 @@ eoshift0 (gfc_array_char * ret, const gfc_array_char * array,
int i;
ret->offset = 0;
- ret->dtype = array->dtype;
+ GFC_DTYPE_COPY(ret,array);
for (i = 0; i < GFC_DESCRIPTOR_RANK (array); i++)
{
index_type ub, str;
diff --git a/libgfortran/intrinsics/eoshift2.c b/libgfortran/intrinsics/eoshift2.c
index 64a9c22..fc532a5 100644
--- a/libgfortran/intrinsics/eoshift2.c
+++ b/libgfortran/intrinsics/eoshift2.c
@@ -72,7 +72,7 @@ eoshift2 (gfc_array_char *ret, const gfc_array_char *array,
int i;
ret->offset = 0;
- ret->dtype = array->dtype;
+ GFC_DTYPE_COPY(ret,array);
/* xmallocarray allocates a single byte for zero size. */
ret->base_addr = xmallocarray (arraysize, size);
diff --git a/libgfortran/intrinsics/move_alloc.c b/libgfortran/intrinsics/move_alloc.c
index aa93c47..c8a0caa 100644
--- a/libgfortran/intrinsics/move_alloc.c
+++ b/libgfortran/intrinsics/move_alloc.c
@@ -46,7 +46,7 @@ move_alloc (gfc_array_char * from, gfc_array_char * to)
}
to->offset = from->offset;
- to->dtype = from->dtype;
+ GFC_DTYPE_COPY(to,from);
to->base_addr = from->base_addr;
from->base_addr = NULL;
}
diff --git a/libgfortran/intrinsics/reshape_generic.c b/libgfortran/intrinsics/reshape_generic.c
index a858e29..94e45f5 100644
--- a/libgfortran/intrinsics/reshape_generic.c
+++ b/libgfortran/intrinsics/reshape_generic.c
@@ -107,7 +107,7 @@ reshape_internal (parray *ret, parray *source, shape_type *shape,
ret->base_addr = xmallocarray (alloc_size, size);
- ret->dtype = (source->dtype & ~GFC_DTYPE_RANK_MASK) | rdim;
+ GFC_DTYPE_COPY_SETRANK(ret,source,rdim);
}
if (shape_empty)
diff --git a/libgfortran/intrinsics/spread_generic.c b/libgfortran/intrinsics/spread_generic.c
index 0f28e35..83ecc1d 100644
--- a/libgfortran/intrinsics/spread_generic.c
+++ b/libgfortran/intrinsics/spread_generic.c
@@ -71,7 +71,7 @@ spread_internal (gfc_array_char *ret, const gfc_array_char *source,
size_t ub, stride;
- ret->dtype = (source->dtype & ~GFC_DTYPE_RANK_MASK) | rrank;
+ GFC_DTYPE_COPY_SETRANK(ret,source,rrank);
dim = 0;
rs = 1;
for (n = 0; n < rrank; n++)
@@ -464,7 +464,7 @@ spread_scalar (gfc_array_char *ret, const char *source,
{
index_type type_size;
- if (!ret->dtype)
+ if (GFC_DTYPE_IS_UNSET(ret))
runtime_error ("return array missing descriptor in spread()");
type_size = GFC_DTYPE_TYPE_SIZE(ret);
@@ -625,7 +625,7 @@ spread_char_scalar (gfc_array_char *ret,
const index_type *pncopies,
GFC_INTEGER_4 source_length __attribute__((unused)))
{
- if (!ret->dtype)
+ if (GFC_DTYPE_IS_UNSET(ret))
runtime_error ("return array missing descriptor in spread()");
spread_internal_scalar (ret, source, along, pncopies);
}
@@ -643,7 +643,7 @@ spread_char4_scalar (gfc_array_char *ret,
const index_type *pncopies,
GFC_INTEGER_4 source_length __attribute__((unused)))
{
- if (!ret->dtype)
+ if (GFC_DTYPE_IS_UNSET(ret))
runtime_error ("return array missing descriptor in spread()");
spread_internal_scalar (ret, source, along, pncopies);
diff --git a/libgfortran/intrinsics/unpack_generic.c b/libgfortran/intrinsics/unpack_generic.c
index 2dfa2d6..86e1253 100644
--- a/libgfortran/intrinsics/unpack_generic.c
+++ b/libgfortran/intrinsics/unpack_generic.c
@@ -578,7 +578,7 @@ unpack0 (gfc_array_char *ret, const gfc_array_char *vector,
}
memset (&tmp, 0, sizeof (tmp));
- tmp.dtype = 0;
+ GFC_DTYPE_CLEAR(&tmp);
tmp.base_addr = field;
unpack_internal (ret, vector, mask, &tmp, GFC_DESCRIPTOR_SIZE (vector));
}
@@ -602,7 +602,7 @@ unpack0_char (gfc_array_char *ret,
unpack_bounds (ret, vector, mask, NULL);
memset (&tmp, 0, sizeof (tmp));
- tmp.dtype = 0;
+ GFC_DTYPE_CLEAR(&tmp);
tmp.base_addr = field;
unpack_internal (ret, vector, mask, &tmp, vector_length);
}
@@ -626,7 +626,7 @@ unpack0_char4 (gfc_array_char *ret,
unpack_bounds (ret, vector, mask, NULL);
memset (&tmp, 0, sizeof (tmp));
- tmp.dtype = 0;
+ GFC_DTYPE_CLEAR(&tmp);
tmp.base_addr = field;
unpack_internal (ret, vector, mask, &tmp,
vector_length * sizeof (gfc_char4_t));
diff --git a/libgfortran/libgfortran.h b/libgfortran/libgfortran.h
index 84df19e..4c643b7 100644
--- a/libgfortran/libgfortran.h
+++ b/libgfortran/libgfortran.h
@@ -413,6 +413,17 @@ typedef gfc_array_i4 gfc_array_s4;
#define GFC_DTYPE_TYPE_SIZE(desc) ((desc)->dtype & GFC_DTYPE_TYPE_SIZE_MASK)
+/* Macros to set size and type information. */
+
+#define GFC_DTYPE_COPY(a,b) do { (a)->dtype = (b)->dtype; } while(0)
+#define GFC_DTYPE_COPY_SETRANK(a,b,n) \
+ do { \
+ (a)->dtype = (((b)->dtype & ~GFC_DTYPE_RANK_MASK) | n ); \
+ } while (0)
+
+#define GFC_DTYPE_IS_UNSET(a) (unlikely((a)->dtype == 0))
+#define GFC_DTYPE_CLEAR(a) do { (a)->dtype = 0; } while(0)
+
#define GFC_DTYPE_INTEGER_1 ((BT_INTEGER << GFC_DTYPE_TYPE_SHIFT) \
| (sizeof(GFC_INTEGER_1) << GFC_DTYPE_SIZE_SHIFT))
#define GFC_DTYPE_INTEGER_2 ((BT_INTEGER << GFC_DTYPE_TYPE_SHIFT) \
diff --git a/libgfortran/m4/cshift1.m4 b/libgfortran/m4/cshift1.m4
index 6c53a48..07241a5 100644
--- a/libgfortran/m4/cshift1.m4
+++ b/libgfortran/m4/cshift1.m4
@@ -82,7 +82,7 @@ cshift1 (gfc_array_char * const restrict ret,
ret->base_addr = xmallocarray (arraysize, size);
ret->offset = 0;
- ret->dtype = array->dtype;
+ GFC_DTYPE_COPY(ret,array);
for (i = 0; i < GFC_DESCRIPTOR_RANK (array); i++)
{
index_type ub, str;
diff --git a/libgfortran/m4/eoshift1.m4 b/libgfortran/m4/eoshift1.m4
index de15142..aab46fd 100644
--- a/libgfortran/m4/eoshift1.m4
+++ b/libgfortran/m4/eoshift1.m4
@@ -88,7 +88,7 @@ eoshift1 (gfc_array_char * const restrict ret,
int i;
ret->offset = 0;
- ret->dtype = array->dtype;
+ GFC_DTYPE_COPY(ret,array);
for (i = 0; i < GFC_DESCRIPTOR_RANK (array); i++)
{
index_type ub, str;
diff --git a/libgfortran/m4/eoshift3.m4 b/libgfortran/m4/eoshift3.m4
index e3ac06a..a807749 100644
--- a/libgfortran/m4/eoshift3.m4
+++ b/libgfortran/m4/eoshift3.m4
@@ -90,7 +90,7 @@ eoshift3 (gfc_array_char * const restrict ret,
ret->base_addr = xmallocarray (arraysize, size);
ret->offset = 0;
- ret->dtype = array->dtype;
+ GFC_DTYPE_COPY(ret,array);
for (i = 0; i < GFC_DESCRIPTOR_RANK (array); i++)
{
index_type ub, str;
diff --git a/libgfortran/m4/iforeach-s.m4 b/libgfortran/m4/iforeach-s.m4
index 39868dd..c62a1f7 100644
--- a/libgfortran/m4/iforeach-s.m4
+++ b/libgfortran/m4/iforeach-s.m4
@@ -37,7 +37,7 @@ name`'rtype_qual`_'atype_code (rtype * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (rtype_name));
}
@@ -140,7 +140,7 @@ void
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (rtype_name));
}
@@ -271,7 +271,7 @@ void
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (rtype_name));
}
diff --git a/libgfortran/m4/iforeach.m4 b/libgfortran/m4/iforeach.m4
index e7521e6..2b9e7dd 100644
--- a/libgfortran/m4/iforeach.m4
+++ b/libgfortran/m4/iforeach.m4
@@ -28,7 +28,7 @@ name`'rtype_qual`_'atype_code (rtype * const restrict retarray,
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (rtype_name));
}
@@ -131,7 +131,7 @@ void
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank - 1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (rtype_name));
}
@@ -262,7 +262,7 @@ void
if (retarray->base_addr == NULL)
{
GFC_DIMENSION_SET(retarray->dim[0], 0, rank-1, 1);
- retarray->dtype = (retarray->dtype & ~GFC_DTYPE_RANK_MASK) | 1;
+ GFC_DTYPE_COPY_SETRANK(retarray,retarray,1);
retarray->offset = 0;
retarray->base_addr = xmallocarray (rank, sizeof (rtype_name));
}
diff --git a/libgfortran/m4/ifunction-s.m4 b/libgfortran/m4/ifunction-s.m4
index 93ca694..0f0c28f 100644
--- a/libgfortran/m4/ifunction-s.m4
+++ b/libgfortran/m4/ifunction-s.m4
@@ -101,7 +101,7 @@ name`'rtype_qual`_'atype_code (rtype * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -288,7 +288,7 @@ void
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -446,7 +446,7 @@ void
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/m4/ifunction-s2.m4 b/libgfortran/m4/ifunction-s2.m4
index 4eb0908..27c2236 100644
--- a/libgfortran/m4/ifunction-s2.m4
+++ b/libgfortran/m4/ifunction-s2.m4
@@ -104,7 +104,7 @@ name`'rtype_qual`_'atype_code (rtype * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1]
* string_len;
@@ -296,7 +296,7 @@ void
* string_len;
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -457,7 +457,7 @@ void
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1]
* string_len;
diff --git a/libgfortran/m4/ifunction.m4 b/libgfortran/m4/ifunction.m4
index 7777a0c..fa10a8b 100644
--- a/libgfortran/m4/ifunction.m4
+++ b/libgfortran/m4/ifunction.m4
@@ -90,7 +90,7 @@ name`'rtype_qual`_'atype_code (rtype * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
@@ -277,7 +277,7 @@ void
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
if (alloc_size == 0)
{
@@ -435,7 +435,7 @@ void
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/m4/ifunction_logical.m4 b/libgfortran/m4/ifunction_logical.m4
index fda8812..d58c2a0 100644
--- a/libgfortran/m4/ifunction_logical.m4
+++ b/libgfortran/m4/ifunction_logical.m4
@@ -87,7 +87,7 @@ name`'rtype_qual`_'atype_code (rtype * const restrict retarray,
}
retarray->offset = 0;
- retarray->dtype = (array->dtype & ~GFC_DTYPE_RANK_MASK) | rank;
+ GFC_DTYPE_COPY_SETRANK(retarray,array,rank);
alloc_size = GFC_DESCRIPTOR_STRIDE(retarray,rank-1) * extent[rank-1];
diff --git a/libgfortran/m4/reshape.m4 b/libgfortran/m4/reshape.m4
index 67ad094..79cbca3 100644
--- a/libgfortran/m4/reshape.m4
+++ b/libgfortran/m4/reshape.m4
@@ -122,7 +122,7 @@ reshape_'rtype_ccode` ('rtype` * const restrict ret,
alloc_size = rs;
ret->base_addr = xmallocarray (alloc_size, sizeof ('rtype_name`));
- ret->dtype = (source->dtype & ~GFC_DTYPE_RANK_MASK) | rdim;
+ GFC_DTYPE_COPY_SETRANK(ret,source,rdim);
}
if (shape_empty)
diff --git a/libgfortran/m4/spread.m4 b/libgfortran/m4/spread.m4
index c4ac6e2..e8c52aa 100644
--- a/libgfortran/m4/spread.m4
+++ b/libgfortran/m4/spread.m4
@@ -73,7 +73,7 @@ spread_'rtype_code` ('rtype` *ret, const 'rtype` *source,
/* The front end has signalled that we need to populate the
return array descriptor. */
- ret->dtype = (source->dtype & ~GFC_DTYPE_RANK_MASK) | rrank;
+ GFC_DTYPE_COPY_SETRANK(ret,source,rrank);
dim = 0;
rs = 1;
for (n = 0; n < rrank; n++)