Skip to content
Snippets Groups Projects
Forked from redox-os / gcc
Source project has a limited visibility.
  • fxcoudert's avatar
    d2fc5bb1
    * intrinsic.c (add_functions): Add ACCESS, CHMOD, RSHIFT, LSHIFT. · d2fc5bb1
    fxcoudert authored
    	(add_subroutines): Add LTIME, GMTIME and CHMOD.
    	* intrinsic.h (gfc_check_access_func, gfc_check_chmod,
    	gfc_check_chmod_sub, gfc_check_ltime_gmtime, gfc_simplify_rshift,
    	gfc_simplify_lshift, gfc_resolve_access, gfc_resolve_chmod,
    	gfc_resolve_rshift, gfc_resolve_lshift, gfc_resolve_chmod_sub,
    	gfc_resolve_gmtime, gfc_resolve_ltime): Add prototypes.
    	* gfortran.h (gfc_generic_isym_id): Add GFC_ISYM_ACCESS,
    	GFC_ISYM_CHMOD, GFC_ISYM_LSHIFT, GFC_ISYM_RSHIFT.
    	* iresolve.c (gfc_resolve_access, gfc_resolve_chmod,
    	gfc_resolve_rshift, gfc_resolve_lshift, gfc_resolve_chmod_sub,
    	gfc_resolve_gmtime, gfc_resolve_ltime): New functions.
    	* check.c (gfc_check_access_func, gfc_check_chmod,
    	gfc_check_chmod_sub, gfc_check_ltime_gmtime): New functions.
    	* trans-intrinsic.c (gfc_conv_intrinsic_rlshift): New function.
    	(gfc_conv_intrinsic_function): Add cases for the new GFC_ISYM_*.
    
    	* intrinsics/date_and_time.c: Add functions for GMTIME and LTIME.
    	* intrinsics/access.c: New file.
    	* intrinsics/chmod.c: New file.
    	* configure.ac: Add checks for <sys/wait.h>, access, fork,execl
    	and wait.
    	* Makefile.am: Add new files intrinsics/access.c and
    	intrinsics/chmod.c.
    	* configure: Regenerate.
    	* config.h.in: Regenerate.
    	* Makefile.in: Regenerate.
    
    	* gcc/testsuite/gfortran.dg/chmod_3.f90: New test.
    	* gcc/testsuite/gfortran.dg/ltime_gmtime_1.f90: New test.
    	* gcc/testsuite/gfortran.dg/ltime_gmtime_2.f90: New test.
    	* gcc/testsuite/gfortran.dg/lrshift_1.f90: New test.
    	* gcc/testsuite/gfortran.dg/chmod_1.f90: New test.
    	* gcc/testsuite/gfortran.dg/chmod_2.f90: New test.
    
    
    git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@115825 138bc75d-0d04-0410-961f-82ee72b054a4
    d2fc5bb1
    History
    * intrinsic.c (add_functions): Add ACCESS, CHMOD, RSHIFT, LSHIFT.
    fxcoudert authored
    	(add_subroutines): Add LTIME, GMTIME and CHMOD.
    	* intrinsic.h (gfc_check_access_func, gfc_check_chmod,
    	gfc_check_chmod_sub, gfc_check_ltime_gmtime, gfc_simplify_rshift,
    	gfc_simplify_lshift, gfc_resolve_access, gfc_resolve_chmod,
    	gfc_resolve_rshift, gfc_resolve_lshift, gfc_resolve_chmod_sub,
    	gfc_resolve_gmtime, gfc_resolve_ltime): Add prototypes.
    	* gfortran.h (gfc_generic_isym_id): Add GFC_ISYM_ACCESS,
    	GFC_ISYM_CHMOD, GFC_ISYM_LSHIFT, GFC_ISYM_RSHIFT.
    	* iresolve.c (gfc_resolve_access, gfc_resolve_chmod,
    	gfc_resolve_rshift, gfc_resolve_lshift, gfc_resolve_chmod_sub,
    	gfc_resolve_gmtime, gfc_resolve_ltime): New functions.
    	* check.c (gfc_check_access_func, gfc_check_chmod,
    	gfc_check_chmod_sub, gfc_check_ltime_gmtime): New functions.
    	* trans-intrinsic.c (gfc_conv_intrinsic_rlshift): New function.
    	(gfc_conv_intrinsic_function): Add cases for the new GFC_ISYM_*.
    
    	* intrinsics/date_and_time.c: Add functions for GMTIME and LTIME.
    	* intrinsics/access.c: New file.
    	* intrinsics/chmod.c: New file.
    	* configure.ac: Add checks for <sys/wait.h>, access, fork,execl
    	and wait.
    	* Makefile.am: Add new files intrinsics/access.c and
    	intrinsics/chmod.c.
    	* configure: Regenerate.
    	* config.h.in: Regenerate.
    	* Makefile.in: Regenerate.
    
    	* gcc/testsuite/gfortran.dg/chmod_3.f90: New test.
    	* gcc/testsuite/gfortran.dg/ltime_gmtime_1.f90: New test.
    	* gcc/testsuite/gfortran.dg/ltime_gmtime_2.f90: New test.
    	* gcc/testsuite/gfortran.dg/lrshift_1.f90: New test.
    	* gcc/testsuite/gfortran.dg/chmod_1.f90: New test.
    	* gcc/testsuite/gfortran.dg/chmod_2.f90: New test.
    
    
    git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@115825 138bc75d-0d04-0410-961f-82ee72b054a4