public inbox for fortran@gcc.gnu.org
 help / color / mirror / Atom feed
From: Harald Anlauf <anlauf@gmx.de>
To: Paul Richard Thomas <paul.richard.thomas@gmail.com>,
	gcc-patches <gcc-patches@gcc.gnu.org>,
	fortran <fortran@gcc.gnu.org>
Subject: Re: [Patch, fortran] PR103471 - [11/12/13/14 Regression] ICE in gfc_typenode_for_spec, at fortran/trans-types.c:1114
Date: Fri, 19 Apr 2024 20:33:20 +0200	[thread overview]
Message-ID: <c879ed13-df3d-43f7-8426-2ded4e47360c@gmx.de> (raw)
In-Reply-To: <CAGkQGiJv6oqU8_PWiWq-U4BpyDrk8nhvqtm8PC56cQVZWJQpxw@mail.gmail.com>

Hi Paul,

the patch is OK, but I had to manually fix it.  I wonder how you managed
to produce:

diff --git a/gcc/testsuite/gfortran.dg/pr93484.f90
b/gcc/testsuite/gfortran.dg/pr93484.f90
new file mode 100644
index 00000000000..4dcad47e8da
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/pr103471.f90
@@ -0,0 +1,13 @@

A minor comment on the error message and the testcase.
Take for example:

subroutine sub
   implicit none
   real, external :: x
   real           :: y(10)
   integer :: kk
   print *, [real(x(k))]
!  print *, [real(y(k))]
end

The original testcase in the PR would - without implicit none -
resemble the function invocation x(k) here and emit the error:

Fatal Error: k at (1) has no default type
compilation terminated.

while commenting the first print and uncommenting the second
would emit the message

Error: Symbol 'k' at (1) has no IMPLICIT type; did you mean 'kk'?

Thus I have the impression that the testcase tests something different
on the one hand, and on the other I wonder if we would want to change
the error message and replace "no default type" to "no IMPLICIT type".
It still would not hit the fuzzy check, but that is something that
might not be important now.

Thanks,
Harald


On 4/19/24 18:52, Paul Richard Thomas wrote:
> Hi All,
>
> This is a more or less obvious patch. The action is in resolve.cc. The
> chunk in symbol.cc is a tidy up of a diagnostic marker to distinguish where
> the 'no IMPLICIT type' error was coming from and the chunk in trans-decl.cc
> follows from discussion with Harald on the PR.
>
> Regtests fine. OK for mainline and backporting in a couple of weeks?
>
> Paul
>
> Fortran: Detect 'no implicit type' error in right place [PR103471]
>
> 2024-04-19  Paul Thomas  <pault@gcc.gnu.org>
>
> gcc/fortran
> PR fortran/103471
> * resolve.cc (gfc_resolve_index_1): Block index expressions of
> unknown type from being converted to default integer, avoiding
> the fatal error in trans-decl.cc.
> * symbol.cc (gfc_set_default_type): Remove '(symbol)' from the
> 'no IMPLICIT type' error message.
> * trans-decl.cc (gfc_get_symbol_decl): Change fatal error locus
> to that of the symbol declaration.
> (gfc_trans_deferred_vars): Remove two trailing tabs.
>
> gcc/testsuite/
> PR fortran/103471
> * gfortran.dg/pr103471.f90: New test.
>


  parent reply	other threads:[~2024-04-19 18:33 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <CAGkQGiJv6oqU8_PWiWq-U4BpyDrk8nhvqtm8PC56cQVZWJQpxw@mail.gmail.com>
2024-04-19 17:56 ` Paul Richard Thomas
2024-04-19 18:33 ` Harald Anlauf [this message]
2024-04-20  7:54   ` Paul Richard Thomas
2024-04-20 13:05     ` Harald Anlauf
2024-04-20 17:31       ` Paul Richard Thomas

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=c879ed13-df3d-43f7-8426-2ded4e47360c@gmx.de \
    --to=anlauf@gmx.de \
    --cc=fortran@gcc.gnu.org \
    --cc=gcc-patches@gcc.gnu.org \
    --cc=paul.richard.thomas@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).