1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182
|
[kernel] Parsing share/libc/__fc_builtin_for_normalization.i (no preprocessing)
[kernel] Parsing tests/value/fptr.i (no preprocessing)
[value] Analyzing a complete application starting at main
[value] Computing initial state
[value] Initial state computed
[value:initial-state] Values of globals at initialization
R ∈ {77}
v ∈ [--..--]
n ∈ {0}
X ∈ {77}
XH ∈ {0}
XHH ∈ {0}
GLOBAL[0..9] ∈ {0}
G ∈ {0}
TA ∈ {0}
[value] computing for function retshort <- main.
Called from tests/value/fptr.i:42.
[value] Recording results for retshort
[value] Done for function retshort
[value] computing for function retint <- main.
Called from tests/value/fptr.i:43.
[value] Recording results for retint
[value] Done for function retint
tests/value/fptr.i:44:[value] warning: pointer to function with incompatible type.
assert \valid_function((int (*)())(&retshort));
tests/value/fptr.i:45:[value] warning: pointer to function with incompatible type.
assert \valid_function((short (*)())(&retint));
tests/value/fptr.i:50:[value] entering loop for the first time
[value] Called Frama_C_show_each_F({{ &h }})
[value] computing for function f <- main.
Called from tests/value/fptr.i:52.
[value] computing for function h <- f <- main.
Called from tests/value/fptr.i:9.
[value] Recording results for h
[value] Done for function h
[value] Recording results for f
[value] Done for function f
[value] Called Frama_C_show_each({0})
[value] Called Frama_C_show_each_F({{ &h ; &hh }})
[value] computing for function f <- main.
Called from tests/value/fptr.i:52.
[value] computing for function hh <- f <- main.
Called from tests/value/fptr.i:9.
[value] Recording results for hh
[value] Done for function hh
[value] computing for function h <- f <- main.
Called from tests/value/fptr.i:9.
[value] Recording results for h
[value] Done for function h
[value] Recording results for f
[value] Done for function f
[value] Called Frama_C_show_each({0; 1})
[value] Called Frama_C_show_each_F({{ NULL ; &h ; &hh }})
[value] computing for function f <- main.
Called from tests/value/fptr.i:52.
tests/value/fptr.i:9:[value] warning: pointer to function with incompatible type. assert \valid_function(ptr);
[value] computing for function hh <- f <- main.
Called from tests/value/fptr.i:9.
[value] Recording results for hh
[value] Done for function hh
[value] computing for function h <- f <- main.
Called from tests/value/fptr.i:9.
[value] Recording results for h
[value] Done for function h
[value] Recording results for f
[value] Done for function f
[value] Called Frama_C_show_each({0; 1; 2})
[value] Called Frama_C_show_each_F({{ NULL ; &h ; &hh }})
[value] computing for function f <- main.
Called from tests/value/fptr.i:52.
[value] computing for function hh <- f <- main.
Called from tests/value/fptr.i:9.
[value] Recording results for hh
[value] Done for function hh
[value] computing for function h <- f <- main.
Called from tests/value/fptr.i:9.
[value] Recording results for h
[value] Done for function h
[value] Recording results for f
[value] Done for function f
tests/value/fptr.i:56:[value] warning: division by zero. assert (int)(c & 64) ≢ 0;
[value] computing for function hh <- main.
Called from tests/value/fptr.i:56.
[value] Recording results for hh
[value] Done for function hh
[value] computing for function h <- main.
Called from tests/value/fptr.i:56.
[value] Recording results for h
[value] Done for function h
[value] Recording results for main
[value] done for function main
tests/value/fptr.i:44:[value] assertion 'Value,function_pointer' got final status invalid.
tests/value/fptr.i:45:[value] assertion 'Value,function_pointer' got final status invalid.
[value] ====== VALUES COMPUTED ======
[value:final-states] Values at end of function h:
X ∈ {0; 1}
XH ∈ {0; 1}
[value:final-states] Values at end of function hh:
X ∈ {0; 2}
XHH ∈ {0; 1}
[value:final-states] Values at end of function f:
R ∈ {1; 2}
n ∈ {1; 2; 3}
X ∈ {1; 2}
XH ∈ {0; 1}
XHH ∈ {0; 1}
[value:final-states] Values at end of function retint:
__retres ∈ {42}
[value:final-states] Values at end of function retshort:
__retres ∈ {12}
[value:final-states] Values at end of function main:
R ∈ {1; 2; 77}
n ∈ {0; 1; 2; 3}
X ∈ {0; 1; 2; 77}
XH ∈ {0; 1}
XHH ∈ {0; 1}
GLOBAL[0] ∈ {{ &h }}
[1] ∈ {{ &hh }}
[2..9] ∈ {0}
G ∈ {0; 1; 2}
TA ∈ {0}
in ∈ {12} or UNINITIALIZED
pin ∈ UNINITIALIZED
sh ∈ {42} or UNINITIALIZED
psh ∈ UNINITIALIZED
i ∈ {3}
p ∈ {{ &h ; &hh }}
[from] Computing for function h
[from] Done for function h
[from] Computing for function hh
[from] Done for function hh
[from] Computing for function f
[from] Done for function f
[from] Computing for function retint
[from] Done for function retint
[from] Computing for function retshort
[from] Done for function retshort
[from] Computing for function main
[from] Done for function main
[from] ====== DEPENDENCIES COMPUTED ======
These dependencies hold at termination for the executions that terminate:
[from] Function h:
X FROM y
XH FROM y
\result FROM y
[from] Function hh:
X FROM y
XHH FROM y
\result FROM y
[from] Function f:
R FROM ptr
n FROM i
X FROM ptr
XH FROM ptr (and SELF)
XHH FROM ptr (and SELF)
\result FROM ptr
[from] Function retint:
\result FROM \nothing
[from] Function retshort:
\result FROM \nothing
[from] Function main:
R FROM v; GLOBAL[2] (and SELF)
n FROM v (and SELF)
X FROM v; GLOBAL[2]; c (and SELF)
XH FROM v; GLOBAL[2]; c (and SELF)
XHH FROM v; GLOBAL[2]; c (and SELF)
GLOBAL[0..1] FROM \nothing
G FROM v; GLOBAL[2] (and SELF)
TA FROM c (and SELF)
[from] ====== END OF DEPENDENCIES ======
[inout] Out (internal) for function h:
X; XH
[inout] Out (internal) for function hh:
X; XHH
[inout] Out (internal) for function f:
R; n; X; XH; XHH
[inout] Out (internal) for function retint:
__retres
[inout] Out (internal) for function retshort:
__retres
[inout] Out (internal) for function main:
R; n; X; XH; XHH; GLOBAL[0..1]; G; TA; in; pin; sh; psh; tmp; i; p; tmp_0
|