[kernel] Parsing share/libc/__fc_builtin_for_normalization.i (no preprocessing)
[kernel] Parsing tests/rte/twofunc3.c (with preprocessing)
[rte] annotating function f
[rte] annotating function main
/* Generated by Frama-C */
int f(int x, int y)
{
  int __retres;
  /*@ assert rte: signed_overflow: -2147483648 ≤ x+y; */
  /*@ assert rte: signed_overflow: x+y ≤ 2147483647; */
  if (x + y != 0) {
    if (x == 2147483647) 
      if (y == 1) {
        __retres = -1;
        goto return_label;
      }
    __retres = 0;
    goto return_label;
  }
  __retres = 1;
  return_label: return __retres;
}

int main(void)
{
  int __retres;
  int x;
  int y;
  int i;
  x = 1;
  y = 2;
  /*@ assert y > x; */ ;
  i = 0;
  while (i < 20) {
    {
      int tmp;
      /*@ assert rte: signed_overflow: -2147483648 ≤ x+y; */
      /*@ assert rte: signed_overflow: x+y ≤ 2147483647; */
      tmp = x + y;
      /*@ assert rte: signed_overflow: -2147483648 ≤ x-y; */
      /*@ assert rte: signed_overflow: x-y ≤ 2147483647; */
      y = x - y;
      x = tmp;
    }
    /*@ assert rte: signed_overflow: i+1 ≤ 2147483647; */
    i ++;
  }
  /*@ assert i > 0; */ ;
  if (x > 0) 
    if (y > 0) {
      int tmp_0;
      tmp_0 = f(x,y);
      __retres = tmp_0;
      goto return_label;
    }
  __retres = 0;
  return_label: return __retres;
}


[kernel] ================================
[kernel] Rte-generated annotations for function Frama_C_bzero
[kernel] None
[kernel] Rte-generated annotations for function Frama_C_copy_block
[kernel] None
[kernel] Rte-generated annotations for function f
[kernel] For Statement if (x + y != 0) {
                         if (x == 2147483647) 
                           if (y == 1) {
                             __retres = -1;
                             goto return_label;
                           }
                         __retres = 0;
                         goto return_label;
                       }
[kernel] assert rte: signed_overflow: -2147483648 ≤ x+y;
[kernel] assert rte: signed_overflow: x+y ≤ 2147483647;
[kernel] Rte-generated annotations for function main
[kernel] For Statement tmp = x + y;
[kernel] assert rte: signed_overflow: -2147483648 ≤ x+y;
[kernel] assert rte: signed_overflow: x+y ≤ 2147483647;
[kernel] For Statement y = x - y;
[kernel] assert rte: signed_overflow: -2147483648 ≤ x-y;
[kernel] assert rte: signed_overflow: x-y ≤ 2147483647;
[kernel] For Statement i ++;
[kernel] assert rte: signed_overflow: i+1 ≤ 2147483647;
