[kernel] Parsing share/libc/__fc_builtin_for_normalization.i (no preprocessing)
[kernel] Parsing tests/spec/assigns_array.c (with preprocessing)
tests/spec/assigns_array.c:9:[kernel] warning: not an assignable left value: ghost_loctable. Ignoring logic specification of function acquire_lock
/* Generated by Frama-C */
/*@ ghost int ghost_loctable[100]; */
void acquire_lock(int m)
{
  (ghost_loctable[m]) ++;
  return;
}

/*@ requires \valid(&ghost_loctable[m]);
    requires ghost_loctable[m] ≡ 1;
    ensures ghost_loctable[\old(m)] ≡ 0;
    assigns ghost_loctable[..];
 */
void release_lock(int m)
{
  (ghost_loctable[m]) --;
  return;
}

int Tab[10];
/*@ requires n < 10;
    
    behavior foo:
      assumes reset ≢ 0;
      assigns Tab[0 .. n-1];
    
    behavior bar:
      assumes reset ≡ 0;
      assigns \nothing;
 */
int h(int reset, int n)
{
  int i;
  int r;
  r = 0;
  i = 0;
  /*@ for foo: loop assigns Tab[0 .. i];
      for bar: loop assigns \nothing; */
  while (i < n) {
    r += Tab[i];
    if (reset) Tab[i] = 0;
    i ++;
  }
  return r;
}


