Skip to content

Missing check for object correctness invariants #301

@danielsn

Description

@danielsn

Rust requires that all values have to be valid when assigned to or read from a place, passed to a function/primitive operation or returned from a function/primitive operation. It is UB to produce an invalid bit-pattern of a given type. We do not currently have any checks for this in Kani.

Likelihood:

If code contains this bug, Kani will not detect it. We do not have any data as to how often this occurs in practice.

Mitigation:

Warn users that this class of UB is outside the current scope of Kani.

Path to soundness:

Add a check for this.

Documentation:

Metadata

Metadata

Assignees

No one assigned

    Labels

    [E] Unsupported UBUndefined behavior that Kani does not detect

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions