File: shift.1.res.oracle

package info (click to toggle)
frama-c 20161101%2Bsilicon%2Bdfsg-5
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 42,324 kB
  • ctags: 35,695
  • sloc: ml: 200,142; ansic: 31,465; makefile: 2,334; sh: 1,643; lisp: 259; python: 85; asm: 26
file content (85 lines) | stat: -rw-r--r-- 3,754 bytes parent folder | download
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
[value] warning: New option name for -no-val-left-shift-negative-alarms is -no-val-warn-left-shift-negative
[kernel] Parsing share/libc/__fc_builtin_for_normalization.i (no preprocessing)
[kernel] Parsing tests/value/shift.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
  a ∈ {0}
  b ∈ {0}
  d ∈ {0}
  e ∈ {0}
  f ∈ {0}
  g ∈ {0}
  h ∈ {0}
  ua ∈ {0}
  ub ∈ {0}
  uc ∈ {0}
  ud ∈ {0}
  ue ∈ {0}
  uf ∈ {0}
  t[0..9] ∈ {0}
  v ∈ [--..--]
tests/value/shift.i:21:[value] warning: invalid RHS operand for shift. assert 0 ≤ c < 32;
tests/value/shift.i:22:[value] assertion got status valid.
tests/value/shift.i:25:[value] warning: invalid RHS operand for shift. assert 0 ≤ c < 32;
tests/value/shift.i:26:[value] assertion got status valid.
tests/value/shift.i:29:[value] warning: invalid RHS operand for shift. assert 0 ≤ c < 32;
tests/value/shift.i:32:[value] warning: assertion got status unknown.
tests/value/shift.i:35:[value] warning: invalid RHS operand for shift. assert 0 ≤ 32 < 32;
tests/value/shift.i:36:[value] warning: invalid RHS operand for shift. assert 0 ≤ 5555 < 32;
tests/value/shift.i:40:[value] warning: invalid RHS operand for shift. assert 0 ≤ b < 32;
[value] computing for function printf <- main.
        Called from tests/value/shift.i:48.
tests/value/shift.i:48:[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
tests/value/shift.i:52:[value] Assigning imprecise value to r.
        The imprecision originates from Arithmetic {tests/value/shift.i:52}
tests/value/shift.i:53:[value] warning: signed overflow. assert -2147483648 ≤ (long)((char *)t) << 8;
tests/value/shift.i:53:[value] warning: signed overflow. assert (long)((char *)t) << 8 ≤ 2147483647;
tests/value/shift.i:53:[value] warning: signed overflow.
                 assert -2147483648 ≤ (long)r + (long)((long)((char *)t) << 8);
tests/value/shift.i:53:[value] warning: signed overflow.
                 assert (long)r + (long)((long)((char *)t) << 8) ≤ 2147483647;
tests/value/shift.i:53:[value] Assigning imprecise value to r.
        The imprecision originates from Arithmetic
[value] Recording results for main
[value] done for function main
tests/value/shift.i:35:[value] assertion 'Value,shift' got final status invalid.
tests/value/shift.i:36:[value] assertion 'Value,shift' got final status invalid.
tests/value/shift.i:40:[value] assertion 'Value,shift' got final status invalid.
[value] ====== VALUES COMPUTED ======
[value:final-states] Values at end of function main:
  a ∈ {314; 1256; 5024}
  b ∈ {0}
  d ∈ {61; 246; 255; 987}
  f ∈ {-988; -255; -247; -62}
  ua ∈ {1401}
  ub ∈ {1073741074}
  c ∈ [--..--]
  z ∈ [-2147483648..2147483631]
  zz ∈ {0}
  shl ∈ {0}
[from] Computing for function main
[from] Computing for function printf <-main
[from] Done for function printf
tests/value/shift.i:48:[from] warning: variadic call detected. Using only 1 argument(s).
[from] Done for function main
[from] ====== DEPENDENCIES COMPUTED ======
       These dependencies hold at termination for the executions that terminate:
[from] Function printf:
  NO EFFECTS
[from] Function main:
  a FROM v; c
  b FROM z (and SELF)
  d FROM v; c
  f FROM v; c
  ua FROM \nothing
  ub FROM \nothing
  \result FROM b; z
[from] ====== END OF DEPENDENCIES ======
[inout] Out (internal) for function main:
          a; b; d; f; ua; ub; c; z; zz; r; shl
[inout] Inputs for function main:
          b; d; f; ua; ub; v