You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Formatcil can parse the following expression (from Goblint's Apron analysis): 2147483647LL - (long long )top >= 0.
When Goblint evaluates the parsed expression, it crashes with:
exception IntDomain.IncompatibleIKinds("ikinds long long and int are incompatible. Values: (Unknown int([0,32])) and (0)")
Turns out Formatcil doesn't insert implicit casts on both sides of the comparison to make the types same:
Formatcil
can parse the following expression (from Goblint's Apron analysis):2147483647LL - (long long )top >= 0
.When Goblint evaluates the parsed expression, it crashes with:
Turns out
Formatcil
doesn't insert implicit casts on both sides of the comparison to make the types same:cil/src/formatparse.mly
Lines 87 to 92 in 56f5f9a
Even worse, it uses the type of the left argument as the type of any binary operator expression, which is also blatantly incorrect.
Meanwhile Frontc does the appropriate conversion to deduce the result type and inserts the necessary casts:
cil/src/frontc/cabs2cil.ml
Lines 4915 to 4920 in 56f5f9a
It's starting to look more and more unlikely that we can keep abusing
Formatcil
to parse individual expressions.The text was updated successfully, but these errors were encountered: