selfhost: trait bounds parsing, sema checks, and generic monomorphization fix
- AST: add typeParam0Bound/typeParam1Bound to Decl, strValue2 to dkImpl - Parser: parse <T: Trait> bounds, Self type in interfaces, extend-for blocks - Sema: add interfaceTable/methodTable, Sema_CheckTraitBounds, Sema_TypeImplements - HIR lower: two-pass decl iteration — collect generic funcs before lowering bodies Fixes Max<Circle>(...) not generating Max_Circle when caller precedes callee - C backend: skip generic funcs in emission (only emit monomorphized instances) - Array.bux: fix for-loop over monomorphized Array types - All debug prints removed; selfhost loop passes (C output IDENTICAL)
This commit is contained in:
@@ -30,6 +30,11 @@ func Array_Get<T>(self: *Array<T>, index: uint) -> T {
|
||||
return self.data[index];
|
||||
}
|
||||
|
||||
func Array_Set<T>(self: *Array<T>, index: uint, value: T) {
|
||||
bux_bounds_check(index, self.len);
|
||||
self.data[index] = value;
|
||||
}
|
||||
|
||||
func Array_Len<T>(self: *Array<T>) -> uint {
|
||||
return self.len;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user