[Bug fortran/29400] ANY and COUNT used on parameter arrays
fxcoudert at gcc dot gnu dot org
gcc-bugzilla@gcc.gnu.org
Tue Feb 6 13:42:00 GMT 2007
------- Comment #4 from fxcoudert at gcc dot gnu dot org 2007-02-06 13:41 -------
I was wrong: the bug basically happens for all intrinsics which gfc_walk_expr
one of their arguments and then simply assert that the ss != gfc_ss_terminator.
This is a wrong thing to do for constant arguments. I audited all the
intrinsics to find out which I could lead to an ICE, and here's the complete
list:
integer,parameter :: i(1,1) = 0, j(2) = 42
logical :: l
! print *, maxloc(j+j,mask=(j==2))
print *, size(j+j)
print *, minval(j+j)
print *, minval(j,mask=(j==2))
print *, maxval(j+j)
print *, maxval(j,mask=(j==2))
print *, sum(j,mask=j==2)
print *, sum(j+j)
print *, product(j+j)
print *, ubound(j+j)
print *, lbound(j+j)
print *, dot_product(j+j,j)
print *, dot_product(j,j+j)
print *, count(i==1)
print *, any(i==1)
print *, all(i==1)
end
I couldn't make maxloc/minloc ICE, although I'm pretty sure there should be a
way to get it.
--
fxcoudert at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
AssignedTo|fxcoudert at gcc dot gnu dot|unassigned at gcc dot gnu
|org |dot org
Status|ASSIGNED |NEW
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29400
More information about the Gcc-bugs
mailing list