The JIT that runs makepad apps from source: lexer, front end, type checker, lazy borrow checker (Gandalf; `--check-first` opts in), codegen, session and warm/cold caches keyed by compiler stamp, provided crates bound late, startup images, live patching. User-facing name is `makepad run` (binary `makepad`, MAKEPAD_RUN_* env, ~/.makepad-run); libs/relax stays the internal library name. `makepad check` reports rustc-style diagnostics with rustc error codes and checks a whole workspace (`--workspace`). Runs on macOS, Linux, Windows and Android. makepad-remote: one tool schema for apps and the WM (app/1): grabs, captures, traces, frame profiles and tweaks. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
13 lines
481 B
Rust
13 lines
481 B
Rust
// T3: fn-item coercion E0597 in makepad test; owner: conform.
|
|
// OA round-33 report, L4' fn-pointer object-lifetime regression.
|
|
trait Tr {}
|
|
impl Tr for u8 {}
|
|
fn apply<'a>(f: &'a fn(*const dyn Tr), p: *const (dyn Tr + 'a)) { f(p); }
|
|
fn static_object(_: *const dyn Tr) {}
|
|
#[test]
|
|
#[ignore = "T3: makepad test E0597; conform"]
|
|
fn fn_pointer_object_lifetime() {
|
|
let f: fn(*const dyn Tr) = static_object;
|
|
let value = 0u8;
|
|
apply(&f, &value as *const u8 as *const dyn Tr);
|
|
}
|