This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [Patch, Fortran] Fix DECL of namelist I/O function; fix FINALIZATION
- From: Mikael Morin <mikael dot morin at sfr dot fr>
- To: Tobias Burnus <burnus at net-b dot de>, gcc-patches <gcc-patches at gcc dot gnu dot org>, gfortran <fortran at gcc dot gnu dot org>
- Date: Sun, 17 Aug 2014 14:44:57 +0200
- Subject: Re: [Patch, Fortran] Fix DECL of namelist I/O function; fix FINALIZATION
- Authentication-results: sourceware.org; auth=none
- Authentication-results: sfrmc.priv.atos.fr; dkim=none (no signature); dkim-adsp=none (no policy) header dot from=mikael dot morin at sfr dot fr
- References: <53EE8541 dot 309 at net-b dot de>
Le 16/08/2014 00:10, Tobias Burnus a écrit :
> This patch fixes two minor issues
>
> a) The argument issue mentioned in
> https://gcc.gnu.org/ml/fortran/2014-08/msg00007.html
> The main issue is that the decl uses "void" as argument; the FE passes
> IARG() alias gfc_array_index_type while the library expects a
> GFC_INTEGER_4. As n_dim and ts->kind are small, I have chosen to keep
> GFC_INTEGER_4 in the library and use int32_t for the argument and in the
> decl.
>
As there is no testcase: did you get a confirmation that the reported
issue is fixed with this?
> b) resolve_finalizer calls at the end the function, which obtains the
> vtab, which in turns calls the vtab function of the parent, which tries
> to generate the _final entry, which requires that the finalizers are
> resolved. In the test case, the parent's finalizer wasn't ready, leading
> to an ICE in an assert. The patch now first resolves the parent's
> finalizers before taking care of its own.
>
> Build and regtested on x86-64-gnu-linux.
> OK for the trunk?
>
The patch look good to me. Both of them. (close to obvious actually)
Thanks.
Mikael