pyvm: implement TypeOp(check) + strict match-guard smokes; parser: guard support in match; llvm: PHI wiring at block head + incoming normalization; docs: AGENTS LLVM/PHI + guard policy; add tests; plan: refactor parse_box_declaration + TODO triage + clone reduction + CLI split + LLVM builder split; update CURRENT_TASK.md

This commit is contained in:
Selfhosting Dev
2025-09-19 10:52:57 +09:00
parent e55ce363c3
commit 7dfd55bfdb
22 changed files with 2622 additions and 86 deletions

View File

@ -249,11 +249,13 @@ impl super::MirBuilder {
// Map a user-facing type name to MIR type
pub(super) fn parse_type_name_to_mir(name: &str) -> super::MirType {
match name {
"Integer" | "Int" | "I64" => super::MirType::Integer,
"Float" | "F64" => super::MirType::Float,
"Bool" | "Boolean" => super::MirType::Bool,
"String" => super::MirType::String,
// Primitive families
"Integer" | "Int" | "I64" | "IntegerBox" | "IntBox" => super::MirType::Integer,
"Float" | "F64" | "FloatBox" => super::MirType::Float,
"Bool" | "Boolean" | "BoolBox" => super::MirType::Bool,
"String" | "StringBox" => super::MirType::String,
"Void" | "Unit" => super::MirType::Void,
// Fallback: treat as user box type
other => super::MirType::Box(other.to_string()),
}
}