* [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