Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • 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
    • Contributors
    • Graph
    • Compare
  • Issues 209
    • Issues 209
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • Deployments
    • Deployments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Container Registry
  • Analytics
    • Analytics
    • Value stream
    • Repository
  • Wiki
    • Wiki
  • Activity
  • Graph
  • Create a new issue
  • Commits
  • Issue Boards
Collapse sidebar
  • pub
  • frama-c
  • Issues
  • #902

Closed
Open
Created Jan 22, 2015 by Jochen Burghardt@burghardt

logic function call in rhs of relation chain causes abort

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


Id Project Category View Due Date Updated
ID0002059 Frama-Clang Plug-in > clang public 2015-01-22 2015-02-14
Reporter Jochen Assigned To virgile Resolution fixed
Priority normal Severity minor Reproducibility always
Platform Neon-20140301+dev-STANCE-Jan2015 OS - OS Version xubuntu-cfe13.10
Product Version - Target Version - Fixed in Version -

Description :

output:

[kernel] Parsing FRAMAC_SHARE/libc/__fc_builtin_for_normalization.i (no preprocessing) [kernel] Parsing 440.cpp (external front-end) framaCIRGen: src/frama-clang/ACSLTermOrPredicate.h:633: void Acsl::TermOrPredicate::Operator::extractLastArgument(logic_type &, term &, predicate_named &): Assertion `targument' failed. Aborted (core dumped) [kernel] user error: Failed to parse C++ file. See Clang messages for more information

The problem remains if the return type of "lsize" is changed to "int", and its body to an int member of struct vector (e.g. "int sz;//@logic int lsize()=sz;"). The problem disappears if the use of "lsize()" is moved to any other position in the relation chain in line 4, or if that chain is shortened.

Attachments

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