Bugs
October 16, 2024 ยท View on GitHub
Solved: 26/33
- GC alloc with RAII. (free after alloc_stop)
- Signature inside struct.
- Variadic macro expansion nestsing.
- Macros cause buggy behaviour with UFCS.
- Make that control structures create blocks.
- Function declarations do not work inside macros (fails signature check).
- Div/Mod bug for asm backend (Doesn't check
in_reg==rax) (DEPRECATED BACKEND) - No type checking for array access idx.
- No type checking when passing sig to fun.
- Bug with functions returning refs.
-
Parser.refdoes not implicit cast-to-ref (addtry_cast_ref) - Functions like
inputare predeferred. - Using an iterator
iin a for loop does not compile correctly. - Nested UFCS expressions (s.equals("Hello".str))
- The type of an overloaded function with a diff type than the first takes the type of the first overloaded function
- Pointer to struct displayed as "long long*". (no name field in elem_ckind)
- Struct elements pollute the global scope with non-existent variables.
- Cannot call function as struct method with only one arg.
- Macro-related bug (check
expand_macro). -
ma_cntbuiltin is no longer working. - Implicit cast arr-ptr/ref doesn't work (Def.type_compatible).
- Passing arguments from variadic macro to fun doesn't work.
- Assignment/At-related bug (also in macros) (
"15" = 5/"15" at (12 + 1)). - Cannot call function as a function param.
- No type checking for reference and dereference (
*bool = int64). - Faulty load before an assignment (div).
- Assignment of array rvalue to ptr type
-
nr % 10 + '0'fails due to widen. - No non-int64 ptrs/arrays due to arr_type and ptr_type.
- Save registers before calling a function.
- *cstr results in a int64, not int8.
- Add declared variables to fun's offset.
- References aren't working.