Mark Emerson wrote: > The following program compiles but crashes with an integer range error > when it gets to the comparison: > > {$R+} > var > a : cardinal; > b : longint; > begin > a := 0; > b := -1; > if a > b then writeln ('OK'); > end. > > Am I missing something, or is this a compiler bug? Compile with warnings on, i.e. -vw .