Hi all.
Here's another spurious(?) uninitialized warning. As the full range is
implied, the question is, if this a fortran or a middle-end problem:
$> cat range.f90
FUNCTION f(n)
INTEGER, INTENT(in) :: n
REAL :: f
SELECT CASE (n)
CASE ( :-1); f = -1.0
CASE (0); f = 0.0
CASE (1: ); f = 1.0
END SELECT
END FUNCTION
$> gfortran-svn -c -O -Wall -fdump-tree-... range.f90
range.f90: In function 'f':
range.f90:1: warning: '__result_f' may be used uninitialized in this function
After optimization, the dump shows:
<bb 2>:
switch (*n;) <default: <L6>, case -2147483648 ... -1: <L7>, case 0: L.3,
case 1 ... 2147483647: L.4>
Is there any way that 'default' may be reached?
Any pointers how to silence this?
Thanks
Daniel