Skip to content

Update to toolchain 2023-06-29 - #819

Merged
xldenis merged 12 commits into
creusot-rs:masterfrom
floragru:update_toolchain_2023-06-25
Jul 11, 2023
Merged

Update to toolchain 2023-06-29#819
xldenis merged 12 commits into
creusot-rs:masterfrom
floragru:update_toolchain_2023-06-25

Conversation

@floragru

Copy link
Copy Markdown
Contributor

Hi Xavier and everyone on the Creusot team!

First of all, props to you all for making this amazing tool; I'm currently using it to verify parts of an embedded OS in rust, so thanks a lot for making Creusot! As a part of a survey/comparison, I'm trying to bring the different verification toolchains I'm using to the same rust version (which might be pointless considering how quickly the compiler is moving), so I'm trying to update Creusot to the ~latest nightly.

For now, I've only picked the low-hanging fruits. Two more are remaining :

I'll try to finish at least the ImplSource issue in this PR, but if you can do it more quickly than me (as I'm not familiar with the creusot codebase), don't hesitate of course!

(forgot to add in the commit message that it's patching also:

Cheers

(I'm sorry if this is too verbose, I can trim it down if necessary)

@xldenis

xldenis commented Jun 26, 2023

Copy link
Copy Markdown
Collaborator

Hi @floriangru thanks for the contribution and interest. I'll try to take a look at the toolchain update and see what's missing.

Additionally, if you feel like there are missing features (there are many), please let us know so we can see if its something we can easily add.

@floragru

Copy link
Copy Markdown
Contributor Author

Only one issue remaining in creusot/src/extended_location.rs, patched by re-exporting the necessary trait (AnalysisResults) in rust-lang/rust#113089. Should be in the next rollup if I understand correctly.

Additionally, if you feel like there are missing features (there are many), please let us know so we can see if its something we can easily add.

Would do :)

@xldenis

xldenis commented Jun 29, 2023

Copy link
Copy Markdown
Collaborator

Seems like it should be possible to bump the nightly and get this merged now!

floragru added 7 commits June 30, 2023 09:54
reuses rust-lang/rust#113089 and the corresponding nightly
it's quite unsightly and maybe it would be better to use directly Clauses instead of Predicates (from rustc_middle::ty),
Also, it might be the reason the translation is a bit shuffled, so, maybe it would be better to change those modifications
lifetimes for those slices changed to 'static
@floragru

floragru commented Jul 6, 2023

Copy link
Copy Markdown
Contributor Author

Seems like it should be possible to bump the nightly and get this merged now!

Hi, sorry for letting this drag on. It's done now, but I'm not really happy with that since it shuffled a bit the translation and adds a lot of noise. If I bless the updated test cases, that'll modify 1588 lines for nothing (number changed in auto generated ids in the .mlcfg files).
And it appears to break the proof for heapsort_generic. It makes the one for red_black_tree obsolete but at least I managed to fix it; that wasn't the case (at least trivially) for heapsort. I haven't committed these changes to keep this PR readable.

@floragru floragru changed the title Update to toolchain 2023-06-25 Update to toolchain ~~2023-06-25~~ 2023-06-29 Jul 6, 2023
@floragru floragru changed the title Update to toolchain ~~2023-06-25~~ 2023-06-29 Update to toolchain 2023-06-29 Jul 6, 2023
@floragru

floragru commented Jul 6, 2023

Copy link
Copy Markdown
Contributor Author

Also, now targeting toolchain nightly-2023-06-29.

@xldenis

xldenis commented Jul 11, 2023

Copy link
Copy Markdown
Collaborator

I've gone ahead and refreshed the sessions fixing the two broken tests. (Just needed to be more thoroughly updated).

@xldenis
xldenis marked this pull request as ready for review July 11, 2023 15:38
@xldenis
xldenis merged commit f10e040 into creusot-rs:master Jul 11, 2023
@floragru

Copy link
Copy Markdown
Contributor Author

I've gone ahead and refreshed the sessions fixing the two broken tests. (Just needed to be more thoroughly updated).

Hi, thanks Xavier ! I was worried this would cause too much noise in the commits; next time I'll contribute I'll push the generated tests :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants