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
|
[kernel] Parsing inline_calls.i (no preprocessing)
[kernel:CERT:MSC:37] inline_calls.i:40: Warning:
Body of function f1 falls-through. Adding a return statement
/* Generated by Frama-C */
int f(void)
{
int __retres;
__retres = 2;
return __retres;
}
__inline static int in_f__fc_inline(void)
{
int __retres;
__retres = 3;
return __retres;
}
int volatile v;
int g(void)
{
int __retres;
if (v) {
int tmp;
tmp = f();
__retres = tmp;
goto return_label;
}
else {
int tmp_0;
{
int __retres_5;
__retres_5 = 3;
tmp_0 = __retres_5;
}
__retres = tmp_0;
goto return_label;
}
return_label: return __retres;
}
int h(void)
{
int tmp;
tmp = g();
return tmp;
}
int i(void)
{
int __retres;
/*@ assert i: \true; */ ;
__retres = 0;
return __retres;
}
int rec(int x_0)
{
int __retres;
int tmp;
if (x_0 < 0) {
__retres = x_0;
goto return_label;
}
tmp = rec(x_0 - 1);
__retres = tmp;
return_label: return __retres;
}
int f1(int a);
int g1(int a);
int volatile nondet;
int f1(int a)
{
int __retres;
if (nondet) g1(1);
else
if (nondet) f1(2);
/*@ assert missing_return: \false; */ ;
__retres = 0;
return __retres;
}
int g1(int a)
{
if (nondet) g1(4);
return a;
}
int main(void)
{
int tmp_1;
int local_init = i();
int t = rec(local_init);
f1(2);
tmp_1 = h();
return tmp_1;
}
int with_static(void);
static int with_static_count = 0;
int with_static(void)
{
with_static_count ++;
return with_static_count;
}
int call_with_static(void)
{
int tmp;
tmp = with_static();
return tmp;
}
void builtin_acsl(void)
{
float g_0 = 0.f;
/*@ assert ¬\is_NaN(g_0); */ ;
return;
}
void call_builtin_acsl(void)
{
builtin_acsl();
return;
}
void f_slevel(void)
{
/*@ slevel 0; */ ;
return;
}
void call_f_slevel(void)
{
f_slevel();
return;
}
void pre_decl(void);
void middle_decl(void)
{
pre_decl();
return;
}
void post_decl(void);
extern int x;
int y = 23;
void pre_decl(void)
{
x ++;
y ++;
post_decl();
return;
}
|