| Commit message (Collapse) | Author | Age | Files | Lines |
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
| |
For example in
```c
struct {int a; union { int b,c; }; int d; } X = {1,2,3};
```
Fields `a`,`b`,`d` must get initialized to 1,2,3. Not `c`
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
| |
The original implementation was broken when presented with nested
short-circuiting logical operators.
|
| | |
|
| |
|
|
|
|
| |
Reverts 9abe27f6712. This simplies expr codegen, otherwise
would manually have to check `fn->curblk != NULL` repeatedly.
Later passes will easily delete those unreachable blocks
|
| | |
|
| | |
|
| |
|
|
|
| |
compiler is bootstrapping?! however, stage1 and stage2+ executables
aren't bit-identical.. small differences in the codegen.. need to look into that
|
| |
|
|
| |
this should probably be in a separate pass?
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
| |
indicate aggregate in the stack
|
| | |
|
| | |
|
| | |
|