Skip to content

implicit conversion of terms to predicates

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


Id Project Category View Due Date Updated
ID0002148 Frama-C Kernel > ACSL implementation public 2015-07-17 2015-07-17
Reporter dcok@grammatech.com Assigned To virgile Resolution open
Priority normal Severity major Reproducibility always
Platform - OS - OS Version -
Product Version Frama-C Sodium Target Version - Fixed in Version -

Description :

ACSL distinguishes carefully between terms and predicates. For example, a predicate (e.g. \valid(...) ) cannot be placed in a term position, such as the argument of a cast.

However, clauses such as 'requires 1;' are accepted by Frama-C, even though the 1.9 grammar nowhere permits terms to be implicitly converted to predicates. Integer-typed terms maybe implicitly converted to boolean terms, but there is no indication that terms are converted to predicates.

Is this an oversight in the grammar? or does Frama-C accept more than the grammar as a convenience?

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