-
Notifications
You must be signed in to change notification settings - Fork 63
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Heapster ide info #1821
Heapster ide info #1821
Conversation
…nto heapster-ide-info
@scuellar it looks like the build is failing, due to some pattern-matching coverage warnings. Could you please take a shot at fixing these? |
…edMb.hs, to help with GHC 9 support
…nged the names of all of its operationsto use 'Named' as a suffix instead of just using a prime
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I worked closely with Karl and Eric M when they originally made this PR, so I'm pretty familiar with it. It adds some very useful functionality, specifically, the ability to export a JSON representation of a type-checked Crucible term, so that a UI can display that to the user.
Hmm, I'm now getting a seg fault on this branch on my local machine. Still debugging... |
Never mind, it was a known issue with GHC 9.0. It works with GHC 8.10.4. So let's merge this sucker! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This PR adds the
heapster_dump_ide_info
command to Heapster. The new instruction produces ajson
file with Heapster permissions for each code block. The 'json' file can then be used by the VSCode extension to display the permissions on each block of source C code.This branch was developped a year ago and so the last handful of commits are bringing it up to date with master. We should merge it before it falls behind again.
The key files to look at are:
json
JSON
instance declarations and the logic to export the permissions.Mb
that includes human readable names for variables, objects and code. Most of the changes are transformingMb
instances intoMb'
instancesjson
file and can be seen from the VSCode extension.