[kernel] Parsing share/libc/__fc_builtin_for_normalization.i (no preprocessing)
[kernel] Parsing tests/slicing/bts335b.c (with preprocessing)
[value] Analyzing a complete application starting at main
[value] Computing initial state
[value] Initial state computed
[value] Values of globals at initialization
  X ∈ {0}
  Y ∈ {0}
[value] computing for function f <- main.
        Called from tests/slicing/bts335b.c:20.
tests/slicing/bts335b.c:16:[kernel] warning: signed overflow. assert z+1 ≤ 2147483647;
[value] computing for function g <- f <- main.
        Called from tests/slicing/bts335b.c:17.
[value] Recording results for g
[from] Computing for function g
[from] Done for function g
[value] Done for function g
[value] Recording results for f
[from] Computing for function f
[from] Done for function f
[value] Done for function f
tests/slicing/bts335b.c:21:[kernel] warning: signed overflow. assert j+1 ≤ 2147483647;
[value] computing for function g <- main.
        Called from tests/slicing/bts335b.c:22.
[value] Recording results for g
[from] Computing for function g
[from] Done for function g
[value] Done for function g
tests/slicing/bts335b.c:22:[kernel] warning: signed overflow. assert -2147483648 ≤ r+tmp_0;
                                   (tmp_0 from g(2, w, b, j))
tests/slicing/bts335b.c:22:[kernel] warning: signed overflow. assert r+tmp_0 ≤ 2147483647;
                                   (tmp_0 from g(2, w, b, j))
[value] Recording results for main
[from] Computing for function main
[from] Done for function main
[value] done for function main
[from] ====== DISPLAYING CALLWISE DEPENDENCIES ======
[from] call to g at tests/slicing/bts335b.c:17 (by f):
  X FROM c; x
  Y FROM c; x
  \result FROM c; x
[from] call to f at tests/slicing/bts335b.c:20 (by main):
  X FROM c; x
  Y FROM c; x
  \result FROM c; x
[from] call to g at tests/slicing/bts335b.c:22 (by main):
  X FROM c; y
  Y FROM c; y
  \result FROM c; y
[from] entry point:
  X FROM b
  Y FROM b
  \result FROM v; b
[from] ====== END OF CALLWISE DEPENDENCIES ======
[slicing] slicing requests in progress...
[slicing] making slicing project 'Slicing'...
[slicing] done (making slicing project 'Slicing').
[slicing] interpreting slicing requests from the command line...
[pdg] computing for function main
[pdg] done for function main
[slicing] applying all slicing requests...
[slicing] applying 0 actions...
[slicing] done (applying all slicing requests).
[slicing] done (interpreting slicing requests from the command line).
[slicing] applying all slicing requests...
[slicing] applying 1 actions...
[slicing] applying actions: 1/1...
[slicing] applying sub action...
[pdg] computing for function g
[pdg] done for function g
[slicing] applying sub action...
[slicing] applying sub action...
[slicing] applying sub action...
[slicing] applying sub action...
[slicing] applying sub action...
[pdg] computing for function f
[pdg] done for function f
[slicing] applying sub action...
[slicing] applying sub action...
[slicing] applying sub action...
[slicing] applying sub action...
[slicing] applying sub action...
[slicing] applying sub action...
[slicing] applying sub action...
[slicing] applying sub action...
[slicing] applying sub action...
[slicing] done (applying 1 actions.
[slicing] done (applying all slicing requests).
[slicing] exporting project to 'Slicing export'...
[slicing] applying all slicing requests...
[slicing] applying 0 actions...
[slicing] done (applying all slicing requests).
[sparecode] remove unused global declarations from project 'Slicing export tmp'
[sparecode] removed unused global declarations in new project 'Slicing export'
[slicing] done (exporting project to 'Slicing export').
[slicing] done (slicing requests in progress).
/* Generated by Frama-C */
int X;
int g_slice_1(int c, int x, int y, int z)
{
  X = z;
  if (c == 1) X = x;
  if (c == 2) X = y;
  return X;
}

int f_slice_1(int c, int x, int y, int z)
{
  int tmp;
  z ++;
  tmp = g_slice_1(c,x,y,z);
  return tmp;
}

int main(int v, int w, int a, int b, int i, int j)
{
  int r;
  int tmp_0;
  r = f_slice_1(1,v,a,i);
  j ++;
  { /* sequence */
    tmp_0 = g_slice_1(2,w,b,j);
    r += tmp_0;
  }
  return r;
}


