Intrinsic documentation changes.

Add notes to DIM, MOD and MODULE stating that as a GNU extension,
integers of different kinds are allowed as arguments and that the
return value has the larger kind.

From-SVN: r274744
This commit is contained in:
Mark Eggleston 2019-08-20 10:08:10 +00:00 committed by Mark Eggleston
parent dd241b9458
commit a53aa4da8a
2 changed files with 18 additions and 7 deletions

View file

@ -1,3 +1,8 @@
2019-08-20 Mark Eggleston <mark.eggleston@codethink.com>
PR fortran/89236
* intrinsic.texi: Add GNU extension notes to DIM, MOD, MODULO.
2019-08-19 Mark Eggleston <mark.eggleston@codethink.com>
* gfortran.texi: Delete paragraph about integer overload errors

View file

@ -4876,11 +4876,13 @@ Elemental function
@item @emph{Arguments}:
@multitable @columnfractions .15 .70
@item @var{X} @tab The type shall be @code{INTEGER} or @code{REAL}
@item @var{Y} @tab The type shall be the same type and kind as @var{X}.
@item @var{Y} @tab The type shall be the same type and kind as @var{X}. (As
a GNU extension, arguments of different kinds are permitted.)
@end multitable
@item @emph{Return value}:
The return value is of type @code{INTEGER} or @code{REAL}.
The return value is of type @code{INTEGER} or @code{REAL}. (As a GNU
extension, kind is the largest kind of the actual arguments.)
@item @emph{Example}:
@smallexample
@ -10607,14 +10609,16 @@ Elemental function
@multitable @columnfractions .15 .70
@item @var{A} @tab Shall be a scalar of type @code{INTEGER} or @code{REAL}.
@item @var{P} @tab Shall be a scalar of the same type and kind as @var{A}
and not equal to zero.
and not equal to zero. (As a GNU extension, arguments of different kinds are
permitted.)
@end multitable
@item @emph{Return value}:
The return value is the result of @code{A - (INT(A/P) * P)}. The type
and kind of the return value is the same as that of the arguments. The
returned value has the same sign as A and a magnitude less than the
magnitude of P.
magnitude of P. (As a GNU extension, kind is the largest kind of the actual
arguments.)
@item @emph{Example}:
@smallexample
@ -10678,11 +10682,13 @@ Elemental function
@multitable @columnfractions .15 .70
@item @var{A} @tab Shall be a scalar of type @code{INTEGER} or @code{REAL}.
@item @var{P} @tab Shall be a scalar of the same type and kind as @var{A}.
It shall not be zero.
It shall not be zero. (As a GNU extension, arguments of different kinds are
permitted.)
@end multitable
@item @emph{Return value}:
The type and kind of the result are those of the arguments.
The type and kind of the result are those of the arguments. (As a GNU
extension, kind is the largest kind of the actual arguments.)
@table @asis
@item If @var{A} and @var{P} are of type @code{INTEGER}:
@code{MODULO(A,P)} has the value @var{R} such that @code{A=Q*P+R}, where
@ -12917,7 +12923,7 @@ Elemental function
@item @emph{Arguments}:
@multitable @columnfractions .15 .70
@item @var{A} @tab Shall be of type @code{INTEGER} or @code{REAL}
@item @var{B} @tab Shall be of the same type and kind as @var{A}
@item @var{B} @tab Shall be of the same type and kind as @var{A}.
@end multitable
@item @emph{Return value}: