[Fortran-Experiments, patch, committed] f90_type fix to allow real(c_real); testsuite fix

Tobias Burnus burnus@net-b.de
Tue Dec 19 18:00:00 GMT 2006


I just commited the attached patch to "fortran-experiments", which was
also attached to yesterday's email
http://gcc.gnu.org/ml/fortran/2006-12/msg00307.html

This fixes two problems:

  real(c_double) :: r

was broken (bogus compiler error) since  c_double had the associated
f95_type "BT_INTEGER" instead of "BT_REAL".

It additionally, fixes "use_iso_c_binding.f90", which had the wrong
"dg-error" messages.

With these patches, "make check-gfortran" works, except for
"c_kind_params.f90",
which fails since  "c_int_fast*_t" is "-2" which is not a valid integer
kind.

Tobias


Changelog:

2006-12-19  Tobias Burnus  <burnus@net-b.de>

        * gcc/fortran/iso-c-binding.def: Use NAMED_REALCST, NAMED_CMPXCST,
          NAMED_LOGCST and NAMED_CHARKNDCST.
        * gcc/fortran/gfortran.h (iso_c_binding_symbol): Use them.
        * gcc/fortran/symbol.c (generate_isocbinding_symbol): Use them.
        * gcc/fortran/trans-types.c (init_c_interop_kinds): Assign the
          right BT_* type to "f90_type" using the added NAMED_*CST.

        * gcc/testsuite/gfortran.dg/use_iso_c_binding.f90:
          Fix dg-error.



More information about the Fortran mailing list