Initialization, callback construction, and mprotect helper boundaries from native_lib/{mod.rs,trace/child.rs,trace/parent.rs,trace/stub.rs}.
Source Machine::new checks host/target once per configured library, before loading that library. Empty configuration does not spuriously reject a cross compile, while the supported build still allocates its interchange cell.
Equations
- One or more equations did not get rendered due to their size.
Instances For
- parent (child : Trace.Pid) : ForkResult
- child : ForkResult
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- initialized : InitOutcome
- supervisorExited (code : Int32) : InitOutcome
Instances For
Equations
Equations
- One or more equations did not get rendered due to their size.
Instances For
- supported : Bool
- initialized : S → Bool
- fork : C → RvalueM S ForkResult
PTRACE_O_TRACESYSGOOD | TRACECLONE | TRACEFORK; false means seize failed.
Actual supervisor operational execution. Returning means its source ExecEnd, not proof of completion/safety of the arbitrary native program.
Parent intentionally leaks the mutex guard before its supervisor loop.
- parentDeathSignal : C → Trace.Signal → RvalueM S Bool
- raise : C → Trace.Signal → RvalueM S Unit
Instances For
Ptrace-scope fast rejection precedes the initialized/lock check exactly as source. Parent exit is explicit, not an initialized interpreter continuation.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Unsupported signature conversion builds the source aborting closure with an empty descriptor; it does not reject creation of the function pointer.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Source callback always diagnoses and exits: successful native→Rust callbacks are not implemented in pinned Miri either. The returned error has no value.
Equations
- One or more equations did not get rendered due to their size.
Instances For
- stopped : ProtectionOutcome
- exit (code : Int32) : ProtectionOutcome
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Source off helper uses saturating multiplication, on helper wrapping multiplication. Neither error unwinds through the synthetic callback stack.
Equations
- One or more equations did not get rendered due to their size.