7 Commits
Author | SHA1 | Message | Date |
---|---|---|---|
|
80ee04b982 |
re PR fortran/30321 (program crash for SUM applied to zero-size array)
2006-12-30 Thomas Koenig <Thomas.Koenig@online.de> PR libfortran/30321 * m4/ifunction.m4 (name`'rtype_qual`_'atype_code): Check for extents < 0 for zero-sized arrays. If no retarray has been specified and the size is zero, return early. (`m'name`'rtype_qual`_'atype_code): Likewise. * generated/all_l16.c: Regenerated. * generated/all_l4.c: Regenerated. * generated/all_l8.c: Regenerated. * generated/any_l16.c: Regenerated. * generated/any_l4.c: Regenerated. * generated/any_l8.c: Regenerated. * generated/count_16_l16.c: Regenerated. * generated/count_16_l4.c: Regenerated. * generated/count_16_l8.c: Regenerated. * generated/count_4_l16.c: Regenerated. * generated/count_4_l4.c: Regenerated. * generated/count_4_l8.c: Regenerated. * generated/count_8_l16.c: Regenerated. * generated/count_8_l4.c: Regenerated. * generated/count_8_l8.c: Regenerated. * generated/cshift1_16.c: Regenerated. * generated/cshift1_4.c: Regenerated. * generated/cshift1_8.c: Regenerated. * generated/maxloc1_16_i16.c: Regenerated. * generated/maxloc1_16_i4.c: Regenerated. * generated/maxloc1_16_i8.c: Regenerated. * generated/maxloc1_16_r10.c: Regenerated. * generated/maxloc1_16_r16.c: Regenerated. * generated/maxloc1_16_r4.c: Regenerated. * generated/maxloc1_16_r8.c: Regenerated. * generated/maxloc1_4_i16.c: Regenerated. * generated/maxloc1_4_i4.c: Regenerated. * generated/maxloc1_4_i8.c: Regenerated. * generated/maxloc1_4_r10.c: Regenerated. * generated/maxloc1_4_r16.c: Regenerated. * generated/maxloc1_4_r4.c: Regenerated. * generated/maxloc1_4_r8.c: Regenerated. * generated/maxloc1_8_i16.c: Regenerated. * generated/maxloc1_8_i4.c: Regenerated. * generated/maxloc1_8_i8.c: Regenerated. * generated/maxloc1_8_r10.c: Regenerated. * generated/maxloc1_8_r16.c: Regenerated. * generated/maxloc1_8_r4.c: Regenerated. * generated/maxloc1_8_r8.c: Regenerated. * generated/maxval_i16.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/minloc1_16_i16.c: Regenerated. * generated/minloc1_16_i4.c: Regenerated. * generated/minloc1_16_i8.c: Regenerated. * generated/minloc1_16_r10.c: Regenerated. * generated/minloc1_16_r16.c: Regenerated. * generated/minloc1_16_r4.c: Regenerated. * generated/minloc1_16_r8.c: Regenerated. * generated/minloc1_4_i16.c: Regenerated. * generated/minloc1_4_i4.c: Regenerated. * generated/minloc1_4_i8.c: Regenerated. * generated/minloc1_4_r10.c: Regenerated. * generated/minloc1_4_r16.c: Regenerated. * generated/minloc1_4_r4.c: Regenerated. * generated/minloc1_4_r8.c: Regenerated. * generated/minloc1_8_i16.c: Regenerated. * generated/minloc1_8_i4.c: Regenerated. * generated/minloc1_8_i8.c: Regenerated. * generated/minloc1_8_r10.c: Regenerated. * generated/minloc1_8_r16.c: Regenerated. * generated/minloc1_8_r4.c: Regenerated. * generated/minloc1_8_r8.c: Regenerated. * generated/minval_i16.c: Regenerated. * generated/minval_i4.c: Regenerated. * generated/minval_i8.c: Regenerated. * generated/minval_r10.c: Regenerated. * generated/minval_r16.c: Regenerated. * generated/minval_r4.c: Regenerated. * generated/minval_r8.c: Regenerated. * generated/product_c10.c: Regenerated. * generated/product_c16.c: Regenerated. * generated/product_c4.c: Regenerated. * generated/product_c8.c: Regenerated. * generated/product_i16.c: Regenerated. * generated/product_i4.c: Regenerated. * generated/product_i8.c: Regenerated. * generated/product_r10.c: Regenerated. * generated/product_r16.c: Regenerated. * generated/product_r4.c: Regenerated. * generated/product_r8.c: Regenerated. * generated/sum_c10.c: Regenerated. * generated/sum_c16.c: Regenerated. * generated/sum_c4.c: Regenerated. * generated/sum_c8.c: Regenerated. * generated/sum_i16.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. 2006-12-30 Thomas Koenig <Thomas.Koenig@online.de> PR libfortran/30321 * gfortran.dg/sum_zero_array_1.f90: New test. From-SVN: r120287 |
|
|
5d7adf7a15 |
minval_r8.c: Regenerate.
* generated/minval_r8.c: Regenerate. * generated/maxloc1_4_r8.c: Regenerate. * generated/minloc1_16_r16.c: Regenerate. * generated/sum_i8.c: Regenerate. * generated/eoshift3_4.c: Regenerate. * generated/any_l16.c: Regenerate. * generated/eoshift1_8.c: Regenerate. * generated/reshape_r16.c: Regenerate. * generated/product_r4.c: Regenerate. * generated/maxloc1_8_i4.c: Regenerate. * generated/maxloc0_4_r4.c: Regenerate. * generated/in_unpack_i8.c: Regenerate. * generated/minloc0_4_r16.c: Regenerate. * generated/reshape_c4.c: Regenerate. * generated/maxloc0_4_r16.c: Regenerate. * generated/minloc1_8_r16.c: Regenerate. * generated/maxloc1_8_r16.c: Regenerate. * generated/in_unpack_i16.c: Regenerate. * generated/maxloc0_8_i8.c: Regenerate. * generated/sum_r16.c: Regenerate. * generated/minloc1_4_r8.c: Regenerate. * generated/maxloc1_16_r16.c: Regenerate. * generated/minloc1_16_i4.c: Regenerate. * generated/maxloc1_16_i4.c: Regenerate. * generated/minloc0_16_i8.c: Regenerate. * generated/maxloc0_16_i8.c: Regenerate. * generated/maxval_r16.c: Regenerate. * generated/count_16_l16.c: Regenerate. * generated/count_8_l8.c: Regenerate. * generated/product_c10.c: Regenerate. * generated/minloc1_8_i4.c: Regenerate. * generated/minloc0_16_i16.c: Regenerate. * generated/eoshift1_16.c: Regenerate. * generated/minloc0_4_r4.c: Regenerate. * generated/product_c4.c: Regenerate. * generated/sum_r4.c: Regenerate. * generated/in_pack_c16.c: Regenerate. * generated/reshape_i4.c: Regenerate. * generated/minloc0_8_i8.c: Regenerate. * generated/minloc1_16_r10.c: Regenerate. * generated/in_pack_c4.c: Regenerate. * generated/all_l16.c: Regenerate. * generated/reshape_c16.c: Regenerate. * generated/maxloc1_8_r8.c: Regenerate. * generated/minval_i16.c: Regenerate. * generated/reshape_r10.c: Regenerate. * generated/maxval_i4.c: Regenerate. * generated/any_l4.c: Regenerate. * generated/minval_i8.c: Regenerate. * generated/maxloc1_4_i8.c: Regenerate. * generated/maxloc0_16_i16.c: Regenerate. * generated/maxloc0_8_r4.c: Regenerate. * generated/minloc1_4_i16.c: Regenerate. * generated/minloc0_4_r10.c: Regenerate. * generated/maxloc1_4_i16.c: Regenerate. * generated/minloc0_8_i16.c: Regenerate. * generated/maxloc0_4_r10.c: Regenerate. * generated/maxloc0_8_i16.c: Regenerate. * generated/minloc1_8_r10.c: Regenerate. * generated/product_i4.c: Regenerate. * generated/minloc0_16_r4.c: Regenerate. * generated/sum_c16.c: Regenerate. * generated/maxloc1_8_r10.c: Regenerate. * generated/maxloc0_16_r4.c: Regenerate. * generated/minloc1_16_r8.c: Regenerate. * generated/maxloc0_4_i4.c: Regenerate. * generated/maxloc1_16_r8.c: Regenerate. * generated/cshift1_4.c: Regenerate. * generated/sum_r10.c: Regenerate. * generated/sum_c4.c: Regenerate. * generated/maxloc1_16_r10.c: Regenerate. * generated/count_4_l16.c: Regenerate. * generated/in_pack_i4.c: Regenerate. * generated/minloc1_8_r8.c: Regenerate. * generated/count_4_l4.c: Regenerate. * generated/maxval_r10.c: Regenerate. * generated/minloc1_4_i8.c: Regenerate. * generated/in_unpack_c4.c: Regenerate. * generated/minloc0_8_r4.c: Regenerate. * generated/product_i16.c: Regenerate. * generated/minloc0_16_r16.c: Regenerate. * generated/reshape_r8.c: Regenerate. * generated/all_l4.c: Regenerate. * generated/in_pack_c10.c: Regenerate. * generated/minloc0_4_i4.c: Regenerate. * generated/reshape_c10.c: Regenerate. * generated/minval_r4.c: Regenerate. * generated/maxloc1_4_r4.c: Regenerate. * generated/sum_i4.c: Regenerate. * generated/count_16_l8.c: Regenerate. * generated/maxval_r8.c: Regenerate. * generated/eoshift1_4.c: Regenerate. * generated/eoshift3_8.c: Regenerate. * generated/minval_r16.c: Regenerate. * generated/product_r8.c: Regenerate. * generated/maxloc1_8_i8.c: Regenerate. * generated/maxloc0_4_r8.c: Regenerate. * generated/maxloc0_16_r16.c: Regenerate. * generated/in_unpack_i4.c: Regenerate. * generated/sum_c10.c: Regenerate. * generated/minloc1_4_r16.c: Regenerate. * generated/maxloc1_4_r16.c: Regenerate. * generated/in_unpack_c16.c: Regenerate. * generated/minloc0_8_r16.c: Regenerate. * generated/reshape_c8.c: Regenerate. * generated/maxloc0_8_r16.c: Regenerate. * generated/maxloc0_8_i4.c: Regenerate. * generated/minloc1_4_r4.c: Regenerate. * generated/minloc0_16_i4.c: Regenerate. * generated/maxloc0_16_i4.c: Regenerate. * generated/minloc1_16_i8.c: Regenerate. * generated/maxloc1_16_i8.c: Regenerate. * generated/count_8_l4.c: Regenerate. * generated/minloc0_16_r10.c: Regenerate. * generated/minloc1_8_i8.c: Regenerate. * generated/minloc0_4_r8.c: Regenerate. * generated/product_r16.c: Regenerate. * generated/product_c8.c: Regenerate. * generated/sum_r8.c: Regenerate. * generated/in_pack_i16.c: Regenerate. * generated/minloc0_8_i4.c: Regenerate. * generated/minloc1_16_i16.c: Regenerate. * generated/reshape_i8.c: Regenerate. * generated/in_pack_c8.c: Regenerate. * generated/maxloc1_8_r4.c: Regenerate. * generated/reshape_i16.c: Regenerate. * generated/minval_r10.c: Regenerate. * generated/minval_i4.c: Regenerate. * generated/maxloc1_4_i4.c: Regenerate. * generated/maxval_i8.c: Regenerate. * generated/eoshift3_16.c: Regenerate. * generated/any_l8.c: Regenerate. * generated/maxloc0_16_r10.c: Regenerate. * generated/minloc0_4_i16.c: Regenerate. * generated/maxloc0_8_r8.c: Regenerate. * generated/maxloc0_4_i16.c: Regenerate. * generated/minloc1_4_r10.c: Regenerate. * generated/minloc1_8_i16.c: Regenerate. * generated/maxloc1_4_r10.c: Regenerate. * generated/minloc0_8_r10.c: Regenerate. * generated/maxloc1_8_i16.c: Regenerate. * generated/in_unpack_c10.c: Regenerate. * generated/maxloc0_8_r10.c: Regenerate. * generated/minloc1_16_r4.c: Regenerate. * generated/maxloc1_16_r4.c: Regenerate. * generated/minloc0_16_r8.c: Regenerate. * generated/product_i8.c: Regenerate. * generated/maxloc0_16_r8.c: Regenerate. * generated/sum_i16.c: Regenerate. * generated/maxloc0_4_i8.c: Regenerate. * generated/cshift1_8.c: Regenerate. * generated/maxloc1_16_i16.c: Regenerate. * generated/minloc1_8_r4.c: Regenerate. * generated/sum_c8.c: Regenerate. * generated/count_8_l16.c: Regenerate. * generated/in_pack_i8.c: Regenerate. * generated/maxval_i16.c: Regenerate. * generated/count_4_l8.c: Regenerate. * generated/minloc1_4_i4.c: Regenerate. * generated/product_c16.c: Regenerate. * generated/reshape_r4.c: Regenerate. * generated/minloc0_8_r8.c: Regenerate. * generated/in_unpack_c8.c: Regenerate. * generated/product_r10.c: Regenerate. * generated/cshift1_16.c: Regenerate. * generated/all_l8.c: Regenerate. * generated/minloc0_4_i8.c: Regenerate. * generated/maxval_r4.c: Regenerate. * generated/count_16_l4.c: Regenerate. From-SVN: r117904 |
|
|
6ff24d45dc |
in_pack.m4: Add TODO comment about detecting temporaries...
2006-06-06 Janne Blomqvist <jb@gcc.gnu.org> * m4/in_pack.m4: Add TODO comment about detecting temporaries, remove test for stride 0, update copyright year. * m4/transpose.m4: Remove test for stride 0, update copyright year. * m4/iforeach.m4: Likewise. * m4/shape.m4: Likewise. * m4/in_unpack.m4: Likewise. * m4/reshape.m4: Likewise. * m4/ifunction.m4: Likewise. * m4/matmul.m4: Likewise. * m4/matmull.m4: Likewise. * intrinsics/etime.c: Likewise. * intrinsics/transpose_generic.c: Likewise. * intrinsics/spread_generic.c: Likewise. * intrinsics/stat.c: Likewise. * intrinsics/reshape_generic.c: Likewise. * intrinsics/random.c: Likewise. * generated/*: Regenerated from above changed m4 files. From-SVN: r114424 |
|
|
97a6203866 |
re PR fortran/20935 (failed assertion for maxloc(n, mask=.true.))
2006-03-20 Thomas Koenig <Thomas.Koenig@online.de> PR fortran/20935 * iresolve.c (gfc_resolve_maxloc): If mask is scalar, prefix the function name with an "s". If the mask is scalar or if its kind is smaller than gfc_default_logical_kind, coerce it to default kind. (gfc_resolve_maxval): Likewise. (gfc_resolve_minloc): Likewise. (gfc_resolve_minval): Likewise. (gfc_resolve_product): Likewise. (gfc_resolve_sum): Likewise. 2006-03-20 Thomas Koenig <Thomas.Koenig@online.de> PR fortran/20935 * m4/iforeach.m4: Add SCALAR_FOREACH_FUNCTION macro. * m4/ifunction.m4: Add SCALAR_ARRAY_FUNCTION macro. * m4/minloc0.m4: Use SCALAR_FOREACH_FUNCTION. * m4/minloc1.m4: Use SCALAR_ARRAY_FUNCTION. * m4/maxloc0.m4: Use SCALAR_FOREACH_FUNCTION. * m4/maxloc1.m4: Use SCALAR_ARRAY_FUNCTION. * m4/minval.m4: Likewise. * m4/maxval.m4: Likewise. * m4/product.m4: Likewise. * m4/sum.m4: Likewise. * minloc0_16_i16.c : Regenerated. * minloc0_16_i4.c : Regenerated. * minloc0_16_i8.c : Regenerated. * minloc0_16_r10.c : Regenerated. * minloc0_16_r16.c : Regenerated. * minloc0_16_r4.c : Regenerated. * minloc0_16_r8.c : Regenerated. * minloc0_4_i16.c : Regenerated. * minloc0_4_i4.c : Regenerated. * minloc0_4_i8.c : Regenerated. * minloc0_4_r10.c : Regenerated. * minloc0_4_r16.c : Regenerated. * minloc0_4_r4.c : Regenerated. * minloc0_4_r8.c : Regenerated. * minloc0_8_i16.c : Regenerated. * minloc0_8_i4.c : Regenerated. * minloc0_8_i8.c : Regenerated. * minloc0_8_r10.c : Regenerated. * minloc0_8_r16.c : Regenerated. * minloc0_8_r4.c : Regenerated. * minloc0_8_r8.c : Regenerated. * minloc1_16_i16.c : Regenerated. * minloc1_16_i4.c : Regenerated. * minloc1_16_i8.c : Regenerated. * minloc1_16_r10.c : Regenerated. * minloc1_16_r16.c : Regenerated. * minloc1_16_r4.c : Regenerated. * minloc1_16_r8.c : Regenerated. * minloc1_4_i16.c : Regenerated. * minloc1_4_i4.c : Regenerated. * minloc1_4_i8.c : Regenerated. * minloc1_4_r10.c : Regenerated. * minloc1_4_r16.c : Regenerated. * minloc1_4_r4.c : Regenerated. * minloc1_4_r8.c : Regenerated. * minloc1_8_i16.c : Regenerated. * minloc1_8_i4.c : Regenerated. * minloc1_8_i8.c : Regenerated. * minloc1_8_r10.c : Regenerated. * minloc1_8_r16.c : Regenerated. * minloc1_8_r4.c : Regenerated. * minloc1_8_r8.c : Regenerated. * maxloc0_16_i16.c : Regenerated. * maxloc0_16_i4.c : Regenerated. * maxloc0_16_i8.c : Regenerated. * maxloc0_16_r10.c : Regenerated. * maxloc0_16_r16.c : Regenerated. * maxloc0_16_r4.c : Regenerated. * maxloc0_16_r8.c : Regenerated. * maxloc0_4_i16.c : Regenerated. * maxloc0_4_i4.c : Regenerated. * maxloc0_4_i8.c : Regenerated. * maxloc0_4_r10.c : Regenerated. * maxloc0_4_r16.c : Regenerated. * maxloc0_4_r4.c : Regenerated. * maxloc0_4_r8.c : Regenerated. * maxloc0_8_i16.c : Regenerated. * maxloc0_8_i4.c : Regenerated. * maxloc0_8_i8.c : Regenerated. * maxloc0_8_r10.c : Regenerated. * maxloc0_8_r16.c : Regenerated. * maxloc0_8_r4.c : Regenerated. * maxloc0_8_r8.c : Regenerated. * maxloc1_16_i16.c : Regenerated. * maxloc1_16_i4.c : Regenerated. * maxloc1_16_i8.c : Regenerated. * maxloc1_16_r10.c : Regenerated. * maxloc1_16_r16.c : Regenerated. * maxloc1_16_r4.c : Regenerated. * maxloc1_16_r8.c : Regenerated. * maxloc1_4_i16.c : Regenerated. * maxloc1_4_i4.c : Regenerated. * maxloc1_4_i8.c : Regenerated. * maxloc1_4_r10.c : Regenerated. * maxloc1_4_r16.c : Regenerated. * maxloc1_4_r4.c : Regenerated. * maxloc1_4_r8.c : Regenerated. * maxloc1_8_i16.c : Regenerated. * maxloc1_8_i4.c : Regenerated. * maxloc1_8_i8.c : Regenerated. * maxloc1_8_r10.c : Regenerated. * maxloc1_8_r16.c : Regenerated. * maxloc1_8_r4.c : Regenerated. * maxloc1_8_r8.c : Regenerated. * maxval_i16.c : Regenerated. * maxval_i4.c : Regenerated. * maxval_i8.c : Regenerated. * maxval_r10.c : Regenerated. * maxval_r16.c : Regenerated. * maxval_r4.c : Regenerated. * maxval_r8.c : Regenerated. * minval_i16.c : Regenerated. * minval_i4.c : Regenerated. * minval_i8.c : Regenerated. * minval_r10.c : Regenerated. * minval_r16.c : Regenerated. * minval_r4.c : Regenerated. * minval_r8.c : Regenerated. * sum_c10.c : Regenerated. * sum_c16.c : Regenerated. * sum_c4.c : Regenerated. * sum_c8.c : Regenerated. * sum_i16.c : Regenerated. * sum_i4.c : Regenerated. * sum_i8.c : Regenerated. * sum_r10.c : Regenerated. * sum_r16.c : Regenerated. * sum_r4.c : Regenerated. * sum_r8.c : Regenerated. * product_c10.c : Regenerated. * product_c16.c : Regenerated. * product_c4.c : Regenerated. * product_c8.c : Regenerated. * product_i16.c : Regenerated. * product_i4.c : Regenerated. * product_i8.c : Regenerated. * product_r10.c : Regenerated. * product_r16.c : Regenerated. * product_r4.c : Regenerated. * product_r8.c : Regenerated. 2006-03-20 Thomas Koenig <Thomas.Koenig@online.de> PR fortran/20935 * gfortran.dg/scalar_mask_2.f90: New test case. From-SVN: r112230 |
|
|
a4b9e93e5d |
re PR libfortran/25378 ([Fortran 2003] maxloc for all-false mask)
2006-03-13 Paul Thomas <pault@gcc.gnu.org> PR fortran/25378 * trans-intrinsic.c (gfc_conv_intrinsic_minmaxloc): Set the initial position to zero and modify the condition for updating it, to implement the F2003 requirement for all(mask) is false. 2006-03-13 Paul Thomas <pault@gcc.gnu.org> PR fortran/25378 * libgfortran/m4/minloc1.m4: Set the initial position to zero and modify the condition for updating it, to implement the F2003 requirement for all(mask).eq.false. * libgfortran/m4/maxloc1.m4: The same. * libgfortran/m4/iforeach.m4: The same. * libgfortran/m4/minloc0.m4: The same. * libgfortran/m4/maxloc0.m4: The same. * libgfortran/generated/maxloc0_16_i16.c: Regenerated, together with 41 others. * libgfortran/generated/minloc0_16_i16.c: Regenerated, together with 41 others. 2006-03-13 Paul Thomas <pault@gcc.gnu.org> PR fortran/25378 * gfortran.fortran-torture/execute/intrinsic_mmloc_3.f90: Expand test to include more permuatations of mask and index. * testsuite/gfortran.dg/scalar_mask_1.f90: Modify last test to respond to F2003 spec. that the position returned for an all false mask && condition is zero. From-SVN: r112028 |
|
|
64acfd9910 |
libgfortran ChangeLog:
2005-11-27 Janne Blomqvist <jb@gcc.gnu.org> * m4/*: Add const restrict to function arguments. * generated/*.c: Regenerate. From-SVN: r107573 |
|
|
644cb69f80 |
re PR libfortran/19308 (I/O library should support more real and integer kinds)
PR libfortran/19308 PR fortran/20120 PR libfortran/22437 * Makefile.am: Add generated files for large real and integers kinds. Add a rule to create the kinds.inc c99_protos.inc files. Use kinds.inc to preprocess Fortran generated files. * libgfortran.h: Add macro definitions for GFC_INTEGER_16_HUGE, GFC_REAL_10_HUGE and GFC_REAL_16_HUGE. Add types gfc_array_i16, gfc_array_r10, gfc_array_r16, gfc_array_c10, gfc_array_c16, gfc_array_l16. * mk-kinds-h.sh: Define macros HAVE_GFC_LOGICAL_* and HAVE_GFC_COMPLEX_* when these types are available. * intrinsics/ishftc.c (ishftc16): New function for GFC_INTEGER_16. * m4/all.m4, m4/any.m4, m4/count.m4, m4/cshift1.m4, m4/dotprod.m4, m4/dotprodc.m4, m4/dotprodl.m4, m4/eoshift1.m4, m4/eoshift3.m4, m4/exponent.m4, m4/fraction.m4, m4/in_pack.m4, m4/in_unpack.m4, m4/matmul.m4, m4/matmull.m4, m4/maxloc0.m4, m4/maxloc1.m4, m4/maxval.m4, m4/minloc0.m4, m4/minloc1.m4, m4/minval.m4, m4/mtype.m4, m4/nearest.m4, m4/pow.m4, m4/product.m4, m4/reshape.m4, m4/set_exponent.m4, m4/shape.m4, m4/specific.m4, m4/specific2.m4, m4/sum.m4, m4/transpose.m4: Protect generated functions with appropriate "#if defined (HAVE_GFC_type_kind)" preprocessor directives. * Makefile.in: Regenerate. * all files in generated/: Regenerate. * f95-lang.c (DO_DEFINE_MATH_BUILTIN): Add support for long double builtin function. (gfc_init_builtin_functions): Add mfunc_longdouble, mfunc_clongdouble and func_clongdouble_longdouble trees. Build them for round, trunc, cabs, copysign and pow functions. * iresolve.c (gfc_resolve_reshape, gfc_resolve_transpose): Add case for kind 10 and 16. * trans-decl.c: Add trees for cpowl10, cpowl16, ishftc16, exponent10 and exponent16. (gfc_build_intrinsic_function_decls): Build nodes for int16, real10, real16, complex10 and complex16 types. Build all possible combinations for function _gfortran_pow_?n_?n. Build function calls cpowl10, cpowl16, ishftc16, exponent10 and exponent16. * trans-expr.c (gfc_conv_power_op): Add case for integer(16), real(10) and real(16). * trans-intrinsic.c: Add suppport for long double builtin functions in BUILT_IN_FUNCTION, LIBM_FUNCTION and LIBF_FUNCTION macros. (gfc_conv_intrinsic_aint): Add case for integer(16), real(10) and real(16) kinds. (gfc_build_intrinsic_lib_fndecls): Add support for real10_decl and real16_decl in library functions. (gfc_get_intrinsic_lib_fndecl): Add cases for real and complex kinds 10 and 16. (gfc_conv_intrinsic_exponent): Add cases for real(10) and real(16) kinds. (gfc_conv_intrinsic_sign): Likewise. (gfc_conv_intrinsic_ishftc): Add case for integer(16) kind. * trans-types.c (gfc_get_int_type, gfc_get_real_type, gfc_get_complex_type, gfc_get_logical_type): Doesn't error out in the case of kinds not available. * trans.h: Declare trees for cpowl10, cpowl16, ishftc16, exponent10 and exponent16. * gfortran.dg/large_real_kind_2.F90: New test. * gfortran.dg/large_integer_kind_2.f90: New test. From-SVN: r104889 |