| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | c: SYM expr should store decl ref as an index, not pointer | 2025-12-30 | 1 | -2/+4 | |
| | | | | | | | | | Because envdecls (now declsbuf) can be resized and invalidate those pointers. I missed this because the default initialization size of that buffer (and the fact that it would mostly only manifest with function-local expressions) made it not really come up in practice. Silly | ||||
| * | c: Fix some dumb uses of initialized stuff | 2025-12-22 | 1 | -7/+5 | |
| | | | | | | | Can't figure out what's wrong with the change to struct expr from 9721d6ba40 but it makes valgrind complain and causes miscompilation of the compiler itself.. | ||||
| * | some static assertions for packed type sizes | 2025-12-20 | 1 | -6/+8 | |
| | | |||||
| * | c.h init zero bitset portability | 2025-12-19 | 1 | -1/+1 | |
| | | |||||
| * | create distinct interned string type | 2025-12-15 | 1 | -2/+2 | |
| | | | | | | | | | | | | | | | Interned strings are used pervasively, so it's a good idea to add a layer of type safety to differentiate them from general cstrs and avoid potential bugs from comparing non-interned and interned strings. Not that that's happened so far that I can remember, but it could. I'm 90% sure it's legal to alias `struct {char c;}` pointers with `char` pointers. This specific typedef gives type safety but with a simple one-way `internstr -> const char *` typecast (with `&istr->c`). Converting the other way around is more intentional: a straight up cast `(internstr)cstr` which sticks out as unchecked and probably wrong, or calling the intern(cstr) function, which is the right way. | ||||
| * | c: support for noreturn, and decl parsing cleanup | 2025-12-11 | 1 | -0/+2 | |
| | | |||||
| * | c: add decl.sym; avoid calling mkhiddensym repeatedly | 2025-11-22 | 1 | -0/+1 | |
| | | |||||
| * | factor type stuff into type.h | 2025-11-16 | 1 | -0/+1 | |
| | | |||||
| * | preeliminary va_list support | 2025-11-14 | 1 | -4/+34 | |
| | | |||||
| * | c irgen fixes | 2025-10-19 | 1 | -1/+8 | |
| | | |||||
| * | Organize source files into directories | 2025-10-19 | 1 | -0/+89 | |