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
|
[kernel] Parsing share/libc/__fc_builtin_for_normalization.i (no preprocessing)
[kernel] Parsing tests/sparecode/glob_decls.i (no preprocessing)
[slicing] slicing requests in progress...
[value] Analyzing an incomplete application starting at main
[value] Computing initial state
[value] Initial state computed
[value:initial-state] Values of globals at initialization
G1 ∈ [--..--]
G2 ∈ [--..--]
PG1 ∈ {{ NULL ; &S_PG1[0] }}
Gts ∈ [--..--]
GPs ∈ {{ NULL ; &S_GPs[0] }}
S2 ∈ [--..--]
C ∈ [--..--]
S3 ∈ [--..--]
Size ∈ [--..--]
X ∈ [--..--]
Y ∈ [--..--]
use_in_PX_init ∈ [--..--]
PX ∈ {{ NULL ; &S_PX[0] }}
S_PG1[0..1] ∈ [--..--]
S_GPs[0..1] ∈ [--..--]
S_PX[0..1] ∈ [--..--]
tests/sparecode/glob_decls.i:42:[value] warning: function main: precondition got status unknown.
tests/sparecode/glob_decls.i:46:[value] warning: signed overflow. assert y + Y ≤ 2147483647;
tests/sparecode/glob_decls.i:47:[value] warning: out of bounds read. assert \valid_read(PX);
tests/sparecode/glob_decls.i:47:[value] warning: signed overflow. assert -2147483648 ≤ y + *PX;
tests/sparecode/glob_decls.i:47:[value] warning: signed overflow. assert y + *PX ≤ 2147483647;
tests/sparecode/glob_decls.i:48:[value] warning: assertion got status unknown.
tests/sparecode/glob_decls.i:49:[value] warning: signed overflow. assert X + x ≤ 2147483647;
[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 main
[pdg] done for function main
[slicing] applying all slicing requests...
[slicing] applying 0 actions...
[slicing] applying all slicing requests...
[slicing] applying 1 actions...
[slicing] applying actions: 1/1...
[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 */
struct __anonstruct_Ts2_2 {
int a ;
int b ;
};
typedef struct __anonstruct_Ts2_2 Ts2;
typedef int Int;
typedef Int Tx;
Ts2 S2;
char Size;
Tx X = (int)sizeof(Size);
/*@ requires S2.a > S2.b; */
int main(int x)
{
int __retres;
/*@ slice pragma expr S2; */ ;
/*@ assert X > 0; */ ;
__retres = X + x;
return __retres;
}
|