[PATCH, Fortran] PR 80668: wrong error message with -finit-derived
Jerry DeLisle
jvdelisle@charter.net
Tue May 9 16:23:00 GMT 2017
On 05/09/2017 08:37 AM, Fritz Reese wrote:
> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80668
>
> All,
>
> The following fixes a bug exposed in PR 80668 in which the compiler
> attempted to generate an initializer for components of derived types
> with the POINTER attribute when compiling with -finit-derived and
> -finit-*=*. It is nonsensical for components with the POINTER
> attribute to have initializers generated in this way. The resolution
> phase caught the resulting contradictions, resulting in an error for
> the testcase given in the PR.
>
> With the patch all regression tests pass except for the following,
> which already fail in the current trunk (r247800):
>
> Running /data/midas/foreese/src/gcc-dev/gcc/testsuite/gfortran.dg/dg.exp ...
> FAIL: gfortran.dg/coarray_lock_7.f90 -O scan-tree-dump-times
> original "_gfortran_caf_lock \\(caf_token.., \\(3 -
> \\(integer\\(kind=4\\)\\) parm...dim\\[0\\].lbound\\) \\+
> \\(integer\\(kind=4\\)\\) MAX_EXPR <\\(parm...dim\\[0\\].ubound -
> parm...dim\\[0\\].lbound\\) \\+ 1, 0> \\* \\(3 -
> \\(integer\\(kind=4\\)\\) parm...dim\\[1\\].lbound\\), 0, 0B, &ii, 0B,
> 0\\);|_gfortran_caf_lock \\(caf_token.1, \\(3 -
> parm...dim\\[0\\].lbound\\) \\+ MAX_EXPR <\\(parm...dim\\[0\\].ubound
> - parm...dim\\[0\\].lbound\\) \\+ 1, 0> \\* \\(3 -
> parm...dim\\[1\\].lbound\\), 0, 0B, &ii, 0B, 0\\);" 1
> FAIL: gfortran.dg/coarray_lock_7.f90 -O scan-tree-dump-times
> original "_gfortran_caf_unlock \\(caf_token.., \\(2 -
> \\(integer\\(kind=4\\)\\) parm...dim\\[0\\].lbound\\) \\+
> \\(integer\\(kind=4\\)\\) MAX_EXPR <\\(parm...dim\\[0\\].ubound -
> parm...dim\\[0\\].lbound\\) \\+ 1, 0> \\* \\(3 -
> \\(integer\\(kind=4\\)\\) parm...dim\\[1\\].lbound\\), 0, &ii, 0B,
> 0\\);|_gfortran_caf_unlock \\(caf_token.., \\(2 -
> parm...dim\\[0\\].lbound\\) \\+ MAX_EXPR <\\(parm...dim\\[0\\].ubound
> - parm...dim\\[0\\].lbound\\) \\+ 1, 0> \\* \\(3 -
> parm...dim\\[1\\].lbound\\), 0, &ii, 0B, 0\\);" 1
> FAIL: gfortran.dg/mvbits_7.f90 -O0 (test for warnings, line 28)
>
>
> OK for trunk?
>
Looks OK, thanks,
Jerry
More information about the Fortran
mailing list