public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug fortran/20067] New: gfortran: misleading error message resolving generic subroutine
@ 2005-02-19 13:01 anlauf at hep dot tu-darmstadt dot de
2005-02-19 13:07 ` [Bug fortran/20067] " pinskia at gcc dot gnu dot org
0 siblings, 1 reply; 7+ messages in thread
From: anlauf at hep dot tu-darmstadt dot de @ 2005-02-19 13:01 UTC (permalink / raw)
To: gcc-bugs
Hi,
the following (incorrect) code gives a misleading error message
when compiling:
program gfcbug24
implicit none
interface foo
subroutine foo_8 (a, b)
real (kind(1.d0)) :: a, b
end subroutine foo_8
end interface
real (kind(1.d0)) :: c = 1.d0
! gfortran gives a misleading error message for the following line:
call foo (c, 2.0)
end
% gfortran gfcbug24.f90
In file gfcbug24.f90:13
call foo (c, 2.0)
1
Error: Generic subroutine 'foo' at (1) is not an intrinsic subroutine
This is misleading. There simply is no specific subroutine
whose characteristics matches the (ranks and) types used in
the invocation.
E.g., the Intel compiler v8.1 says:
fortcom: Error: gfcbug24.f90, line 13: There is no matching specific subroutine
for this generic subroutine call. [FOO]
call foo (c, 2.0)
-----^
compilation aborted for gfcbug24.f90 (code 1)
Cheers,
-ha
--
Summary: gfortran: misleading error message resolving generic
subroutine
Product: gcc
Version: 4.0.0
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: fortran
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: anlauf at hep dot tu-darmstadt dot de
CC: gcc-bugs at gcc dot gnu dot org
GCC host triplet: i686-pc-linux-gnu
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20067
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug fortran/20067] gfortran: misleading error message resolving generic subroutine
2005-02-19 13:01 [Bug fortran/20067] New: gfortran: misleading error message resolving generic subroutine anlauf at hep dot tu-darmstadt dot de
@ 2005-02-19 13:07 ` pinskia at gcc dot gnu dot org
0 siblings, 0 replies; 7+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-02-19 13:07 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2005-02-18 23:26 -------
Confirmed.
--
What |Removed |Added
----------------------------------------------------------------------------
Severity|normal |minor
Status|UNCONFIRMED |NEW
Ever Confirmed| |1
Keywords| |diagnostic
Last reconfirmed|0000-00-00 00:00:00 |2005-02-18 23:26:28
date| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20067
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug fortran/20067] gfortran: misleading error message resolving generic subroutine
[not found] <bug-20067-6318@http.gcc.gnu.org/bugzilla/>
` (3 preceding siblings ...)
2006-08-30 5:20 ` pault at gcc dot gnu dot org
@ 2006-08-30 5:31 ` pault at gcc dot gnu dot org
4 siblings, 0 replies; 7+ messages in thread
From: pault at gcc dot gnu dot org @ 2006-08-30 5:31 UTC (permalink / raw)
To: gcc-bugs
------- Comment #6 from pault at gcc dot gnu dot org 2006-08-30 05:31 -------
Fixed on trunk and 4.1
Paul
--
pault at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20067
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug fortran/20067] gfortran: misleading error message resolving generic subroutine
[not found] <bug-20067-6318@http.gcc.gnu.org/bugzilla/>
` (2 preceding siblings ...)
2006-08-30 5:20 ` pault at gcc dot gnu dot org
@ 2006-08-30 5:20 ` pault at gcc dot gnu dot org
2006-08-30 5:31 ` pault at gcc dot gnu dot org
4 siblings, 0 replies; 7+ messages in thread
From: pault at gcc dot gnu dot org @ 2006-08-30 5:20 UTC (permalink / raw)
To: gcc-bugs
------- Comment #4 from pault at gcc dot gnu dot org 2006-08-30 05:19 -------
Subject: Bug 20067
Author: pault
Date: Wed Aug 30 05:18:36 2006
New Revision: 116578
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=116578
Log:
2006-08-30 Paul Thomas <pault@gcc.gnu.org>
PR fortran/28885
REGRESSION FIX
* trans-expr.c (gfc_conv_aliased_arg): Ensure that the temp
declaration is retained for INTENT(OUT) arguments.
PR fortran/28873
REGRESSION FIX
PR fortran/20067
* resolve.c (resolve_generic_f): Make error message more
comprehensible.
(resolve_generic_s): Restructure search for specific procedures
to be similar to resolve_generic_f and change to similar error
message. Ensure that symbol reference is refreshed, in case
the search produces a NULL.
(resolve_specific_s): Restructure search, as above and as
resolve_specific_f. Ensure that symbol reference is refreshed,
in case the search produces a NULL.
PR fortran/25077
PR fortran/25102
* interface.c (check_operator_interface): Throw error if the
interface assignment tries to change intrinsic type assigments
or has less than two arguments. Also, it is an error if an
interface operator contains an alternate return.
PR fortran/24866
* parse.c (gfc_fixup_sibling_symbols): Do not modify the symbol
if it is a dummy in the contained namespace.
2006-08-30 Paul Thomas <pault@gcc.gnu.org>
PR fortran/28885
* gfortran.dg/aliasing_dummy_2.f90: New test.
PR fortran/20067
* gfortran.dg/generic_5.f90: Change error message.
PR fortran/28873
* gfortran.dg/generic_6.f90: New test.
PR fortran/25077
* gfortran.dg/redefined_intrinsic_assignment.f90: New test.
PR fortran/25102
* gfortran.dg/invalid_interface_assignment.f90: New test.
PR fortran/24866
* gfortran.dg/module_proc_external_dummy.f90: New test.
Added:
trunk/gcc/testsuite/gfortran.dg/aliasing_dummy_2.f90
trunk/gcc/testsuite/gfortran.dg/generic_6.f90
trunk/gcc/testsuite/gfortran.dg/invalid_interface_assignment.f90
trunk/gcc/testsuite/gfortran.dg/module_proc_external_dummy.f90
trunk/gcc/testsuite/gfortran.dg/redefined_intrinsic_assignment.f90
Modified:
trunk/gcc/fortran/ChangeLog
trunk/gcc/fortran/interface.c
trunk/gcc/fortran/parse.c
trunk/gcc/fortran/resolve.c
trunk/gcc/fortran/trans-expr.c
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/gfortran.dg/generic_5.f90
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20067
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug fortran/20067] gfortran: misleading error message resolving generic subroutine
[not found] <bug-20067-6318@http.gcc.gnu.org/bugzilla/>
2006-08-29 7:55 ` paul dot richard dot thomas at cea dot fr
2006-08-29 14:46 ` anlauf at gmx dot de
@ 2006-08-30 5:20 ` pault at gcc dot gnu dot org
2006-08-30 5:20 ` pault at gcc dot gnu dot org
2006-08-30 5:31 ` pault at gcc dot gnu dot org
4 siblings, 0 replies; 7+ messages in thread
From: pault at gcc dot gnu dot org @ 2006-08-30 5:20 UTC (permalink / raw)
To: gcc-bugs
------- Comment #5 from pault at gcc dot gnu dot org 2006-08-30 05:20 -------
Subject: Bug 20067
Author: pault
Date: Wed Aug 30 05:19:34 2006
New Revision: 116579
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=116579
Log:
2006-08-30 Paul Thomas <pault@gcc.gnu.org>
PR fortran/28885
REGRESSION FIX
* trans-expr.c (gfc_conv_aliased_arg): Ensure that the temp
declaration is retained for INTENT(OUT) arguments.
PR fortran/28873
REGRESSION FIX
PR fortran/20067
* resolve.c (resolve_generic_f): Make error message more
comprehensible.
(resolve_generic_s): Restructure search for specific procedures
to be similar to resolve_generic_f and change to similar error
message. Ensure that symbol reference is refreshed, in case
the search produces a NULL.
(resolve_specific_s): Restructure search, as above and as
resolve_specific_f. Ensure that symbol reference is refreshed,
in case the search produces a NULL.
PR fortran/25077
PR fortran/25102
* interface.c (check_operator_interface): Throw error if the
interface assignment tries to change intrinsic type assigments
or has less than two arguments. Also, it is an error if an
interface operator contains an alternate return.
PR fortran/24866
* parse.c (gfc_fixup_sibling_symbols): Do not modify the symbol
if it is a dummy in the contained namespace.
2006-08-30 Paul Thomas <pault@gcc.gnu.org>
PR fortran/28885
* gfortran.dg/aliasing_dummy_2.f90: New test.
PR fortran/20067
* gfortran.dg/generic_5.f90: Change error message.
PR fortran/28873
* gfortran.dg/generic_6.f90: New test.
PR fortran/25077
* gfortran.dg/redefined_intrinsic_assignment.f90: New test.
PR fortran/25102
* gfortran.dg/invalid_interface_assignment.f90: New test.
PR fortran/24866
* gfortran.dg/module_proc_external_dummy.f90: New test.
Added:
branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/aliasing_dummy_2.f90
branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/generic_6.f90
branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/invalid_interface_assignment.f90
branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/module_proc_external_dummy.f90
branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/redefined_intrinsic_assignment.f90
Modified:
branches/gcc-4_1-branch/gcc/fortran/ChangeLog
branches/gcc-4_1-branch/gcc/fortran/interface.c
branches/gcc-4_1-branch/gcc/fortran/parse.c
branches/gcc-4_1-branch/gcc/fortran/resolve.c
branches/gcc-4_1-branch/gcc/fortran/trans-expr.c
branches/gcc-4_1-branch/gcc/testsuite/ChangeLog
branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/generic_5.f90
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20067
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug fortran/20067] gfortran: misleading error message resolving generic subroutine
[not found] <bug-20067-6318@http.gcc.gnu.org/bugzilla/>
2006-08-29 7:55 ` paul dot richard dot thomas at cea dot fr
@ 2006-08-29 14:46 ` anlauf at gmx dot de
2006-08-30 5:20 ` pault at gcc dot gnu dot org
` (2 subsequent siblings)
4 siblings, 0 replies; 7+ messages in thread
From: anlauf at gmx dot de @ 2006-08-29 14:46 UTC (permalink / raw)
To: gcc-bugs
------- Comment #3 from anlauf at gmx dot de 2006-08-29 14:46 -------
(In reply to comment #2)
> Error: There is no specific subroutine for the generic 'ice' at (1)
The new error message is rather terse but OK.
-Harald
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20067
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug fortran/20067] gfortran: misleading error message resolving generic subroutine
[not found] <bug-20067-6318@http.gcc.gnu.org/bugzilla/>
@ 2006-08-29 7:55 ` paul dot richard dot thomas at cea dot fr
2006-08-29 14:46 ` anlauf at gmx dot de
` (3 subsequent siblings)
4 siblings, 0 replies; 7+ messages in thread
From: paul dot richard dot thomas at cea dot fr @ 2006-08-29 7:55 UTC (permalink / raw)
To: gcc-bugs
------- Comment #2 from paul dot richard dot thomas at cea dot fr 2006-08-29 07:55 -------
Harald,
In fixing PR28873, I have fixed this PR. Will
CALL ice(23.0) ! { dg-error "no specific subroutine" }
1
Error: There is no specific subroutine for the generic 'ice' at (1)
for gfortran.dg/generic_5.f90 do it for you?
Paul
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20067
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2006-08-30 5:31 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-02-19 13:01 [Bug fortran/20067] New: gfortran: misleading error message resolving generic subroutine anlauf at hep dot tu-darmstadt dot de
2005-02-19 13:07 ` [Bug fortran/20067] " pinskia at gcc dot gnu dot org
[not found] <bug-20067-6318@http.gcc.gnu.org/bugzilla/>
2006-08-29 7:55 ` paul dot richard dot thomas at cea dot fr
2006-08-29 14:46 ` anlauf at gmx dot de
2006-08-30 5:20 ` pault at gcc dot gnu dot org
2006-08-30 5:20 ` pault at gcc dot gnu dot org
2006-08-30 5:31 ` pault at gcc dot gnu dot org
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).