|  | mir_transform_arithmetic_overflow = this arithmetic operation will overflow | 
|  | mir_transform_const_defined_here = `const` item defined here | 
|  |  | 
|  | mir_transform_const_modify = attempting to modify a `const` item | 
|  | .note = each usage of a `const` item creates a new temporary; the original `const` item will not be modified | 
|  |  | 
|  | mir_transform_const_mut_borrow = taking a mutable reference to a `const` item | 
|  | .note = each usage of a `const` item creates a new temporary | 
|  | .note2 = the mutable reference will refer to this temporary, not the original `const` item | 
|  | .note3 = mutable reference created due to call to this method | 
|  |  | 
|  | mir_transform_exceeds_mcdc_test_vector_limit = number of total test vectors in one function will exceed limit ({$max_num_test_vectors}) if this decision is instrumented, so MC/DC analysis ignores it | 
|  |  | 
|  | mir_transform_ffi_unwind_call = call to {$foreign -> | 
|  | [true] foreign function | 
|  | *[false] function pointer | 
|  | } with FFI-unwind ABI | 
|  |  | 
|  | mir_transform_fn_item_ref = taking a reference to a function item does not give a function pointer | 
|  | .suggestion = cast `{$ident}` to obtain a function pointer | 
|  |  | 
|  | mir_transform_force_inline = | 
|  | `{$callee}` could not be inlined into `{$caller}` but is required to be inlined | 
|  | .call = ...`{$callee}` called here | 
|  | .attr = inlining due to this annotation | 
|  | .caller = within `{$caller}`... | 
|  | .callee = `{$callee}` defined here | 
|  | .note = could not be inlined due to: {$reason} | 
|  |  | 
|  | mir_transform_force_inline_attr = | 
|  | `{$callee}` is incompatible with `#[rustc_force_inline]` | 
|  | .attr = annotation here | 
|  | .callee = `{$callee}` defined here | 
|  | .note = incompatible due to: {$reason} | 
|  |  | 
|  | mir_transform_force_inline_justification = | 
|  | `{$callee}` is required to be inlined to: {$sym} | 
|  |  | 
|  | mir_transform_must_not_suspend = {$pre}`{$def_path}`{$post} held across a suspend point, but should not be | 
|  | .label = the value is held across this suspend point | 
|  | .note = {$reason} | 
|  | .help = consider using a block (`{"{ ... }"}`) to shrink the value's scope, ending before the suspend point | 
|  | mir_transform_operation_will_panic = this operation will panic at runtime | 
|  |  | 
|  | mir_transform_tail_expr_drop_order = relative drop order changing in Rust 2024 | 
|  | .temporaries = in Rust 2024, this temporary value will be dropped first | 
|  | .observers = in Rust 2024, this local variable or temporary value will be dropped second | 
|  | .note_dtors = | 
|  | dropping the temporary value runs this custom `Drop` impl, which we could not prove to be side-effect free | 
|  | .note_observer_dtors = | 
|  | dropping the local runs this custom `Drop` impl, which we could not prove to be side-effect free | 
|  | .drop_location = | 
|  | now the temporary value is dropped here, before the local variables in the block or statement | 
|  | .note_epilogue = most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages | 
|  | .label_local_epilogue = {$is_dropped_first_edition_2024 -> | 
|  | [true] up until Edition 2021 `{$name}` is dropped last but will be dropped earlier in Edition 2024 | 
|  | *[false] `{$name}` will be dropped later as of Edition 2024 | 
|  | } | 
|  |  | 
|  | mir_transform_tail_expr_dtor = {$dtor_kind -> | 
|  | [dyn] `{$name}` may invoke a custom destructor because it contains a trait object | 
|  | *[concrete] `{$name}` invokes this custom destructor | 
|  | } | 
|  |  | 
|  | mir_transform_tail_expr_local = {$is_generated_name -> | 
|  | [true] this value will be stored in a temporary; let us call it `{$name}` | 
|  | *[false] `{$name}` calls a custom destructor | 
|  | } | 
|  |  | 
|  | mir_transform_unaligned_packed_ref = reference to packed field is unaligned | 
|  | .note = packed structs are only aligned by one byte, and many modern architectures penalize unaligned field accesses | 
|  | .note_ub = creating a misaligned reference is undefined behavior (even if that reference is never dereferenced) | 
|  | .help = copy the field contents to a local variable, or replace the reference with a raw pointer and use `read_unaligned`/`write_unaligned` (loads and stores via `*p` must be properly aligned even when using raw pointers) | 
|  |  | 
|  | mir_transform_unconditional_recursion = function cannot return without recursing | 
|  | .label = cannot return without recursing | 
|  | .help = a `loop` may express intention better if this is on purpose | 
|  |  | 
|  | mir_transform_unconditional_recursion_call_site_label = recursive call site | 
|  |  | 
|  | mir_transform_unknown_pass_name = MIR pass `{$name}` is unknown and will be ignored |