Skip to content
Snippets Groups Projects
  • Francois-Xavier Coudert's avatar
    050a4f7f
    Fortran: add SELECTED_LOGICAL_KIND · 050a4f7f
    Francois-Xavier Coudert authored
    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.
    050a4f7f
    History
    Fortran: add SELECTED_LOGICAL_KIND
    Francois-Xavier Coudert authored
    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.