-
Notifications
You must be signed in to change notification settings - Fork 43
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
Pointer support #239
Pointer support #239
Conversation
…support for pointer inequality
Thanks! I'm running some regression tests now, hopefully they'll finish until tomorrow. I'll let you know what its results are. You can see a subset of the results (5 per category if I recall correctly) in the output of the workflow "Linux build-test-deploy": artifact. I hope you have permission to download this, let me know otherwise. In the meantime, could you please add some documentations and tests to the new parts of the codebase? Don't overdo it, just enough so that a year later we'll still know which part does what; and if parts will have become faulty due to other changes. Thanks! Testing is best done on a subproject level, i.e., in every subproject with modifications you need to add/modify some test cases to cover at least the happy path of the new code. Of course, more elaborate tests are welcome, but try and stay within a few seconds of runtime on all of the new tests, don't add multiple minutes' worth of computation to the test steps. Also, please format the branch using the formatting guide. The easiest method now is to run |
regression tests are done, and unfortunately a number of tasks became erroneous: unreach-call
I think we should postpone merging this PR until these problems have been addressed. If you need the result files, let me know! |
I have run some tests, and there are some further problems:
|
@@ -218,11 +274,12 @@ private fun getExplXcfaInitFunc(xcfa: XCFA, | |||
private fun getExplXcfaTransFunc(solver: Solver, | |||
maxEnum: Int): (XcfaState<ExplState>, XcfaAction, XcfaPrec<ExplPrec>) -> List<XcfaState<ExplState>> { | |||
val explTransFunc = ExplStmtTransFunc.create(solver, maxEnum) | |||
// xcfastatebe elrakni a precisiont | |||
return { s, a, p -> | |||
val (newSt, newAct) = s.apply(a) | |||
explTransFunc.getSuccStates(newSt.sGlobal, newAct, p.p.addVars( |
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.
When encountering a pointer action, do not pass it to the solver.
Please reopen against master. |
Some modifcations I'd like to see:
|
No description provided.