Skip to content

int -> integer -> real

ID0000117: This issue was created automatically from Mantis Issue 117. Further discussion may take place here.


Id Project Category View Due Date Updated
ID0000117 Frama-C Kernel public 2009-06-05 2009-06-23
Reporter sboldo Assigned To virgile Resolution fixed
Priority normal Severity major Reproducibility always
Platform - OS - OS Version -
Product Version Frama-C GIT, precise the release id Target Version - Fixed in Version Frama-C Beryllium-20090601-beta1

Description :

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

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information