[kernel] Parsing share/libc/__fc_builtin_for_normalization.i (no preprocessing)
[kernel] Parsing tests/spec/assigns.c (with preprocessing)
/* Generated by Frama-C */
struct list {
   int hd ;
   struct list *next ;
};
/*@
predicate reachable{L}(struct list *root, struct list *to) =
  root ≡ to ∨ (root ≢ \null ∧ reachable{L}(root->next, to));
 */
int *q;
/*@ assigns *p, q; */
void reset(int *p)
{
  *p = 0;
  return;
}

/*@ assigns *(t+(0 .. n-1)); */
void reset_array1(int *t, int n)
{
  int i;
  i = 0;
  while (i < n) {
    *(t + i) = 0;
    i ++;
  }
  return;
}

/*@ assigns *(t+(0 .. n-1)); */
void reset_array2(int *t, int n)
{
  int i;
  i = 0;
  while (i < n) {
    *(t + i) = 0;
    i ++;
  }
  return;
}

/*@ assigns *(t+{i | int i; 0 ≤ i < n}); */
void reset_array3(int *t, int n)
{
  int i;
  i = 0;
  while (i < n) {
    *(t + i) = 0;
    i ++;
  }
  return;
}

/*@ assigns {q->hd | struct list *q; reachable{Old}(p, q)}; */
void incr_list(struct list *p)
{
  while (p) {
    (p->hd) ++;
    p = p->next;
  }
  return;
}

/*@ predicate is_empty(set<int *>  s) = s ≡ \empty;

*/

