fix: multi-arg calls, uninitialized symbols, param limit; add banner img; update docs

- Fix segfault from uninitialized Symbol structs in scope/hir_lower/sema
- Fix null ReadFile crash in Cli_MergeFileInto (missing stdlib files)
- Extend function params from 6 to 9 (bux_str_format needs 9 args)
- Add ExprList/HirArgList linked lists for >2 call arguments
- Add banner image to README
- Update docs: C backend is now primary (not QBE)
This commit is contained in:
2026-06-05 15:21:15 +03:00
parent 0c1f230286
commit 3e46e67d48
21 changed files with 368 additions and 72 deletions
+14 -2
View File
@@ -32,7 +32,13 @@ make build
make dev
```
The output is a single binary: `buxc`.
The output is a single binary: `buxc` (bootstrap compiler in Nim).
The self-hosted compiler `buxc2` is built from `src_bux/*.bux` sources via:
```bash
make selfhost
```
This compiles `buxc2` using the bootstrap compiler. The self-hosted compiler generates C code and invokes `cc` to produce native binaries.
---
@@ -164,12 +170,18 @@ bux/
./buxc build -v
```
### Inspecting Generated C
### Inspecting Generated C (bootstrap)
```bash
./buxc build
cat build/main.c
```
### Inspecting Generated C (self-hosted)
```bash
cd _selfhost && ../buxc build
cat build/main.c
```
### Common Errors
| Error | Cause | Fix |