public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug fortran/26227]  New: accepts invalid fortran, different dummy types/number
@ 2006-02-11 21:23 pinskia at gcc dot gnu dot org
  2006-04-04  1:37 ` [Bug fortran/26227] " pinskia at gcc dot gnu dot org
                   ` (13 more replies)
  0 siblings, 14 replies; 15+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-02-11 21:23 UTC (permalink / raw)
  To: gcc-bugs

This is just a reminder bug to make sure that I and/or Paul T. don't lose it as
it will cause an ICE once I fix the double decl issue as we will be start to
inline this function and fail
Testcase:
function a(b)
REAL ::b
b = 2.0
a = 1.0
end function

program gg
real :: h
h = a();
end program gg


-- 
           Summary: accepts invalid fortran, different dummy types/number
           Product: gcc
           Version: 4.2.0
            Status: UNCONFIRMED
          Keywords: accepts-invalid
          Severity: normal
          Priority: P3
         Component: fortran
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: pinskia at gcc dot gnu dot org


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


^ permalink raw reply	[flat|nested] 15+ messages in thread

* [Bug fortran/26227] accepts invalid fortran, different dummy types/number
  2006-02-11 21:23 [Bug fortran/26227] New: accepts invalid fortran, different dummy types/number pinskia at gcc dot gnu dot org
@ 2006-04-04  1:37 ` pinskia at gcc dot gnu dot org
  2006-04-04  4:42 ` paulthomas2 at wanadoo dot fr
                   ` (12 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-04-04  1:37 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from pinskia at gcc dot gnu dot org  2006-04-04 01:37 -------
Here is another testcase (which ICEs currently but for a different reason):
program main
  character (5) :: a = 'hello'
  call test ((/a/))
end program main

subroutine test (a)
  character (5) :: a
  if (a .ne. 'hello') call abort
end subroutine test


The corrected form of this testcase is:
program main
  character (5) :: a = 'hello'
  call test ((/a/))
end program main

subroutine test (a)
  character (5) :: a(1)
  if (a(1) ne. 'hello') call abort
end subroutine test

-----
This testcase comes from HJL not even thinking about types of arguments to
subroutines (IFort accepts the code too though Lahey's rejects it).  I know
just about as much Fortran as HJL does (maybe I can guess about how stuff like
this is just wrong).


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2006-04-04 01:37:33
               date|                            |


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


^ permalink raw reply	[flat|nested] 15+ messages in thread

* [Bug fortran/26227] accepts invalid fortran, different dummy types/number
  2006-02-11 21:23 [Bug fortran/26227] New: accepts invalid fortran, different dummy types/number pinskia at gcc dot gnu dot org
  2006-04-04  1:37 ` [Bug fortran/26227] " pinskia at gcc dot gnu dot org
@ 2006-04-04  4:42 ` paulthomas2 at wanadoo dot fr
  2006-05-13 22:26 ` pinskia at gcc dot gnu dot org
                   ` (11 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: paulthomas2 at wanadoo dot fr @ 2006-04-04  4:42 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #2 from paulthomas2 at wanadoo dot fr  2006-04-04 04:42 -------
Subject: Re:  accepts invalid fortran, different dummy
 types/number

pinskia at gcc dot gnu dot org wrote:

>------- Comment #1 from pinskia at gcc dot gnu dot org  2006-04-04 01:37 -------
>Here is another testcase (which ICEs currently but for a different reason):
>program main
>  character (5) :: a = 'hello'
>  call test ((/a/))
>end program main
>
>  
>

I am very much aware of this, its friends and its cousins.

Paul


-- 


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


^ permalink raw reply	[flat|nested] 15+ messages in thread

* [Bug fortran/26227] accepts invalid fortran, different dummy types/number
  2006-02-11 21:23 [Bug fortran/26227] New: accepts invalid fortran, different dummy types/number pinskia at gcc dot gnu dot org
  2006-04-04  1:37 ` [Bug fortran/26227] " pinskia at gcc dot gnu dot org
  2006-04-04  4:42 ` paulthomas2 at wanadoo dot fr
@ 2006-05-13 22:26 ` pinskia at gcc dot gnu dot org
  2006-05-13 23:05 ` pinskia at gcc dot gnu dot org
                   ` (10 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-05-13 22:26 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #3 from pinskia at gcc dot gnu dot org  2006-05-13 22:25 -------
*** Bug 27594 has been marked as a duplicate of this bug. ***


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |tobias dot burnus at physik
                   |                            |dot fu-berlin dot de


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


^ permalink raw reply	[flat|nested] 15+ messages in thread

* [Bug fortran/26227] accepts invalid fortran, different dummy types/number
  2006-02-11 21:23 [Bug fortran/26227] New: accepts invalid fortran, different dummy types/number pinskia at gcc dot gnu dot org
                   ` (2 preceding siblings ...)
  2006-05-13 22:26 ` pinskia at gcc dot gnu dot org
@ 2006-05-13 23:05 ` pinskia at gcc dot gnu dot org
  2006-05-13 23:19 ` pinskia at gcc dot gnu dot org
                   ` (9 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-05-13 23:05 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #4 from pinskia at gcc dot gnu dot org  2006-05-13 23:05 -------
*** Bug 27586 has been marked as a duplicate of this bug. ***


-- 


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


^ permalink raw reply	[flat|nested] 15+ messages in thread

* [Bug fortran/26227] accepts invalid fortran, different dummy types/number
  2006-02-11 21:23 [Bug fortran/26227] New: accepts invalid fortran, different dummy types/number pinskia at gcc dot gnu dot org
                   ` (3 preceding siblings ...)
  2006-05-13 23:05 ` pinskia at gcc dot gnu dot org
@ 2006-05-13 23:19 ` pinskia at gcc dot gnu dot org
  2006-09-13 16:11 ` tobi at gcc dot gnu dot org
                   ` (8 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-05-13 23:19 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #5 from pinskia at gcc dot gnu dot org  2006-05-13 23:18 -------
*** Bug 27587 has been marked as a duplicate of this bug. ***


-- 


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


^ permalink raw reply	[flat|nested] 15+ messages in thread

* [Bug fortran/26227] accepts invalid fortran, different dummy types/number
  2006-02-11 21:23 [Bug fortran/26227] New: accepts invalid fortran, different dummy types/number pinskia at gcc dot gnu dot org
                   ` (4 preceding siblings ...)
  2006-05-13 23:19 ` pinskia at gcc dot gnu dot org
@ 2006-09-13 16:11 ` tobi at gcc dot gnu dot org
  2006-09-13 16:12 ` tobi at gcc dot gnu dot org
                   ` (7 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: tobi at gcc dot gnu dot org @ 2006-09-13 16:11 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #6 from tobi at gcc dot gnu dot org  2006-09-13 16:11 -------
*** Bug 28443 has been marked as a duplicate of this bug. ***


-- 

tobi at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |cyan+gcc at compsoc dot
                   |                            |nuigalway dot ie


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


^ permalink raw reply	[flat|nested] 15+ messages in thread

* [Bug fortran/26227] accepts invalid fortran, different dummy types/number
  2006-02-11 21:23 [Bug fortran/26227] New: accepts invalid fortran, different dummy types/number pinskia at gcc dot gnu dot org
                   ` (5 preceding siblings ...)
  2006-09-13 16:11 ` tobi at gcc dot gnu dot org
@ 2006-09-13 16:12 ` tobi at gcc dot gnu dot org
  2007-03-12 19:09 ` burnus at gcc dot gnu dot org
                   ` (6 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: tobi at gcc dot gnu dot org @ 2006-09-13 16:12 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #7 from tobi at gcc dot gnu dot org  2006-09-13 16:12 -------
*** Bug 28809 has been marked as a duplicate of this bug. ***


-- 

tobi at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jchodera at gmail dot com


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


^ permalink raw reply	[flat|nested] 15+ messages in thread

* [Bug fortran/26227] accepts invalid fortran, different dummy types/number
  2006-02-11 21:23 [Bug fortran/26227] New: accepts invalid fortran, different dummy types/number pinskia at gcc dot gnu dot org
                   ` (6 preceding siblings ...)
  2006-09-13 16:12 ` tobi at gcc dot gnu dot org
@ 2007-03-12 19:09 ` burnus at gcc dot gnu dot org
  2007-04-05 12:27 ` burnus at gcc dot gnu dot org
                   ` (5 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: burnus at gcc dot gnu dot org @ 2007-03-12 19:09 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #8 from burnus at gcc dot gnu dot org  2007-03-12 19:09 -------
*** Bug 31149 has been marked as a duplicate of this bug. ***


-- 

burnus at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |bartoldeman at users dot
                   |                            |sourceforge dot net


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


^ permalink raw reply	[flat|nested] 15+ messages in thread

* [Bug fortran/26227] accepts invalid fortran, different dummy types/number
  2006-02-11 21:23 [Bug fortran/26227] New: accepts invalid fortran, different dummy types/number pinskia at gcc dot gnu dot org
                   ` (7 preceding siblings ...)
  2007-03-12 19:09 ` burnus at gcc dot gnu dot org
@ 2007-04-05 12:27 ` burnus at gcc dot gnu dot org
  2007-06-01 15:21 ` burnus at gcc dot gnu dot org
                   ` (4 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: burnus at gcc dot gnu dot org @ 2007-04-05 12:27 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #9 from burnus at gcc dot gnu dot org  2007-04-05 13:27 -------
This probably will work automatically if inter-file checking is implemented,
but if not, here is an invalid example which should be rejected:
---------
      SUBROUTINE PHLOAD (READER,*)
      IMPLICIT NONE
      EXTERNAL         READER
      CALL READER (*1)
 1    RETURN 1
      END SUBROUTINE

      program test
      EXTERNAL R
      call PHLOAD (R, 1)
      CALL PHLOAD (R, 2)
      END program test
---------

Should give the error (cf. NAG f95):

Error: y.f: Argument no. 2 in reference to PHLOAD from TEST is not a label


-- 


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


^ permalink raw reply	[flat|nested] 15+ messages in thread

* [Bug fortran/26227] accepts invalid fortran, different dummy types/number
  2006-02-11 21:23 [Bug fortran/26227] New: accepts invalid fortran, different dummy types/number pinskia at gcc dot gnu dot org
                   ` (8 preceding siblings ...)
  2007-04-05 12:27 ` burnus at gcc dot gnu dot org
@ 2007-06-01 15:21 ` burnus at gcc dot gnu dot org
  2009-03-30 19:36 ` pault at gcc dot gnu dot org
                   ` (3 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: burnus at gcc dot gnu dot org @ 2007-06-01 15:21 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #10 from burnus at gcc dot gnu dot org  2007-06-01 15:21 -------
*** Bug 32170 has been marked as a duplicate of this bug. ***


-- 

burnus at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |mikael dot morin at tele2
                   |                            |dot fr


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


^ permalink raw reply	[flat|nested] 15+ messages in thread

* [Bug fortran/26227] accepts invalid fortran, different dummy types/number
  2006-02-11 21:23 [Bug fortran/26227] New: accepts invalid fortran, different dummy types/number pinskia at gcc dot gnu dot org
                   ` (9 preceding siblings ...)
  2007-06-01 15:21 ` burnus at gcc dot gnu dot org
@ 2009-03-30 19:36 ` pault at gcc dot gnu dot org
  2009-03-30 22:01 ` dominiq at lps dot ens dot fr
                   ` (2 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: pault at gcc dot gnu dot org @ 2009-03-30 19:36 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #11 from pault at gcc dot gnu dot org  2009-03-30 19:35 -------
Subject: Bug 26227

Author: pault
Date: Mon Mar 30 19:35:14 2009
New Revision: 145314

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=145314
Log:
2009-03-30  Paul Thomas  <pault@gcc.gnu.org>

        PR fortran/22571
        PR fortran/26227
        PR fortran/24886
        * symbol.c : Add gfc_global_ns_list.
        * decl.c (add_global_entry): Set the namespace ('ns') field.
        * gfortran.h : Add the resolved field to gfc_namespace. Add the
        namespace ('ns') field to gfc_gsymbol.  Add flag_whole_file to
        gfc_option_t.  Add the prototype for gfc_free_dt_list.
        * lang.opt : Add the whole-file option.
        * invoke.texi : Document the whole-file option.
        * resolve.c (resolve_global_procedure): If the fwhole-file
        option is set, reorder gsymbols to ensure that translation is
        in the right order.  Resolve the gsymbol's namespace if that
        has not occurred and then check interfaces.
        (resolve_function): Move call to resolve_global_procedure.
        (resolve_call): The same.
        (resolve_codes): Store the current labels_obstack.
        (gfc_resolve) : Return if the namespace is already resolved.
        trans-decl.c (gfc_get_extern_function_decl): If the whole_file
        option is selected, use the backend_decl of a gsymbol, if it is
        available.
        parse.c (add_global_procedure, add_global_program): If the flag
        whole-file is set, add the namespace to the gsymbol.
        (gfc_parse_file): On -fwhole-file, put procedure namespaces on
        the global namespace list.  Rearrange to do resolution of all
        the procedures in a file, followed by their translation.
        * options.c (gfc_init_options): Add -fwhole-file.
        (gfc_handle_option): The same.

2009-03-30  Paul Thomas  <pault@gcc.gnu.org>

        PR fortran/22571
        * gfortran.dg/whole_file_1.f90: New test.
        PR fortran/26227
        * gfortran.dg/whole_file_2.f90: New test.
        * gfortran.dg/whole_file_3.f90: New test.
        PR fortran/24886
        * gfortran.dg/whole_file_4.f90: New test.


Added:
    trunk/gcc/testsuite/gfortran.dg/whole_file_1.f90
    trunk/gcc/testsuite/gfortran.dg/whole_file_2.f90
    trunk/gcc/testsuite/gfortran.dg/whole_file_3.f90
    trunk/gcc/testsuite/gfortran.dg/whole_file_4.f90
Modified:
    trunk/gcc/fortran/ChangeLog
    trunk/gcc/fortran/decl.c
    trunk/gcc/fortran/gfortran.h
    trunk/gcc/fortran/invoke.texi
    trunk/gcc/fortran/lang.opt
    trunk/gcc/fortran/options.c
    trunk/gcc/fortran/parse.c
    trunk/gcc/fortran/resolve.c
    trunk/gcc/fortran/symbol.c
    trunk/gcc/fortran/trans-array.c
    trunk/gcc/fortran/trans-decl.c
    trunk/gcc/testsuite/ChangeLog


-- 


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


^ permalink raw reply	[flat|nested] 15+ messages in thread

* [Bug fortran/26227] accepts invalid fortran, different dummy types/number
  2006-02-11 21:23 [Bug fortran/26227] New: accepts invalid fortran, different dummy types/number pinskia at gcc dot gnu dot org
                   ` (10 preceding siblings ...)
  2009-03-30 19:36 ` pault at gcc dot gnu dot org
@ 2009-03-30 22:01 ` dominiq at lps dot ens dot fr
  2010-05-19 21:54 ` tkoenig at gcc dot gnu dot org
  2010-05-24 14:03 ` dfranke at gcc dot gnu dot org
  13 siblings, 0 replies; 15+ messages in thread
From: dominiq at lps dot ens dot fr @ 2009-03-30 22:01 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #12 from dominiq at lps dot ens dot fr  2009-03-30 22:01 -------
After the commit in comment #11, the following code gives an ICE with
-fwhole-file:

[ibook-dhum] f90/bug% cat arr_fun.f90
function test(n)
real, dimension(2) :: test
integer            :: n
test = n
! print *, test
return
end function test
program arr
real, dimension(2) :: res
res = test(2)
print *, res
end program
[ibook-dhum] f90/bug% gfc -fwhole-file arr_fun.f90
arr_fun.f90: In function 'arr':
arr_fun.f90:8: internal compiler error: in fold_convert, at fold-const.c:2547
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.

It's a little bit late for further investigation, but the flag is probably the
cause of 11 ICE in my tests.
I may have also false positives or strange error messages.

I'll try to sort my mess tomorrow morning.


-- 


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


^ permalink raw reply	[flat|nested] 15+ messages in thread

* [Bug fortran/26227] accepts invalid fortran, different dummy types/number
  2006-02-11 21:23 [Bug fortran/26227] New: accepts invalid fortran, different dummy types/number pinskia at gcc dot gnu dot org
                   ` (11 preceding siblings ...)
  2009-03-30 22:01 ` dominiq at lps dot ens dot fr
@ 2010-05-19 21:54 ` tkoenig at gcc dot gnu dot org
  2010-05-24 14:03 ` dfranke at gcc dot gnu dot org
  13 siblings, 0 replies; 15+ messages in thread
From: tkoenig at gcc dot gnu dot org @ 2010-05-19 21:54 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #13 from tkoenig at gcc dot gnu dot org  2010-05-19 21:53 -------
This is now

real, dimension(2) :: test
integer            :: n
test = n
! print *, test
return
end function test
program arr
real, dimension(2) :: res
res = test(2)
print *, res
end program
ig25@linux-fd1f:/tmp> gfortran -fwhole-file gurgl.f90
gurgl.f90:10.6:

res = test(2)
      1
Fehler: The reference to function 'test' at (1) either needs an explicit
INTERFACE or the rank is incorrect

Should we close this?


-- 

tkoenig at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |tkoenig at gcc dot gnu dot
                   |                            |org


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


^ permalink raw reply	[flat|nested] 15+ messages in thread

* [Bug fortran/26227] accepts invalid fortran, different dummy types/number
  2006-02-11 21:23 [Bug fortran/26227] New: accepts invalid fortran, different dummy types/number pinskia at gcc dot gnu dot org
                   ` (12 preceding siblings ...)
  2010-05-19 21:54 ` tkoenig at gcc dot gnu dot org
@ 2010-05-24 14:03 ` dfranke at gcc dot gnu dot org
  13 siblings, 0 replies; 15+ messages in thread
From: dfranke at gcc dot gnu dot org @ 2010-05-24 14:03 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #14 from dfranke at gcc dot gnu dot org  2010-05-24 14:03 -------
(In reply to comment #13)
> Should we close this?

Yes, this is testcase gfortran.dg/whole_file_2.f90.
Closing.


-- 

dfranke at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED
   Target Milestone|---                         |4.5.0


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


^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2010-05-24 14:03 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-02-11 21:23 [Bug fortran/26227] New: accepts invalid fortran, different dummy types/number pinskia at gcc dot gnu dot org
2006-04-04  1:37 ` [Bug fortran/26227] " pinskia at gcc dot gnu dot org
2006-04-04  4:42 ` paulthomas2 at wanadoo dot fr
2006-05-13 22:26 ` pinskia at gcc dot gnu dot org
2006-05-13 23:05 ` pinskia at gcc dot gnu dot org
2006-05-13 23:19 ` pinskia at gcc dot gnu dot org
2006-09-13 16:11 ` tobi at gcc dot gnu dot org
2006-09-13 16:12 ` tobi at gcc dot gnu dot org
2007-03-12 19:09 ` burnus at gcc dot gnu dot org
2007-04-05 12:27 ` burnus at gcc dot gnu dot org
2007-06-01 15:21 ` burnus at gcc dot gnu dot org
2009-03-30 19:36 ` pault at gcc dot gnu dot org
2009-03-30 22:01 ` dominiq at lps dot ens dot fr
2010-05-19 21:54 ` tkoenig at gcc dot gnu dot org
2010-05-24 14:03 ` dfranke 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).