gcc/libgfortran/intrinsics
Francois-Xavier Coudert 050a4f7fc5 Fortran: add SELECTED_LOGICAL_KIND
gcc/fortran/ChangeLog:
	* expr.cc (check_transformational): Add SELECTED_LOGICAL_KIND
	to allowed functions for Fortran 2023.
	* gfortran.h (GFC_ISYM_SL_KIND): New.
	* gfortran.texi: Mention SELECTED_LOGICAL_KIND.
	* intrinsic.cc (add_functions): Add SELECTED_LOGICAL_KIND.
	(gfc_intrinsic_func_interface): Allow it in initialization
	expressions.
	* intrinsic.h (gfc_simplify_selected_logical_kind): New proto.
	* intrinsic.texi: Add SELECTED_LOGICAL_KIND.
	* simplify.cc (gfc_simplify_selected_logical_kind): New
	function.
	* trans-decl.cc (gfc_build_intrinsic_function_decls): Initialize
	gfor_fndecl_sl_kind.
	* trans-intrinsic.cc (gfc_conv_intrinsic_sl_kind): New function.
	(gfc_conv_intrinsic_function): Call it for GFC_ISYM_SL_KIND.
	* trans.h (gfor_fndecl_sl_kind): New symbol.

gcc/testsuite/ChangeLog:

	* gfortran.dg/selected_logical_kind_1.f90: New test.
	* gfortran.dg/selected_logical_kind_2.f90: New test.
	* gfortran.dg/selected_logical_kind_3.f90: New test.
	* gfortran.dg/selected_logical_kind_4.f90: New test.

libgfortran/ChangeLog:

	* gfortran.map: Add _gfortran_selected_logical_kind.
	* intrinsics/selected_int_kind.f90: Add SELECTED_LOGICAL_KIND.
2024-04-29 16:24:20 +02:00
..
abort.c
access.c
args.c
associated.c
c99_functions.c
chdir.c
chmod.c
clock.c
cpu_time.c
cshift0.c
ctime.c
date_and_time.c
dprod_r8.f90
dtime.c
env.c
eoshift0.c
eoshift2.c
erfc_scaled_inc.c
erfc_scaled.c
etime.c
execute_command_line.c
exit.c
extends_type_of.c
f2c_specifics.F90
fnum.c
gerror.c
getcwd.c
getlog.c
getXid.c
hostnm.c
ierrno.c
is_contiguous.c
ishftc.c
kill.c
link.c
move_alloc.c
mvbits.c
pack_generic.c
perror.c
rand.c
random_init.f90
random.c
rename.c
reshape_generic.c
reshape_packed.c
selected_char_kind.c
selected_int_kind.f90 Fortran: add SELECTED_LOGICAL_KIND 2024-04-29 16:24:20 +02:00
selected_real_kind.f90
signal.c
size.c
sleep.c
spread_generic.c
stat.c
string_intrinsics_inc.c
string_intrinsics.c
symlnk.c
system_clock.c
system.c
time_1.h
time.c
trigd_lib.inc
trigd.c
trigd.inc
umask.c
unlink.c
unpack_generic.c