https://gcc.gnu.org/bugzilla/show_bug.cgi?id=125458
Mikael Morin <mikael at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |mikael at gcc dot gnu.org
--- Comment #4 from Mikael Morin <mikael at gcc dot gnu.org> ---
(In reply to Thomas Koenig from comment #3)
> OK.
>
> There is also no error for this test case:
>
> print *,1e20 * 1e20
> end
>
> A gfc_error is issued, but it is later rejected because the
> match is succesful.
>
Is it? A statement pattern successfully matched with an error should be an
error, not a successful match.
> print *,2*huge(1.0)
>
> goes through resolution, where we issue the error.
>
Why doesn't it happen in the other case?
> It would be possible to remove the arithmetic simplification
> from matching, or just re-check on resolution.
>
... or really reject on matching (but I'm afraid of side-effects).
> The first solution
> would probably be cleaner...
Agreed.