Skip to content
GitLab
Projects Groups Topics Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • F frama-c
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributor statistics
    • Graph
    • Compare revisions
  • Issues 168
    • Issues 168
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • Deployments
    • Deployments
    • Releases
  • Packages and registries
    • Packages and registries
    • Container Registry
    • Model experiments
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • Repository
  • Wiki
    • Wiki
  • Activity
  • Graph
  • Create a new issue
  • Commits
  • Issue Boards
Collapse sidebar
  • pub
  • frama-c
  • Issues
  • #574
Closed
Open
Issue created Dec 07, 2015 by Jochen Burghardt@burghardt

expression "term!=term" is considered always a predicate, rather than (in some contexts) a term

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


Id Project Category View Due Date Updated
ID0002197 Frama-C Kernel > ACSL implementation public 2015-12-07 2015-12-07
Reporter Jochen Assigned To virgile Resolution open
Priority normal Severity feature Reproducibility always
Platform Sodium-20150201 OS - OS Version xubuntu14.04
Product Version - Target Version - Fixed in Version -

Description :

Running "frama-c 485.c -no-unicode" on the attached program results in an error message

485.c:2:[kernel] user error: comparison of incompatible types: integer and boolean in annotation.

However, according to the manual "acsl-implementation-Sodium-20150201.pdf", p.16-17, fig.2.1, 2.2, the ACSL grammar allows for a derivation

pred ------> term rel-op term ------> 2 > ( term ) ------> 2 > ( term bin-op term ) ------> 2 > ( id != id ) ------> 2 > (x != x)

The remark on consecutive comparison operators (p.18) shouldn't apply due to the additional parantheses around "x!=x".

Additional Information :

(The file was boiled down from a file generated by a first version of "acslsmith", an adaption of "csmith".)

Attachments

  • 485.c
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
Time tracking