diff -r dd76ce4a7e22 -r 99b45154eb2c stage3/array_range_check.cc --- a/stage3/array_range_check.cc Thu Aug 30 13:06:54 2012 +0100 +++ b/stage3/array_range_check.cc Thu Aug 30 13:08:02 2012 +0100 @@ -161,7 +161,7 @@ {STAGE3_ERROR(0, symbol, symbol, "Array access out of bounds (should be <= %"PRIu64").", GET_CVALUE(uint64, dimension->upper_limit)); continue;} if ( VALID_CVALUE(uint64, l->elements[i]) && VALID_CVALUE( int64, dimension->upper_limit)) - if ( cmp_unsigned_signed(GET_CVALUE(uint64, l->elements[i]), GET_CVALUE( int64, dimension->upper_limit)) < 0 ) + if ( cmp_unsigned_signed(GET_CVALUE(uint64, l->elements[i]), GET_CVALUE( int64, dimension->upper_limit)) > 0 ) {STAGE3_ERROR(0, symbol, symbol, "Array access out of bounds (should be <= %"PRId64").", GET_CVALUE( int64, dimension->upper_limit)); continue;} }