generated from amazon-archives/__template_Apache-2.0
-
Notifications
You must be signed in to change notification settings - Fork 142
Closed
Labels
[C] BugThis is a bug. Something isn't working.This is a bug. Something isn't working.[F] SoundnessKani failed to detect an issueKani failed to detect an issue
Description
This issue should not be resolved until all tests in this PR pass when fixme is removed from the name.
When running rmc <filename> on any of the tests added in this PR, we expect a FAILURE, but get SUCCESS.
This seems to be caused by two things:
- When CBMC encounters a function which does not appear in the vtable, it (we believe) translates to
assume(0). - For dynamic traits, different naming conventions are used for insertion and lookup on the vtable.
When specifically running fixme_boxtrait_fail.rs, we receive the following log:
WARN rustc_codegen_llvm::gotoc::rvalue Unable to find vtable symbol for <Concrete as Trait>::increment. Using NULL instead
and when we view the symbol table using rmc --keep-temps fixme_boxtrait_fail.rs and opening fixme_boxtrait_fail.json, we find the following:
...
"_ZN76_$LT$fixme_boxtrait_fail..Concrete$u20$as$u20$fixme_boxtrait_fail..Trait$GT$9increment17ha9f75436a1c6f32dE": {
"baseName": "_ZN76_$LT$fixme_boxtrait_fail..Concrete$u20$as$u20$fixme_boxtrait_fail..Trait$GT$9increment17ha9f75436a1c6f32dE",
...
"name": "_ZN76_$LT$fixme_boxtrait_fail..Concrete$u20$as$u20$fixme_boxtrait_fail..Trait$GT$9increment17ha9f75436a1c6f32dE",
"prettyName": "fixme_boxtrait_fail::{impl#1}::increment",
...
Note the difference in names used: <Concrete as Trait>::increment vs fixme_boxtrait_fail::{impl#1}::increment.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
[C] BugThis is a bug. Something isn't working.This is a bug. Something isn't working.[F] SoundnessKani failed to detect an issueKani failed to detect an issue