[Bug fortran/33542] gfortran does not detect ambigious specific names if they are the same as generic names

2007-10-14 Thread pault at gcc dot gnu dot org


--- Comment #10 from pault at gcc dot gnu dot org  2007-10-14 19:26 ---
Fixed on trunk

Paul


-- 

pault at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|REOPENED|RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33542



[Bug fortran/33542] gfortran does not detect ambigious specific names if they are the same as generic names

2007-10-12 Thread pault at gcc dot gnu dot org


--- Comment #9 from pault at gcc dot gnu dot org  2007-10-12 16:52 ---
Subject: Bug 33542

Author: pault
Date: Fri Oct 12 16:51:53 2007
New Revision: 129268

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=129268
Log:
2007-10-12  Paul Thomas  [EMAIL PROTECTED]

PR fortran/33542
* resolve.c (resolve_actual_arglist): If the actual argument is
ambiguous, then there is an error.

2007-10-12  Paul Thomas  [EMAIL PROTECTED]

PR fortran/33542
* gfortran.dg/ambiguous_specific_1.f90: New test.


Added:
trunk/gcc/testsuite/gfortran.dg/ambiguous_specific_1.f90
Modified:
trunk/gcc/fortran/ChangeLog
trunk/gcc/fortran/resolve.c
trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33542



[Bug fortran/33542] gfortran does not detect ambigious specific names if they are the same as generic names

2007-10-07 Thread patchapp at dberlin dot org


--- Comment #8 from patchapp at dberlin dot org  2007-10-07 19:05 ---
Subject: Bug number PR33542

A patch for this bug has been added to the patch tracker.
The mailing list url for the patch is
http://gcc.gnu.org/ml/gcc-patches/2007-10/msg00372.html


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33542



[Bug fortran/33542] gfortran does not detect ambigious specific names if they are the same as generic names

2007-10-03 Thread pault at gcc dot gnu dot org


--- Comment #6 from pault at gcc dot gnu dot org  2007-10-04 04:45 ---
Subject: Bug 33542

Author: pault
Date: Thu Oct  4 04:45:41 2007
New Revision: 129000

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=129000
Log:
2007-10-04  Paul Thomas  [EMAIL PROTECTED]

PR fortran/33542
* interface.c (check_interface1): Revert patch of 2007-10-02.

2007-10-04  Paul Thomas  [EMAIL PROTECTED]

PR fortran/33542
* gfortran.dg/ambiguous_specific_1.f90: Remove.


Removed:
trunk/gcc/testsuite/gfortran.dg/ambiguous_specific_1.f90
Modified:
trunk/gcc/fortran/ChangeLog
trunk/gcc/fortran/interface.c
trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33542



[Bug fortran/33542] gfortran does not detect ambigious specific names if they are the same as generic names

2007-10-03 Thread pault at gcc dot gnu dot org


--- Comment #7 from pault at gcc dot gnu dot org  2007-10-04 04:49 ---
Reverted because of PR33646

Paul


-- 

pault at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|RESOLVED|REOPENED
 Resolution|FIXED   |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33542



[Bug fortran/33542] gfortran does not detect ambigious specific names if they are the same as generic names

2007-10-02 Thread dominiq at lps dot ens dot fr


--- Comment #3 from dominiq at lps dot ens dot fr  2007-10-02 10:05 ---
Works as advertised without regression on PPC Darwin.
However there may be room for improvements for the error message:

pr33542.f90:24.9:

   USE M1
1
Error: Ambiguous interfaces 'foo2' and 'foo2' in generic interface 'foo' at (1)

and

pr33542_1.f90:24.9:

   USE M1
1
Error: Ambiguous interfaces 'foo' and 'foo' in generic interface 'foo' at (1)

g95 gives no such error for the first case and

In file pr33542_1.f90:28

   CALL FOO(10)
   1
Error: Name 'foo' at (1) is an ambiguous reference to 'foo' from module 'm1'
In file pr33542_1.f90:29

   CALL FOO(10.)
   1
Error: Name 'foo' at (1) is an ambiguous reference to 'foo' from module 'm1'
In file pr33542_1.f90:30

   CALL BAR(foo)
   1
Error: Symbol 'foo' at (1) is defined in multiple modules

for the second, though I don't really understand the ambiguity!-(is this
because the interfaces appear in different modules?)

Note that gcc version 4.0.3 (g95 0.91!) Jul 26 2007 rejects the first case, but
not gcc version 4.0.3 (g95 0.91!) Sep 25 2007, and xlf complains only about
Generic procedure names are not permitted as actual arguments. for the first
case.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33542



[Bug fortran/33542] gfortran does not detect ambigious specific names if they are the same as generic names

2007-10-02 Thread pault at gcc dot gnu dot org


--- Comment #4 from pault at gcc dot gnu dot org  2007-10-02 11:45 ---
Subject: Bug 33542

Author: pault
Date: Tue Oct  2 11:45:11 2007
New Revision: 128954

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=128954
Log:
2007-10-02  Paul Thomas  [EMAIL PROTECTED]

PR fortran/33542
* interface.c (check_interface1): Specific procedures are
always ambiguous if they have the same name.

2007-10-02  Paul Thomas  [EMAIL PROTECTED]

PR fortran/33542
* gfortran.dg/ambiguous_specific_1.f90: New test.


Added:
trunk/gcc/testsuite/gfortran.dg/ambiguous_specific_1.f90
Modified:
trunk/gcc/fortran/ChangeLog
trunk/gcc/fortran/interface.c
trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33542



[Bug fortran/33542] gfortran does not detect ambigious specific names if they are the same as generic names

2007-10-02 Thread pault at gcc dot gnu dot org


--- Comment #5 from pault at gcc dot gnu dot org  2007-10-02 11:47 ---
Fixed on trunk under 'obvious' rule.

Paul


-- 

pault at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33542



[Bug fortran/33542] gfortran does not detect ambigious specific names if they are the same as generic names

2007-09-30 Thread pault at gcc dot gnu dot org


--- Comment #2 from pault at gcc dot gnu dot org  2007-09-30 16:53 ---
(In reply to comment #1)
 Re-reading the Fortran standard, I believe now that already call foo(10) is
 invalid (although it is not ambiguous).

In fact, I believe that the ambiguity in the interface is an error; this one
liner fixes the PR -

Index: /svn/trunk/gcc/fortran/interface.c
===
*** /svn/trunk/gcc/fortran/interface.c  (revision 128873)
--- /svn/trunk/gcc/fortran/interface.c  (working copy)
*** check_interface1 (gfc_interface *p, gfc_
*** 1044,1050 
if (p-sym-name == q-sym-name  p-sym-module == q-sym-module)
  continue;

!   if (compare_interfaces (p-sym, q-sym, generic_flag))
  {
if (referenced)
  {
--- 1044,1051 
if (p-sym-name == q-sym-name  p-sym-module == q-sym-module)
  continue;

!   if (compare_interfaces (p-sym, q-sym, generic_flag)
! || p-sym-name == q-sym-name)
  {
if (referenced)
  {

It's just now regtesting.

Paul


-- 

pault at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |pault at gcc dot gnu dot org
   |dot org |
 Status|UNCONFIRMED |ASSIGNED
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2007-09-30 16:53:34
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33542



[Bug fortran/33542] gfortran does not detect ambigious specific names if they are the same as generic names

2007-09-24 Thread burnus at gcc dot gnu dot org


--- Comment #1 from burnus at gcc dot gnu dot org  2007-09-24 20:55 ---
Re-reading the Fortran standard, I believe now that already call foo(10) is
invalid (although it is not ambiguous).

Two or more accessible entities, other than generic interfaces or
defined operators, may have the same identifier only if the identifier
is not used to refer to an entity in the scoping unit. (Fortran 2003,
11.2.1 The USE statement and use association)

Thus, unless one claims that using call foo(10) refers only to the generic
interface FOO and not to the specific subroutine FOO (i.e. the identifier FOO
and FOO can be distinguished), already the call foo(10) is invalid.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33542