diffblue / 2ls

Static Analyzer and Verifier
http://www.cprover.org/2LS
Other
43 stars 22 forks source link

Update to CBMC 5.12 #152

Closed FrNecas closed 2 years ago

FrNecas commented 2 years ago

There have been a lot of changes in this pull request. Below is just a short overview of the most significant ones and some comments:

Looking at the CI failures, I will push one more commit with code style fixes (will squash it at the end). I don't really know why compilation with clang++3.7 is failing but it seems to come from CBMC so probably not much I can do about that...

Related: https://github.com/peterschrammel/cbmc/pull/25

FrNecas commented 2 years ago

Thanks for the review, addressed your comments in a separate commit (since it won't be visible in the final commit after squashing anyway)

FrNecas commented 2 years ago

Thanks for the review, I will address your comments tomorrow. I'd also like to merge the CI PR first. As for the -Werror, I don't think 2LS was ever compilable with it. I remember that every time I wanted to debug (by removing the comment in src/config.inc) I would also have to remove -Werror to compile because there were some warnings coming from CBMC and some others from 2LS. Looking at CBMC compilation now, it looks very clean, no warnings as far as I can tell. My plan is to go through the warnings in 2LS once we finish the rebase and fix them, most of them should be fairly simple (missing cases, etc)

peterschrammel commented 2 years ago

My plan is to go through the warnings in 2LS once we finish the rebase and fix them

Makes sense.

peterschrammel commented 2 years ago

Please rebase on the submodule

FrNecas commented 2 years ago

Done, rebased and squashed

FrNecas commented 2 years ago

Thanks for merging. @peterschrammel could you please create 2ls-prerequisites-cbmc-5.37.0 branch on your CBMC fork? In the meantime, I managed to get the rebase up until the latest release and I will hopefully have a PR with final changes soon (the number of changes was not huge). My intention right now is to have 2 more PRs - one with rebase to 5.37.0 and the other fixing the compilation warnings and ideally also fixing some bugs (we would like to give the new version a try on SVcomp suite).

The only problem with the release right now is a regression in heap domain (occurred first with 5.18) which we are currently trying to debug.

peterschrammel commented 2 years ago

could you please create 2ls-prerequisites-cbmc-5.37.0 branch on your CBMC fork?

Done.