[Bug fortran/27554] Strange assembler produced
pault at gcc dot gnu dot org
gcc-bugzilla@gcc.gnu.org
Mon May 29 13:26:00 GMT 2006
------- Comment #2 from pault at gcc dot gnu dot org 2006-05-29 13:26 -------
My fix for pr25147 and pr25098 also fixes this problem.
The code is incorrect ; abs being interpreted as a real variable, rather than
the intrinsic of this name. The patch produces the error that a procedure was
expected, in the same way that ifort and g95 do.
Adding the declaration:
real, intrinsic :: abs
produces code that compiles and runs correctly.
Paul
eg. This does what it should:-
function bar (z)
real z
bar = sin (z)
end function bar
real, external :: bar
real, intrinsic :: exp
real, intrinsic :: abs
call foo(bar)
call foo(exp)
call foo(abs)
contains
subroutine foo (a)
real, external :: a
print *, a (-1.0)
end subroutine foo
end
--
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|NEW |ASSIGNED
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27554
More information about the Gcc-bugs
mailing list