Documentation

Miri.Interpreter.Panic

Pinned shims/panic.rs and mir/terminator.rs::AssertKind::panic_function. These operations call the actual panic lang item; a failed assertion is not silently converted into a normal return, UB, or a completed unwind.

Instances For
    Equations
    • One or more equations did not get rendered due to their size.
    Instances For

      Exact source mapping; bounds/misalignment use their argument-bearing special handlers and impossible overflowing operators are compiler errors.

      Equations
      Instances For
        structure Miri.Interpreter.Panic.Hooks (K User C Other : Type) :
        Instances For
          def Miri.Interpreter.Panic.start {K User C Other : Type} (h : Hooks K User C Other) (choice : C) (message : String) (unwind : MIR.UnwindAction) :

          Allocate/deduplicate the message before resolving the panic lang item.

          Equations
          • One or more equations did not get rendered due to their size.
          Instances For
            def Miri.Interpreter.Panic.startNounwind {K User C Other : Type} (h : Hooks K User C Other) (choice : C) (message : String) :
            Equations
            • One or more equations did not get rendered due to their size.
            Instances For
              def Miri.Interpreter.Panic.assertPanic {K User C Other : Type} (h : Hooks K User C Other) (choice : C) (message : MIR.AssertKind) (unwind : MIR.UnwindAction) :

              Read only the operands read by the source: index before length for bounds, required before found for alignment, no diagnostic operand reads otherwise.

              Equations
              • One or more equations did not get rendered due to their size.
              Instances For