https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108612

--- Comment #1 from Martin Liška <marxin at gcc dot gnu.org> ---
I think the warning is correct:

   196  PROCEDURE dorbytes (g: GenDevIF; d: DeviceTablePtr;
   197                      to: ADDRESS;
   198                      max: CARDINAL;
   199                      VAR actual: CARDINAL) : BOOLEAN ;
   200  VAR
   201     fd: INTEGER ;
   202     c : ClientInfo ;
   203     p : PtrToLoc ;
   204     i : INTEGER ;
   205  BEGIN
   206     c := GetData(d, mid) ;
   207     WITH d^ DO
   208        IF max>0
   209        THEN <--- HERE we miss a return value for ELSE branch
   210           p := to ;
   211           IF getPushBackChar(c, p^)
   212           THEN
   213              actual := 1 ;
   214              RETURN( TRUE )
   215           END ;
   216           fd := getClientSocketFd(c) ;
   217           i := read(fd, p, max) ;
   218           IF i>=0
   219           THEN
   220              actual := i ;
   221              RETURN( TRUE )
   222           ELSE
   223              errNum := geterrno() ;
   224              actual := 0 ;
   225              RETURN( FALSE )
   226           END
   227        END
   228     END
   229  END dorbytes ;

Reply via email to