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