feat: lifetime elision, tooling CI, registry, and LSP locals
Ship the QUALITY_PLAN stretch from ownership through ecosystem: C.1 lifetime elision (bootstrap + selfhost), bux fmt/test/doc CI hooks, stdlib goldens, package registry (bux search/add), and LSP 0.4 position-sensitive locals with inferred let types. Full-tree format pass plus Map/Set remove double-free fix.
This commit is contained in:
@@ -1,49 +1,49 @@
|
||||
module Main {
|
||||
|
||||
import Std::Array::{Array, Array_New, Array_Push};
|
||||
import Std::Array::{Array, Array_New, Array_Push};
|
||||
|
||||
struct Record {
|
||||
name: String;
|
||||
value: int;
|
||||
}
|
||||
|
||||
struct Box {
|
||||
items: Array<Record>;
|
||||
}
|
||||
|
||||
enum Payload {
|
||||
Ok(Record),
|
||||
Err(String),
|
||||
}
|
||||
|
||||
enum Color { Red, Green }
|
||||
|
||||
func Name(c: Color) -> String {
|
||||
match c {
|
||||
Color::Red => "red",
|
||||
Color::Green => "green",
|
||||
struct Record {
|
||||
name: String;
|
||||
value: int;
|
||||
}
|
||||
}
|
||||
|
||||
func Main() -> int {
|
||||
var box: Box;
|
||||
box.items = Array_New<Record>(4);
|
||||
Array_Push<Record>(&box.items, Record { name: "x", value: 10 });
|
||||
struct Box {
|
||||
items: Array<Record>;
|
||||
}
|
||||
|
||||
for it in box.items {
|
||||
if it.value == 10 {
|
||||
return 0;
|
||||
enum Payload {
|
||||
Ok(Record),
|
||||
Err(String),
|
||||
}
|
||||
|
||||
enum Color { Red, Green }
|
||||
|
||||
func Name(c: Color) -> String {
|
||||
match c {
|
||||
Color::Red => "red",
|
||||
Color::Green => "green",
|
||||
}
|
||||
}
|
||||
|
||||
var r: Payload;
|
||||
r.tag = Payload_Ok;
|
||||
r.data.Ok_0 = Record { name: "y", value: 20 };
|
||||
if r.data.Ok_0.value == 20 {
|
||||
return 0;
|
||||
func Main() -> int {
|
||||
var box: Box;
|
||||
box.items = Array_New<Record>(4);
|
||||
Array_Push<Record>(&box.items, Record { name: "x", value: 10 });
|
||||
|
||||
for it in box.items {
|
||||
if it.value == 10 {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
var r: Payload;
|
||||
r.tag = Payload_Ok;
|
||||
r.data.Ok_0 = Record { name: "y", value: 20 };
|
||||
if r.data.Ok_0.value == 20 {
|
||||
return 0;
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user