]> git.ipfire.org Git - thirdparty/gcc.git/commit
re PR fortran/30964 (optional arguments to random_seed)
authorFrancois-Xavier Coudert <fxcoudert@gcc.gnu.org>
Sun, 12 Aug 2007 20:45:29 +0000 (20:45 +0000)
committerFrançois-Xavier Coudert <fxcoudert@gcc.gnu.org>
Sun, 12 Aug 2007 20:45:29 +0000 (20:45 +0000)
commit34b4bc5c61e6d0d43683a38f696afedf6d1770f3
tree1aa675f2be8264295523bb56ade85d71e6c31e8c
parent096f0d9dbc9e9746d3def29a4b4bd2cd17bf5f74
re PR fortran/30964 (optional arguments to random_seed)

PR fortran/30964
PR fortran/33054

* trans-expr.c (gfc_conv_function_call): When no formal argument
list is available, we still substitute missing optional arguments.
* check.c (gfc_check_random_seed): Correct the check on the
number of arguments to RANDOM_SEED.
* intrinsic.c (add_subroutines): Add a resolution function to
RANDOM_SEED.
* iresolve.c (gfc_resolve_random_seed): New function.
* intrinsic.h (gfc_resolve_random_seed): New prototype.

* intrinsics/random.c (random_seed): Rename into random_seed_i4.
(random_seed_i8): New function.
* gfortran.map (GFORTRAN_1.0): Remove _gfortran_random_seed,
add _gfortran_random_seed_i4 and _gfortran_random_seed_i8.
* libgfortran.h (iexport_proto): Replace random_seed by
random_seed_i4 and random_seed_i8.
* runtime/main.c (init): Call the new random_seed_i4.

* gfortran.dg/random_4.f90: New test.
* gfortran.dg/random_5.f90: New test.
* gfortran.dg/random_6.f90: New test.
* gfortran.dg/random_7.f90: New test.

From-SVN: r127383
16 files changed:
gcc/fortran/ChangeLog
gcc/fortran/check.c
gcc/fortran/intrinsic.c
gcc/fortran/intrinsic.h
gcc/fortran/iresolve.c
gcc/fortran/trans-expr.c
gcc/testsuite/ChangeLog
gcc/testsuite/gfortran.dg/random_4.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.dg/random_5.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.dg/random_6.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.dg/random_7.f90 [new file with mode: 0644]
libgfortran/ChangeLog
libgfortran/gfortran.map
libgfortran/intrinsics/random.c
libgfortran/libgfortran.h
libgfortran/runtime/main.c