Am 24.10.26 um 16:08 schrieb Harald Anlauf:
Hi Thomas,
it would help tremendously to see the actual patch!
Ah yes, that would definitely help :-)
Here it is.
Best regards
Thomas
diff --git a/gcc/fortran/gfortran.texi b/gcc/fortran/gfortran.texi
index c9f45df1882..24ae50083ff 100644
--- a/gcc/fortran/gfortran.texi
+++ b/gcc/fortran/gfortran.texi
@@ -2622,6 +2622,7 @@ The following intrinsics take unsigned arguments:
@item @code{IPARITY}, @pxref{IPARITY}
@item @code{ISHFT}, @pxref{ISHFT}
@item @code{ISHFTC}, @pxref{ISHFTC}
+@item @code{LEADZ}, @pxref{LEADZ}
@item @code{MATMUL}, @pxref{MATMUL}
@item @code{MAX}, @pxref{MAX}
@item @code{MAXLOC}, @pxref{MAXLOC}
@@ -2636,6 +2637,8 @@ The following intrinsics take unsigned arguments:
@item @code{MVBITS}, @pxref{MVBITS}
@item @code{NOT}, @pxref{NOT}
@item @code{OUT_OF_RANGE}, @pxref{OUT_OF_RANGE}
+@item @code{POPCNT}, @pxref{POPCNT}
+@item @code{POPPAR}, @pxref{POPPAR}
@item @code{PRODUCT}, @pxref{PRODUCT}
@item @code{RANDOM_NUMBER}, @pxref{RANDOM_NUMBER}
@item @code{RANGE}, @pxref{RANGE}
@@ -2644,6 +2647,7 @@ The following intrinsics take unsigned arguments:
@item @code{SHIFTL}, @pxref{SHIFTL}
@item @code{SHIFTR}, @pxref{SHIFTR}
@item @code{SUM}, @pxref{SUM}
+@item @code{TRAILZ}, @pxref{TRAILZ}
@item @code{TRANSPOSE}, @pxref{TRANSPOSE}
@item @code{TRANSFER}, @pxref{TRANSFER}
@end itemize
diff --git a/gcc/fortran/intrinsic.cc b/gcc/fortran/intrinsic.cc
index b0c246daeb4..b9f0fd0f085 100644
--- a/gcc/fortran/intrinsic.cc
+++ b/gcc/fortran/intrinsic.cc
@@ -2535,7 +2535,7 @@ add_functions (void)
add_sym_1 ("leadz", GFC_ISYM_LEADZ, CLASS_ELEMENTAL, ACTUAL_NO,
BT_INTEGER, di, GFC_STD_F2008,
- gfc_check_i, gfc_simplify_leadz, NULL,
+ gfc_check_iu, gfc_simplify_leadz, NULL,
i, BT_INTEGER, di, REQUIRED);
make_generic ("leadz", GFC_ISYM_LEADZ, GFC_STD_F2008);
@@ -3427,7 +3427,7 @@ add_functions (void)
add_sym_1 ("trailz", GFC_ISYM_TRAILZ, CLASS_ELEMENTAL, ACTUAL_NO,
BT_INTEGER, di, GFC_STD_F2008,
- gfc_check_i, gfc_simplify_trailz, NULL,
+ gfc_check_iu, gfc_simplify_trailz, NULL,
i, BT_INTEGER, di, REQUIRED);
make_generic ("trailz", GFC_ISYM_TRAILZ, GFC_STD_F2008);
diff --git a/gcc/fortran/intrinsic.texi b/gcc/fortran/intrinsic.texi
index 0d75b47c57b..bce59971e4b 100644
--- a/gcc/fortran/intrinsic.texi
+++ b/gcc/fortran/intrinsic.texi
@@ -9773,7 +9773,7 @@ Elemental function
@item @emph{Arguments}:
@multitable @columnfractions .15 .70
-@item @var{I} @tab Shall be of type @code{INTEGER}.
+@item @var{I} @tab Shall be of type @code{INTEGER} or @code{UNSIGNED}.
@end multitable
@item @emph{Return value}:
@@ -12268,7 +12268,7 @@ Elemental function
@item @emph{Arguments}:
@multitable @columnfractions .15 .70
-@item @var{I} @tab Shall be of type @code{INTEGER}.
+@item @var{I} @tab Shall be of type @code{INTEGER} or @code{UNSIGNED}.
@end multitable
@item @emph{Return value}:
@@ -12316,7 +12316,7 @@ Elemental function
@item @emph{Arguments}:
@multitable @columnfractions .15 .70
-@item @var{I} @tab Shall be of type @code{INTEGER}.
+@item @var{I} @tab Shall be of type @code{INTEGER} or @code{UNSIGNED}.
@end multitable
@item @emph{Return value}:
@@ -15434,7 +15434,7 @@ Elemental function
@item @emph{Arguments}:
@multitable @columnfractions .15 .70
-@item @var{I} @tab Shall be of type @code{INTEGER}.
+@item @var{I} @tab Shall be of type @code{INTEGER} or @code{UNSIGNED}.
@end multitable
@item @emph{Return value}: