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
  • #1524

Uncaught exception: Uncaught exception: File "jc/jc_interp.ml", line 897, characters 11-17: Assertion failed

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


Id Project Category View Due Date Updated
ID0000306 Frama-C Plug-in > jessie public 2009-10-27 2014-02-12
Reporter murat Assigned To cmarche Resolution fixed
Priority normal Severity crash Reproducibility always
Platform - OS - OS Version -
Product Version Frama-C Beryllium-20090902 Target Version - Fixed in Version -

Description :

Following line causes this error:

return (*(unsigned char *)s1 - *(unsigned char *)--s2);

in following function (specs removed for clarity - and because they don't affect the issue):

int strcmp(const char *s1, const char *s2)
    {
   while (*s1 == *s2++)
      if (*s1++ == 0)
	return (0);
   return (*(unsigned char *)s1 - *(unsigned char *)--s2);
}

Replacing this line with this works but I cannot touch the code: return ((unsigned char)s1 - (unsigned char)(--s2));

Full error: [kernel] preprocessing with "gcc -C -E -I. -include e:/frama-c/share/frama-c/je ssie/jessie_prolog.h -dD strcmp.c" [jessie] Starting Jessie translation [jessie] Producing Jessie files in subdir strcmp.jessie [jessie] File strcmp.jessie/strcmp.jc written. [jessie] File strcmp.jessie/strcmp.cloc written. [jessie] Calling Jessie tool in subdir strcmp.jessie File "jc/jc_interp.ml", line 897, characters 11-11: Uncaught exception: File "jc/jc_interp.ml", line 897, characters 11-17: Assertio n failed [jessie] user error: Jessie subprocess failed: jessie -why-opt -split-user-c onj -v -locs strcmp.cloc strcmp.jc

Additional Information :

I'm using the bundle: Frama-C Beryllium 2 Source distribution including Why-2.21 and Jessie.

This is a blocker to use the tool as changing the code is not an option.

command line: frama-c -jessie -pp-annot -cpp-extra-args " -include e:/fama-c/share/frama-c/jessie/jessie_prolog.h" strcmp.c

Attachments

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