[PATCH] Fortran -- clean up KILL
Steve Kargl
sgk@troutmask.apl.washington.edu
Tue Mar 13 04:08:00 GMT 2018
On Mon, Mar 12, 2018 at 09:05:09PM +0200, Janne Blomqvist wrote:
>
> Yes, I understand that -fdefault-integer-8 (or whatever the equivalent
> option was called on g77) is the original motivation. Like I said, I
> don't have any particular opinion on whether we should keep that
> restriction or not. On one hand, more recent versions of the standard
> has lifted restrictions that integer intrinsic arguments have to be of
> default kind in many cases, OTOH KILL is not a standard intrinsic but
> something inherited from g77. So, meh.
The Fortran standard specifically permits a Fortran processor to
supply additional subprograms not contained in the Fortran standard.
I personally can't any person person using INTEGER(1) or even
INTEGER(2) with KILL as pid_t on typical modern OS's exceeds HUGE()
in those types. My original patch simply fixed KILL to actually
conform to its documentation. But is this what you want
2018-03-12 Steven G. Kargl <kargl@gcc.gnu.org>
* check.c (gfc_check_kill_sub): Remove check for INTEGER(4) or (8).
* intrinsic.c (add_functions): Remove reference to gfc_resolve_kill.
(add_subroutines): Remove reference to gfc_resolve_kill_sub.
* intrinsic.texi: Update documentation.
* iresolve.c (gfc_resolve_kill, gfc_resolve_kill_sub): Remove.
* trans-decl.c (gfc_build_intrinsic_function_decls): Add gfor_fndecl_kill
and gfor_fndecl_kill_sub
* trans-intrinsic.c (conv_intrinsic_kill, conv_intrinsic_kill_sub): new
functions.
(gfc_conv_intrinsic_function): Use conv_intrinsic_kill.
(gfc_conv_intrinsic_subroutine): Use conv_intrinsic_kill_sub.
* trans.h: Declare gfor_fndecl_kill and gfor_fndecl_kill_sub.
2018-03-12 Steven G. Kargl <kargl@gcc.gnu.org>
* libgfortran/gfortran.map: Remove _gfortran_kill_i4, _gfortran_kill_i4_sub,
_gfortran_kill_i8, and _gfortran_kill_i8_sub. Add _gfortran_kill and
_gfortran_kill_sub.
* libgfortran/intrinsics/kill.c: Eliminate _gfortran_kill_i4,
_gfortran_kill_i4_sub, _gfortran_kill_i8, and _gfortran_kill_i8_sub.
Add _gfortran_kill and _gfortran_kill_sub.
--
Steve
-------------- next part --------------
A non-text attachment was scrubbed...
Name: kill.diff
Type: text/x-diff
Size: 12608 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/fortran/attachments/20180313/cd0a5015/attachment.bin>
More information about the Fortran
mailing list