Documentation

Miri.Input.CompilerVTableRuntime

Actual imported GlobalAlloc::Function/VTable identity leaves. Runtime allocation IDs are resolved through AllocationImage's mapping, never equated with exported IDs. Complete instances share the program's compiler tables.

@[reducible, inline]
Equations
Instances For
    Instances For

      Decode every registered instance, including callable shims without MIR. Body availability is not required to establish the full function identity. Missing identity evidence remains a per-instance error, not a guessed Item.

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

                      Resolve a memory-backed vtable through the exact compiler allocation ID recorded for a principal/type query. Query metadata alone is not enough: the source TraitVPtr allocation must equal this ID. Each row must agree with its complete predicate key, while rows sharing the allocation must agree on the allocation's type, compiler-normalized principal, layout, and entries. A named HRTB and its instantiated principal can legitimately share this memory image; their symbolic type/predicate/salt keys remain distinct.

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

                        Recover the target principal only through the exact serialized compiler allocation identity. A direct .vtable node carries its own type/principal; rustc may instead serialize the same global allocation as memory, in which case the query row's vtable_allocation_id is the required identity join.

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

                          Actual compiler vtable_entries result keyed by its concrete type and exact compiler principal. Repeated symbolic allocations must provide identical query results; allocation-ID coincidence and type-size inference are never keys.

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

                              Install imported symbolic allocation queries with canonical machine memory. Address resolution and vtable-entry/principal queries remain required leaves; this does not manufacture them from the selected pointer's bytes.

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