diff options
author | Andre Vehreschild <vehre@gcc.gnu.org> | 2021-05-22 13:27:42 +0200 |
---|---|---|
committer | Andre Vehreschild <vehre@gcc.gnu.org> | 2021-05-22 13:27:42 +0200 |
commit | 26ca6dbda23bc6dfab96ce07afa70ebacedfaf9c (patch) | |
tree | 992eca69f9e2e4007a4c324df7aca1893a3f488a /gcc/fortran/trans.h | |
parent | 3050a1a18276d7cdd8946e34cc1344e30efb7030 (diff) | |
download | gcc-26ca6dbda23bc6dfab96ce07afa70ebacedfaf9c.zip gcc-26ca6dbda23bc6dfab96ce07afa70ebacedfaf9c.tar.gz gcc-26ca6dbda23bc6dfab96ce07afa70ebacedfaf9c.tar.bz2 |
Steve Kargl <kargl@gcc.gnu.org>
PR fortran/98301 - random_init() is broken
Correct implementation of random_init() when -fcoarray=lib is given.
gcc/fortran/ChangeLog:
PR fortran/98301
* trans-decl.c (gfc_build_builtin_function_decls): Move decl.
* trans-intrinsic.c (conv_intrinsic_random_init): Use bool for
lib-call of caf_random_init instead of logical (4-byte).
* trans.h: Add tree var for random_init.
libgfortran/ChangeLog:
PR fortran/98301
* caf/libcaf.h (_gfortran_caf_random_init): New function.
* caf/single.c (_gfortran_caf_random_init): New function.
* gfortran.map: Added fndecl.
* intrinsics/random_init.f90: Implement random_init.
Diffstat (limited to 'gcc/fortran/trans.h')
-rw-r--r-- | gcc/fortran/trans.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/fortran/trans.h b/gcc/fortran/trans.h index 8c6f82f..69d3fdc 100644 --- a/gcc/fortran/trans.h +++ b/gcc/fortran/trans.h @@ -969,6 +969,7 @@ extern GTY(()) tree gfor_fndecl_ieee_procedure_exit; /* RANDOM_INIT. */ extern GTY(()) tree gfor_fndecl_random_init; +extern GTY(()) tree gfor_fndecl_caf_random_init; /* True if node is an integer constant. */ #define INTEGER_CST_P(node) (TREE_CODE(node) == INTEGER_CST) |