OSDN Git Service

PR fortran/32222
authorlmillward <lmillward@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 16 Jul 2007 19:12:44 +0000 (19:12 +0000)
committerlmillward <lmillward@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 16 Jul 2007 19:12:44 +0000 (19:12 +0000)
commit5ddb01729f588dd93939247f0e2d8589acff8893
tree5374b6beff2b442a1f414fcd12122025a91ccdf6
parent7f6661941525829fe0086ccb2c620cf27398c43a
PR fortran/32222
PR fortran/32238
PR fortran/32242
* trans-intrinsic.c (gfc_conv_intrinsic_function_args): Adjust
to operate on a stack allocated array for the intrinsic arguments
instead of creating a TREE_LIST. Add two new parameters for the
array and the number of elements. Update all callers to allocate
an array of the correct length to pass in. Update comment.
(gfc_intrinsic_argument_list_length): New function.
(gfc_conv_intrinsic_conversion): Call it.
(gfc_conv_intrinsic_mnimax): Likewise.
(gfc_conv_intrinsic_merge): Likewise.
(gfc_conv_intrinsic_lib_function): Call it. Use new CALL_EXPR
constructors.
(gfc_conv_intrinsic_cmplx): Likewise.
(gfc_conv_intrinsic_ctime): Likewise.
(gfc_covn_intrinsic_fdate): Likewise.
(gfc_conv_intrinsic_ttynam): Likewise.
(gfc_conv_intrinsic_ishftc): Likewise.
(gfc_conv_intrinsic_index): Likewise.
(gfc_conv_intrinsic_scan): Likewise.
(gfc_conv_intrinsic_verify): Likewise.
(gfc_conv_intrinsic_trim): Likewise.
(gfc_conv_intrinsic_aint): Use new CALL_EXPR constructors.
(gfc_conv_intrinsic_exponent): Likewise.
(gfc_conv_intrinsic_bound): Likewise.
(gfc_conv_intrinsic_abs): Likewise.
(gfc_conv_intrinsic_mod): Likewise.
(gfc_conv_intrinsic_sign): Likewise.
(gfc_conv_intrinsic_len): Likewise.
(gfc_conv_intrinsic_adjust): Likewise.
(gfc_conv_intrinsic_si_kind): Likewise.

* gfortran.dg/cmplx_intrinsic_1.f90: New test.

PR fortran/32238
* gfortran.dg/pr32238.f90: New test.

PR fortran/32222
* gfortran.dg/pr32222.f90: New test.

PR fortran/32242
* gfortran.dg/pr32242.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126689 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/fortran/ChangeLog
gcc/fortran/trans-intrinsic.c
gcc/testsuite/ChangeLog
gcc/testsuite/gfortran.dg/cmplx_intrinsic_1.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.dg/pr32222.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.dg/pr32238.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.dg/pr32242.f90 [new file with mode: 0644]