summaryrefslogtreecommitdiff
path: root/gcc/fortran/intrinsic.c
diff options
context:
space:
mode:
authorfxcoudert <fxcoudert@138bc75d-0d04-0410-961f-82ee72b054a4>2010-09-01 08:33:11 +0000
committerfxcoudert <fxcoudert@138bc75d-0d04-0410-961f-82ee72b054a4>2010-09-01 08:33:11 +0000
commitfe2de951b1669a22661733f2f4496f7bcf2f02f2 (patch)
tree152b99416a290e053058a7bd41350fbc94980279 /gcc/fortran/intrinsic.c
parent278afeb5162b74e6c1f62687c48b0c437fa7eb83 (diff)
downloadgcc-fe2de951b1669a22661733f2f4496f7bcf2f02f2.tar.gz
* intrinsic.c: Add EXECUTE_COMMAND_LINE intrinsic.
* intrinsic.h (gfc_resolve_execute_command_line): New function. * iresolve.c (gfc_resolve_execute_command_line): New function. * gfortran.h (GFC_ISYM_EXECUTE_COMMAND_LINE): New value. * intrinsic.texi: Document EXECUTE_COMMAND_LINE. * intrinsics/execute_command_line.c: New file. * gfortran.map (_gfortran_execute_command_line_i4, _gfortran_execute_command_line_i8): New symbols. * Makefile.am: Add new file intrinsics/execute_command_line.c. * Makefile.in: Regenerated. * gfortran.dg/execute_command_line_1.f90: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@163719 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/fortran/intrinsic.c')
-rw-r--r--gcc/fortran/intrinsic.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/gcc/fortran/intrinsic.c b/gcc/fortran/intrinsic.c
index c14e14d75cd..0b469ae08fb 100644
--- a/gcc/fortran/intrinsic.c
+++ b/gcc/fortran/intrinsic.c
@@ -2812,6 +2812,15 @@ add_subroutines (void)
gfc_check_dtime_etime_sub, NULL, gfc_resolve_dtime_sub,
vl, BT_REAL, 4, REQUIRED, tm, BT_REAL, 4, REQUIRED);
+ add_sym_5s ("execute_command_line", GFC_ISYM_EXECUTE_COMMAND_LINE,
+ CLASS_IMPURE , BT_UNKNOWN, 0, GFC_STD_F2008,
+ NULL, NULL, gfc_resolve_execute_command_line,
+ "command", BT_CHARACTER, dc, REQUIRED, INTENT_IN,
+ "wait", BT_LOGICAL, dl, OPTIONAL, INTENT_IN,
+ "exitstat", BT_INTEGER, di, OPTIONAL, INTENT_INOUT,
+ "cmdstat", BT_INTEGER, di, OPTIONAL, INTENT_OUT,
+ "cmdmsg", BT_CHARACTER, dc, OPTIONAL, INTENT_INOUT);
+
add_sym_1s ("fdate", GFC_ISYM_FDATE, CLASS_IMPURE, BT_UNKNOWN, 0, GFC_STD_GNU,
gfc_check_fdate_sub, NULL, gfc_resolve_fdate_sub,
dt, BT_CHARACTER, dc, REQUIRED);