[kernel] Parsing share/libc/__fc_builtin_for_normalization.i (no preprocessing)
[kernel] Parsing tests/misc/struct2.i (no preprocessing)
[value] Analyzing a complete application starting at f_precis
[value] Computing initial state
[value] Initial state computed
[value] Values of globals at initialization
  NULL[rbits 32768 to 65543] ∈ [--..--]
  tabst[0..9] ∈ {0}
  tabst2[0..9] ∈ {0}
  tab_s[0..1] ∈ {0}
  tab_s1[0..1] ∈ {0}
  tab_s2[0..1] ∈ {0}
  tab_s3[0..1] ∈ {0}
  tab_s4[0..1] ∈ {0}
  s1 ∈ {0}
  s2 ∈ {0}
  s4 ∈ {0}
  s5 ∈ {0}
  s6 ∈ {0}
  s8 ∈ {0}
  s7 ∈ {0}
  tabl[0..9] ∈ {0}
  tab1[0..1] ∈ {0}
  tab2[0..1] ∈ {0}
  tab3[0..1] ∈ {0}
  tab4[0..1] ∈ {0}
  tab5[0..1] ∈ {0}
  tab6[0..1] ∈ {0}
  p ∈ {0}
  p2 ∈ {0}
  p3 ∈ {0}
  p4 ∈ {0}
  p5 ∈ {0}
  p6 ∈ {0}
  p7 ∈ {0}
  q ∈ {0}
  r ∈ {0}
  s ∈ {0}
  t ∈ {0}
  a ∈ {0}
  b ∈ {0}
  v ∈ [--..--]
  Tab[0..9] ∈ {0}
  P ∈ {0}
tests/misc/struct2.i:74:[kernel] warning: accessing out of bounds index [-2147483648..2147483647]. assert 0 ≤ i;
tests/misc/struct2.i:74:[kernel] warning: accessing out of bounds index [-2147483648..2147483647]. assert i < 2;
tests/misc/struct2.i:76:[kernel] warning: signed overflow. assert i+j ≤ 2147483647;
tests/misc/struct2.i:76:[kernel] warning: accessing out of bounds index [-2147483648..2147483647].
                  assert 0 ≤ (int)(i+j);
tests/misc/struct2.i:76:[kernel] warning: accessing out of bounds index [-2147483648..2147483647].
                  assert (int)(i+j) < 2;
tests/misc/struct2.i:78:[kernel] warning: accessing out of bounds index {0; 2}. assert tab2[i] < 2;
tests/misc/struct2.i:80:[kernel] warning: accessing out of bounds index {0; 2}. assert tab2[1] < 2;
tests/misc/struct2.i:82:[kernel] warning: signed overflow. assert tab2[i]+j ≤ 2147483647;
tests/misc/struct2.i:82:[kernel] warning: accessing out of bounds index [-2147483648..2147483647].
                  assert 0 ≤ (int)(tab2[i]+j);
tests/misc/struct2.i:82:[kernel] warning: accessing out of bounds index [-2147483648..2147483647].
                  assert (int)(tab2[i]+j) < 2;
tests/misc/struct2.i:99:[kernel] warning: accessing out of bounds index [-2147483648..2147483647].
                  assert 0 ≤ (int)(tabl[i]+x);
tests/misc/struct2.i:99:[kernel] warning: accessing out of bounds index [-2147483648..2147483647].
                  assert (int)(tabl[i]+x) < 2;
tests/misc/struct2.i:117:[kernel] warning: signed overflow. assert -2147483648 ≤ *p+x;
tests/misc/struct2.i:117:[kernel] warning: signed overflow. assert *p+x ≤ 2147483647;
tests/misc/struct2.i:124:[kernel] warning: out of bounds read. assert \valid_read(r);
tests/misc/struct2.i:124:[kernel] warning: all target addresses were invalid. This path is assumed to be dead.
tests/misc/struct2.i:130:[kernel] warning: out of bounds read. assert \valid_read(p3+2);
tests/misc/struct2.i:138:[kernel] warning: signed overflow. assert *((int *)0x1020)+i ≤ 2147483647;
tests/misc/struct2.i:149:[kernel] warning: out of bounds write. assert \valid(*t+i);
tests/misc/struct2.i:185:[kernel] warning: signed overflow. assert i+j ≤ 2147483647;
tests/misc/struct2.i:185:[kernel] warning: accessing out of bounds index [-2147483648..2147483647].
                  assert 0 ≤ (int)(i+j);
tests/misc/struct2.i:185:[kernel] warning: accessing out of bounds index [-2147483648..2147483647].
                  assert (int)(i+j) < 2;
tests/misc/struct2.i:185:[kernel] warning: accessing out of bounds index [-2147483648..2147483647]. assert 0 ≤ l;
tests/misc/struct2.i:185:[kernel] warning: accessing out of bounds index [-2147483648..2147483647]. assert l < 2;
tests/misc/struct2.i:185:[kernel] warning: signed overflow. assert -2147483648 ≤ tab3[l]+m;
tests/misc/struct2.i:185:[kernel] warning: signed overflow. assert tab3[l]+m ≤ 2147483647;
tests/misc/struct2.i:185:[kernel] warning: accessing out of bounds index [-2147483648..2147483647].
                  assert 0 ≤ (int)(tab3[l]+m);
tests/misc/struct2.i:185:[kernel] warning: accessing out of bounds index [-2147483648..2147483647].
                  assert (int)(tab3[l]+m) < 10;
tests/misc/struct2.i:185:[kernel] warning: accessing out of bounds index [-2147483648..2147483647]. assert 0 ≤ k;
tests/misc/struct2.i:185:[kernel] warning: accessing out of bounds index [-2147483648..2147483647]. assert k < 2;
[value] Recording results for f_precis
[value] done for function f_precis
tests/misc/struct2.i:124:[value] Assertion 'Value,mem_access' got final status invalid.
tests/misc/struct2.i:130:[value] Assertion 'Value,mem_access' got final status invalid.
[value] ====== VALUES COMPUTED ======
[value] Values at end of function f_precis:
  NULL[rbits 32768 to 32799] ∈ {{ NULL + [--..--] ; (? *)&a }}
      [rbits 32800 to 65543] ∈ [--..--]
  tab_s[0] ∈ {0}
       [1].a ∈ [--..--]
       [1]{.d[0..9]; .b; .e[0..9]; .c} ∈ {0}
  tab_s1[0..1] ∈ {0}
  tab_s2[0].a ∈ [--..--]
        {[0]{.d[0..9]; .b; .e[0..9]; .c}; [1]} ∈ {0}
  tab_s3[0].a ∈ [--..--]
        {[0]{.d[0..9]; .b; .e[0..9]; .c}; [1]} ∈ {0}
  tab_s4[0].a ∈ [--..--]
        [0]{.d[0..9]; .b; .e[0..9]; .c} ∈ {0}
        [1].a ∈ [--..--]
        [1]{.d[0..9]; .b; .e[0..9]; .c} ∈ {0}
  s1.a ∈ [--..--]
    .d[0] ∈ {0}
    .d[1] ∈ [--..--]
    {.d[2..9]; .b; .e[0..9]} ∈ {0}
    .c ∈ {{ &s2 }}
  s2{.a; .d[0..1]} ∈ [--..--]
    .d[2..9] ∈ {0}
    .b.a ∈ [--..--]
    .b.b ∈ {{ &a }}
    .e[0..9] ∈ {0}
    .c ∈ {{ &s2 }}
  s4{.a; .d[0..9]; .b} ∈ {0}
    .e[0].a ∈ [-128..127]
    {.e{[0].b; [1..9]}; .c} ∈ {0}
  s8.a ∈ {0}
    .b ∈ {{ &a }}
  s7 ∈ {0}
  tab1[0..1] ∈ {2}
  tab2[0] ∈ {0; 2}
      [1] ∈ {0}
  tab3[0..1] ∈ [--..--]
  tab4[0] ∈ {2}
      [1] ∈ {0}
  tab5[0] ∈ {2}
      [1] ∈ {0}
  tab6[0..1] ∈ {0; 2}
  p ∈ {{ &a }}
  p2 ∈ {{ &tab1[2] }}
  p3 ∈ {{ &tab1{[0], [1]} }}
  p4 ∈ {{ &a }}
  p5 ∈ {4096}
  p6 ∈ {4112}
  p7 ∈ {{ &tab1[3] }}
  q ∈ {4096}
  r ∈ {0}
  s ∈ {4144}
  t ∈ {4176}
  a ∈ [--..--]
  b ∈ {0}
[from] Computing for function f_precis
[from] Done for function f_precis
[from] ====== DEPENDENCIES COMPUTED ======
       These dependencies hold at termination for the executions that terminate:
[from] Function f_precis:
  NULL{[4096..4099]; [4144..4147]} FROM NULL[4176..4179]; i
      {[4100..4111]; [4116..4143]; [4148..8192]}
      FROM NULL[4176..4179]; i (and SELF)
      [4112..4115] FROM NULL{[4128..4131]; [4176..4179]}; i
  tab_s[0] FROM s2
       [1].a FROM x
  tab_s1{[0].b; [1].b} FROM s8; i (and SELF)
  tab_s2[0] FROM s2; s8; tabl[0]; x
  tab_s3[0].a FROM tabl[1]; x
  tab_s4{[0].a; [1].a} FROM tabl[0..1]; x; i (and SELF)
  s1{.a; .d[1]} FROM x
    {.d[0]; .d[2..9]; .e[0..9]} FROM s2
    .b FROM s8
    .c FROM \nothing
  s2{.a; .b.a} FROM x
    .d[0..1] FROM x; i (and SELF)
    {.b.b; .c} FROM \nothing
  s4.e[0].a
    FROM NULL{[4176..4179]; [4192]; [4200]}; tabst[2].a;
         tabst2{[0].a; [1].a; [2].a; [3].a; [4].a; [5].a; [6].a; [7].a;
                [8].a; [9].a};
          s5.e[0].b; tab2[0..1]; tab3[0..1]; i; j; k; l; m
  s8.b FROM \nothing
  s7 FROM s6.b
  tab1[0..1] FROM \nothing
  tab2[0..1] FROM i (and SELF)
  tab3[0..1] FROM i; j; k (and SELF)
  tab4[0] FROM tab2[0..1]; i
  tab5[0] FROM tab2[1]; i
  tab6[0..1] FROM tab2[0..1]; i; j (and SELF)
  p FROM \nothing
  p2 FROM \nothing
  p3 FROM i
  p4 FROM \nothing
  p5 FROM \nothing
  p6 FROM \nothing
  p7 FROM \nothing
  q FROM \nothing
  r FROM \nothing
  s FROM \nothing
  t FROM \nothing
  a FROM x
  b FROM v; i (and SELF)
[from] ====== END OF DEPENDENCIES ======
[inout] Out (internal) for function f_precis:
          NULL[4096..8192]; tab_s{[0]; [1].a}; tab_s1{[0].b; [1].b}; tab_s2[0];
          tab_s3[0].a; tab_s4{[0].a; [1].a}; s1; s2{{.a; .d[0..1]}; .b; .c};
          s4.e[0].a; s8.b; s7; tab1[0..1]; tab2[0..1]; tab3[0..1]; tab4[0]; tab5[0];
          tab6[0..1]; p; p2; p3; p4; p5; p6; p7; q; r; s; t; a; b
[inout] Inputs for function f_precis:
          NULL{[4128..4131]; [4176..4179]; [4192]; [4200]}; tabst[2].a;
          tabst2{[0].a; [1].a; [2].a; [3].a; [4].a; [5].a; [6].a; [7].a; [8].a;
                 [9].a}; s1; s2; s5.e[0].b; s6.b; s8; tabl[0..1]; tab1[0..1];
          tab2[0..1]; tab3[0..1]; p; p2; p3; p6; q; r; s; t; a; v
