Skip to content
GitLab
  • Menu
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • sac2c sac2c
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 403
    • Issues 403
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 12
    • Merge requests 12
  • Deployments
    • Deployments
    • Releases
  • Wiki
    • Wiki
  • External wiki
    • External wiki
  • Activity
  • Graph
  • Create a new issue
  • Commits
  • Issue Boards
Collapse sidebar
  • sac-group
  • sac2csac2c
  • Issues
  • #2107
Closed
Open
Created Mar 08, 2011 by Daniel Rolls@dsrGuest

Corrupt tree after wrongly striping out variables of type bottom

Bugzilla Link 831
Created on Mar 08, 2011 14:14
Resolution FIXED
Resolved on Oct 11, 2011 09:29
Version svn
OS All
Architecture PC
Attachments 831.sac

Extended Description

This failure can be seen in axis_control_rev_cat.sac. See any recent Masterrun.
The following summary is from Stephan and lazily pasted from an email:
I have looked at axis_control_rev_cat.sac. The problem there seems to be
with the type checker. We end up in a situation where after opt:tup2 [type upgrade] return values of main become bottom, however the return type of main does not. Thus, compilation is not aborted. Instead, all bottom variables are stripped out, including the return value. This leads to a corrupted tree.
On the one hand, one should never just strip away a vardec node without
checking its use. On the other hand, if a bottom vardec node would
contribute directly to the result of a function, then that entire function
should have been marked as bottom.
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
Time tracking