int -> integer -> real
ID0000117: This issue was created automatically from Mantis Issue 117. Further discussion may take place here.
|Product Version||Frama-C GIT, precise the release id||Target Version||-||Fixed in Version||Frama-C Beryllium-20090601-beta1|
From ACSL, I assume that "C integral types char , short , int and long , signed or unsigned, are all subtypes of type integer ; integer is itself a subtype of type real ;"
Therefore int is a subtype of real. But it does not work in practice:
int i; /*@ loop invariant C== \pow(2., i) */
\pow takes 2 real numbers. This annotation is refused by the message:
Error during analysis of annotation: invalid implicit conversion from int to real