[kernel] Parsing share/libc/__fc_builtin_for_normalization.i (no preprocessing)
[kernel] Parsing tests/pdg/calls_and_implicits.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
  t[0..4] ∈ {0}
  G ∈ {0}
  G2 ∈ {0}
[value] computing for function f <- main.
        Called from tests/pdg/calls_and_implicits.c:28.
[value] Recording results for f
[value] Done for function f
[value] computing for function f <- main.
        Called from tests/pdg/calls_and_implicits.c:29.
[value] Recording results for f
[value] Done for function f
[value] computing for function f2 <- main.
        Called from tests/pdg/calls_and_implicits.c:30.
[value] Recording results for f2
[value] Done for function f2
[value] computing for function print <- main.
        Called from tests/pdg/calls_and_implicits.c:31.
tests/pdg/calls_and_implicits.c:21:[value] entering loop for the first time
[value] computing for function printf <- print <- main.
        Called from tests/pdg/calls_and_implicits.c:22.
tests/pdg/calls_and_implicits.c:22:[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] computing for function printf <- print <- main.
        Called from tests/pdg/calls_and_implicits.c:22.
[value] Done for function printf
[value] computing for function printf <- print <- main.
        Called from tests/pdg/calls_and_implicits.c:22.
[value] Done for function printf
[value] computing for function printf <- print <- main.
        Called from tests/pdg/calls_and_implicits.c:22.
[value] Done for function printf
[value] computing for function printf <- print <- main.
        Called from tests/pdg/calls_and_implicits.c:22.
[value] Done for function printf
[value] computing for function printf <- print <- main.
        Called from tests/pdg/calls_and_implicits.c:23.
[value] Done for function printf
[value] Recording results for print
[value] Done for function print
[value] computing for function swap <- main.
        Called from tests/pdg/calls_and_implicits.c:32.
[value] Recording results for swap
[value] Done for function swap
[value] computing for function print <- main.
        Called from tests/pdg/calls_and_implicits.c:33.
[value] computing for function printf <- print <- main.
        Called from tests/pdg/calls_and_implicits.c:22.
[value] Done for function printf
[value] computing for function printf <- print <- main.
        Called from tests/pdg/calls_and_implicits.c:22.
[value] Done for function printf
[value] computing for function printf <- print <- main.
        Called from tests/pdg/calls_and_implicits.c:22.
[value] Done for function printf
[value] computing for function printf <- print <- main.
        Called from tests/pdg/calls_and_implicits.c:22.
[value] Done for function printf
[value] computing for function printf <- print <- main.
        Called from tests/pdg/calls_and_implicits.c:22.
[value] Done for function printf
[value] computing for function printf <- print <- main.
        Called from tests/pdg/calls_and_implicits.c:23.
[value] Done for function printf
[value] Recording results for print
[value] Done for function print
[value] Recording results for main
[value] done for function main
[inout] InOut (internal) for function f:
        Operational inputs:
          G
        Operational inputs on termination:
          G
        Sure outputs:
          G; __retres
[inout] InOut (internal) for function f2:
        Operational inputs:
          G
        Operational inputs on termination:
          G
        Sure outputs:
          G2; __retres
[inout] InOut (internal) for function print:
        Operational inputs:
          t[0..4]; G; G2; "t[%d] = %d\n"[bits 0 to 95];
          "G = %d ; G2 = %d\n\n"[bits 0 to 151]
        Operational inputs on termination:
          t[0..4]; G; G2; "t[%d] = %d\n"[bits 0 to 95];
          "G = %d ; G2 = %d\n\n"[bits 0 to 151]
        Sure outputs:
          i
[inout] InOut (internal) for function swap:
        Operational inputs:
          G; G2
        Operational inputs on termination:
          G; G2
        Sure outputs:
          G; G2; tmp
[inout] InOut (internal) for function main:
        Operational inputs:
          t{[1]; [3..4]}; "t[%d] = %d\n"[bits 0 to 95];
          "G = %d ; G2 = %d\n\n"[bits 0 to 151]
        Operational inputs on termination:
          t{[1]; [3..4]}; "t[%d] = %d\n"[bits 0 to 95];
          "G = %d ; G2 = %d\n\n"[bits 0 to 151]
        Sure outputs:
          t{[0]; [2]}; G; G2; __retres
[pdg] computing for function main
[from] Computing for function f
[from] Done for function f
[from] Computing for function f2
[from] Done for function f2
[from] Computing for function print
[from] Computing for function printf <-print
[from] Done for function printf
tests/pdg/calls_and_implicits.c:21:[from] warning: variadic call detected. Using only 1 argument(s).
tests/pdg/calls_and_implicits.c:23:[from] warning: variadic call detected. Using only 1 argument(s).
[from] Done for function print
[from] Computing for function swap
[from] Done for function swap
[pdg] done for function main
[pdg] PDG for main
 {n1}: InCtrl
 {n2}: VarDecl : __retres
 {n3}: G = 0;
   -[-c-]-> 1
 {n4}: G2 = 0;
   -[-c-]-> 1
 {n5}: Call26-InCtrl : t[G] = f();
   -[-c-]-> 1
 {n6}: Call26-Out(G) : t[G] = f();
   -[-c-]-> 1
   -[--d]-> 3
   -[-c-]-> 5
 {n7}: Call26-OutRet : t[G] = f();
   -[-c-]-> 1
   -[-c-]-> 5
   -[a--](G)-> 6
 {n8}: Call27-InCtrl : t[G] = f();
   -[-c-]-> 1
 {n9}: Call27-Out(G) : t[G] = f();
   -[-c-]-> 1
   -[--d](G)-> 6
   -[-c-]-> 8
 {n10}: Call27-OutRet : t[G] = f();
   -[-c-]-> 1
   -[-c-]-> 8
   -[a--](G)-> 9
 {n11}: Call28-InCtrl : G = f2();
   -[-c-]-> 1
 {n12}: Call28-Out(G2) : G = f2();
   -[-c-]-> 1
   -[--d](G)-> 9
   -[-c-]-> 11
 {n13}: Call28-OutRet : G = f2();
   -[-c-]-> 1
   -[--d](G)-> 9
   -[-c-]-> 11
 {n14}: Call29-InCtrl : print();
   -[-c-]-> 1
 {n15}: Call30-InCtrl : swap();
   -[-c-]-> 1
 {n16}: Call30-Out(G) : swap();
   -[-c-]-> 1
   -[--d](G2)-> 12
   -[-c-]-> 15
 {n17}: Call30-Out(G2) : swap();
   -[-c-]-> 1
   -[--d]-> 13
   -[-c-]-> 15
 {n18}: Call31-InCtrl : print();
   -[-c-]-> 1
 {n19}: __retres = 0;
   -[-c-]-> 1
   -[a--]-> 2
 {n20}: return __retres;
   -[-c-]-> 1
   -[--d]-> 2
   -[--d]-> 19
 {n21}: OutRet
   -[--d]-> 20
