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
443 B
Rust
13 lines
443 B
Rust
// typeck-audit 1.14: repeat counts are structurally resolved (fn_ctxt/checks.rs:85-186).
|
|
fn param<const N: usize>() -> [u8; N] { [7u8; N] }
|
|
|
|
#[test]
|
|
fn repeat_counts() {
|
|
let one: [String; 1] = [String::from("x"); 1];
|
|
let none: [String; 0] = [String::new(); 0];
|
|
let inferred: [u8; 3] = [1; _];
|
|
assert_eq!(one[0], "x");
|
|
assert_eq!(none.len(), 0);
|
|
assert_eq!(inferred, [1, 1, 1]);
|
|
assert_eq!(param::<4>(), [7; 4]);
|
|
}
|