[kernel] Parsing share/libc/__fc_builtin_for_normalization.i (no preprocessing)
[kernel] Parsing tests/slicing/unravel-flavors.c (with preprocessing)
[slicing] slicing requests in progress...
[value] Analyzing a complete application starting at main
[value] Computing initial state
[value] Initial state computed
[value] Values of globals at initialization
  nb_fetch ∈ {0}
[value] computing for function fetch <- main.
        Called from tests/slicing/unravel-flavors.c:46.
[value] computing for function scanf <- fetch <- main.
        Called from tests/slicing/unravel-flavors.c:37.
[value] using specification for function scanf
[value] Done for function scanf
[value] Recording results for fetch
[value] Done for function fetch
[value] computing for function fetch <- main.
        Called from tests/slicing/unravel-flavors.c:47.
[value] computing for function scanf <- fetch <- main.
        Called from tests/slicing/unravel-flavors.c:37.
[value] Done for function scanf
[value] Recording results for fetch
[value] Done for function fetch
[value] computing for function fetch <- main.
        Called from tests/slicing/unravel-flavors.c:48.
[value] computing for function scanf <- fetch <- main.
        Called from tests/slicing/unravel-flavors.c:37.
[value] Done for function scanf
[value] Recording results for fetch
[value] Done for function fetch
[value] computing for function fetch <- main.
        Called from tests/slicing/unravel-flavors.c:49.
[value] computing for function scanf <- fetch <- main.
        Called from tests/slicing/unravel-flavors.c:37.
[value] Done for function scanf
[value] Recording results for fetch
[value] Done for function fetch
tests/slicing/unravel-flavors.c:51:[kernel] warning: accessing uninitialized left-value: assert \initialized(&red);
tests/slicing/unravel-flavors.c:51:[kernel] warning: signed overflow. assert -2147483648 ≤ 2*red;
tests/slicing/unravel-flavors.c:51:[kernel] warning: signed overflow. assert 2*red ≤ 2147483647;
tests/slicing/unravel-flavors.c:52:[kernel] warning: accessing uninitialized left-value: assert \initialized(&green);
tests/slicing/unravel-flavors.c:52:[kernel] warning: signed overflow. assert -2147483648 ≤ red*green;
tests/slicing/unravel-flavors.c:52:[kernel] warning: signed overflow. assert red*green ≤ 2147483647;
tests/slicing/unravel-flavors.c:54:[value] entering loop for the first time
tests/slicing/unravel-flavors.c:55:[kernel] warning: signed overflow. assert -2147483648 ≤ sour+green;
tests/slicing/unravel-flavors.c:55:[kernel] warning: signed overflow. assert sour+green ≤ 2147483647;
tests/slicing/unravel-flavors.c:56:[kernel] warning: accessing uninitialized left-value: assert \initialized(&blue);
tests/slicing/unravel-flavors.c:56:[kernel] warning: accessing uninitialized left-value: assert \initialized(&yellow);
tests/slicing/unravel-flavors.c:56:[kernel] warning: signed overflow. assert -2147483648 ≤ blue+yellow;
tests/slicing/unravel-flavors.c:56:[kernel] warning: signed overflow. assert blue+yellow ≤ 2147483647;
tests/slicing/unravel-flavors.c:57:[kernel] warning: signed overflow. assert green+1 ≤ 2147483647;
tests/slicing/unravel-flavors.c:58:[kernel] warning: signed overflow. assert -2147483648 ≤ yellow+green;
tests/slicing/unravel-flavors.c:58:[kernel] warning: signed overflow. assert yellow+green ≤ 2147483647;
[value] computing for function send1 <- main.
        Called from tests/slicing/unravel-flavors.c:60.
[value] computing for function printf <- send1 <- main.
        Called from tests/slicing/unravel-flavors.c:19.
tests/slicing/unravel-flavors.c:19:[kernel] warning: Neither code nor specification for function printf, generating default assigns from the prototype
[value] using specification for function printf
[value] Done for function printf
[value] Recording results for send1
[value] Done for function send1
[value] computing for function send2 <- main.
        Called from tests/slicing/unravel-flavors.c:61.
[value] computing for function printf <- send2 <- main.
        Called from tests/slicing/unravel-flavors.c:23.
[value] Done for function printf
[value] Recording results for send2
[value] Done for function send2
[value] computing for function send3 <- main.
        Called from tests/slicing/unravel-flavors.c:62.
[value] computing for function printf <- send3 <- main.
        Called from tests/slicing/unravel-flavors.c:27.
[value] Done for function printf
[value] Recording results for send3
[value] Done for function send3
[value] computing for function send4 <- main.
        Called from tests/slicing/unravel-flavors.c:63.
[value] computing for function printf <- send4 <- main.
        Called from tests/slicing/unravel-flavors.c:31.
[value] Done for function printf
[value] Recording results for send4
[value] Done for function send4
[value] Recording results for main
[value] done for function main
[slicing] making slicing project 'Slicing'...
[slicing] interpreting slicing requests from the command line...
[pdg] computing for function send2
[from] Computing for function printf
[from] Done for function printf
[pdg] done for function send2
[slicing] applying all slicing requests...
[slicing] applying 0 actions...
[slicing] applying all slicing requests...
[slicing] applying 1 actions...
[slicing] applying actions: 1/1...
[pdg] computing for function main
[from] Computing for function fetch
[from] Computing for function scanf <-fetch
[from] Done for function scanf
[from] Done for function fetch
[from] Computing for function send1
[from] Done for function send1
[from] Computing for function send2
[from] Done for function send2
[from] Computing for function send3
[from] Done for function send3
[from] Computing for function send4
[from] Done for function send4
[pdg] done for function main
[pdg] computing for function fetch
[pdg] done for function fetch
[pdg] computing for function scanf
[pdg] done for function scanf
[slicing] exporting project to 'Slicing export'...
[slicing] applying all slicing requests...
[slicing] applying 0 actions...
[sparecode] remove unused global declarations from project 'Slicing export tmp'
[sparecode] removed unused global declarations in new project 'Slicing export'
/* Generated by Frama-C */
extern void scanf_slice_1(void);

int send2_slice_1(int x)
{
  return x;
}

int fetch_slice_1(void)
{
  int value;
  scanf_slice_1();
  return value;
}

void main(void)
{
  int red;
  int green;
  int sour;
  int i;
  red = fetch_slice_1();
  green = fetch_slice_1();
  red = 2 * red;
  sour = 0;
  i = 0;
  while (i < red) {
    sour += green;
    i ++;
  }
  send2_slice_1(sour);
  return;
}


