re PR fortran/77507 (gfortran rejects keyworded calls to procedures from intrinsic modules)
2016-09-09 Steven G. Kargl <kargl@gcc.gnu.org> PR fortran/77507 * intrinsic.c (add_functions): Use correct keyword. 2016-09-09 Steven G. Kargl <kargl@gcc.gnu.org> PR fortran/77507 * ieee/ieee_arithmetic.F90 (IEEE_VALUE_4,IEEE_VALUE_8,IEEE_VALULE_10, IEEE_VALUE_16): Use correct keyword. 2016-09-09 Steven G. Kargl <kargl@gcc.gnu.org> PR fortran/77507 * gfortran.dg/pr77507.f90: New test. From-SVN: r240050
This commit is contained in:
parent
7117752523
commit
8a92685e53
6 changed files with 48 additions and 23 deletions
|
@ -1,3 +1,8 @@
|
|||
2016-09-09 Steven G. Kargl <kargl@gcc.gnu.org>
|
||||
|
||||
PR fortran/77507
|
||||
* intrinsic.c (add_functions): Use correct keyword.
|
||||
|
||||
2016-09-08 Steven G. Kargl <kargl@gcc.gnu.org>
|
||||
|
||||
PR fortran/69514
|
||||
|
|
|
@ -1239,7 +1239,8 @@ add_functions (void)
|
|||
*z = "z", *ln = "len", *ut = "unit", *han = "handler",
|
||||
*num = "number", *tm = "time", *nm = "name", *md = "mode",
|
||||
*vl = "values", *p1 = "path1", *p2 = "path2", *com = "command",
|
||||
*ca = "coarray", *sub = "sub", *dist = "distance", *failed="failed";
|
||||
*ca = "coarray", *sub = "sub", *dist = "distance", *failed="failed",
|
||||
*c_ptr_1 = "c_ptr_1", *c_ptr_2 = "c_ptr_2";
|
||||
|
||||
int di, dr, dd, dl, dc, dz, ii;
|
||||
|
||||
|
@ -2914,8 +2915,8 @@ add_functions (void)
|
|||
/* The following functions are part of ISO_C_BINDING. */
|
||||
add_sym_2 ("c_associated", GFC_ISYM_C_ASSOCIATED, CLASS_INQUIRY, ACTUAL_NO,
|
||||
BT_LOGICAL, dl, GFC_STD_F2003, gfc_check_c_associated, NULL, NULL,
|
||||
"C_PTR_1", BT_VOID, 0, REQUIRED,
|
||||
"C_PTR_2", BT_VOID, 0, OPTIONAL);
|
||||
c_ptr_1, BT_VOID, 0, REQUIRED,
|
||||
c_ptr_2, BT_VOID, 0, OPTIONAL);
|
||||
make_from_module();
|
||||
|
||||
add_sym_1 ("c_loc", GFC_ISYM_C_LOC, CLASS_INQUIRY, ACTUAL_NO,
|
||||
|
|
|
@ -1,3 +1,8 @@
|
|||
2016-09-09 Steven G. Kargl <kargl@gcc.gnu.org>
|
||||
|
||||
PR fortran/77507
|
||||
* gfortran.dg/pr77507.f90: New test.
|
||||
|
||||
2016-09-09 Joseph Myers <joseph@codesourcery.com>
|
||||
|
||||
* gcc.dg/limits-width-1.c, gcc.dg/stdint-width-1.c: New tests.
|
||||
|
|
7
gcc/testsuite/gfortran.dg/pr77507.f90
Normal file
7
gcc/testsuite/gfortran.dg/pr77507.f90
Normal file
|
@ -0,0 +1,7 @@
|
|||
! { dg-do compile }
|
||||
Program p
|
||||
Use ieee_arithmetic
|
||||
Use iso_c_binding
|
||||
Print *, ieee_value(x=1.0, class=ieee_negative_inf)
|
||||
Print *, c_associated(c_ptr_1=c_null_ptr)
|
||||
End Program
|
|
@ -1,3 +1,9 @@
|
|||
2016-09-09 Steven G. Kargl <kargl@gcc.gnu.org>
|
||||
|
||||
PR fortran/77507
|
||||
* ieee/ieee_arithmetic.F90 (IEEE_VALUE_4,IEEE_VALUE_8,IEEE_VALULE_10,
|
||||
IEEE_VALUE_16): Use correct keyword.
|
||||
|
||||
2016-09-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
|
||||
|
||||
PR libgfortran/77393
|
||||
|
|
|
@ -857,12 +857,12 @@ contains
|
|||
|
||||
! IEEE_VALUE
|
||||
|
||||
elemental real(kind=4) function IEEE_VALUE_4(X, C) result(res)
|
||||
implicit none
|
||||
real(kind=4), intent(in) :: X
|
||||
type(IEEE_CLASS_TYPE), intent(in) :: C
|
||||
elemental real(kind=4) function IEEE_VALUE_4(X, CLASS) result(res)
|
||||
|
||||
select case (C%hidden)
|
||||
real(kind=4), intent(in) :: X
|
||||
type(IEEE_CLASS_TYPE), intent(in) :: CLASS
|
||||
|
||||
select case (CLASS%hidden)
|
||||
case (1) ! IEEE_SIGNALING_NAN
|
||||
res = -1
|
||||
res = sqrt(res)
|
||||
|
@ -895,12 +895,12 @@ contains
|
|||
end select
|
||||
end function
|
||||
|
||||
elemental real(kind=8) function IEEE_VALUE_8(X, C) result(res)
|
||||
implicit none
|
||||
real(kind=8), intent(in) :: X
|
||||
type(IEEE_CLASS_TYPE), intent(in) :: C
|
||||
elemental real(kind=8) function IEEE_VALUE_8(X, CLASS) result(res)
|
||||
|
||||
select case (C%hidden)
|
||||
real(kind=8), intent(in) :: X
|
||||
type(IEEE_CLASS_TYPE), intent(in) :: CLASS
|
||||
|
||||
select case (CLASS%hidden)
|
||||
case (1) ! IEEE_SIGNALING_NAN
|
||||
res = -1
|
||||
res = sqrt(res)
|
||||
|
@ -934,12 +934,12 @@ contains
|
|||
end function
|
||||
|
||||
#ifdef HAVE_GFC_REAL_10
|
||||
elemental real(kind=10) function IEEE_VALUE_10(X, C) result(res)
|
||||
implicit none
|
||||
real(kind=10), intent(in) :: X
|
||||
type(IEEE_CLASS_TYPE), intent(in) :: C
|
||||
elemental real(kind=10) function IEEE_VALUE_10(X, CLASS) result(res)
|
||||
|
||||
select case (C%hidden)
|
||||
real(kind=10), intent(in) :: X
|
||||
type(IEEE_CLASS_TYPE), intent(in) :: CLASS
|
||||
|
||||
select case (CLASS%hidden)
|
||||
case (1) ! IEEE_SIGNALING_NAN
|
||||
res = -1
|
||||
res = sqrt(res)
|
||||
|
@ -971,15 +971,16 @@ contains
|
|||
res = 0
|
||||
end select
|
||||
end function
|
||||
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_GFC_REAL_16
|
||||
elemental real(kind=16) function IEEE_VALUE_16(X, C) result(res)
|
||||
implicit none
|
||||
real(kind=16), intent(in) :: X
|
||||
type(IEEE_CLASS_TYPE), intent(in) :: C
|
||||
elemental real(kind=16) function IEEE_VALUE_16(X, CLASS) result(res)
|
||||
|
||||
select case (C%hidden)
|
||||
real(kind=16), intent(in) :: X
|
||||
type(IEEE_CLASS_TYPE), intent(in) :: CLASS
|
||||
|
||||
select case (CLASS%hidden)
|
||||
case (1) ! IEEE_SIGNALING_NAN
|
||||
res = -1
|
||||
res = sqrt(res)
|
||||
|
|
Loading…
Add table
Reference in a new issue