Age | Commit message (Collapse) | Author | |
---|---|---|---|
2024-04-21 | CI: Remove obsolete workaround for qemu-binfmt bug | Michael Forney | |
2024-04-21 | CI: Add alpine-riscv64 builder | Michael Forney | |
2024-04-21 | expr: Create decl for compound literal during parse | Michael Forney | |
2024-04-20 | Style | Michael Forney | |
2024-04-20 | qbe: Track 'thread' prefix in value kind | Michael Forney | |
Adding a bool field increases the size of struct value by 8 due to alignment. In the future, maybe we just use something like VALUE_DECL instead. | |||
2024-04-20 | qbe: Disallow address of TLS variables in static initializers | Michael Forney | |
The address of an object with thread storage duration is not an address constant. | |||
2024-04-20 | qbe: Pass struct decl to mkglobal instead of fields from the decl | Michael Forney | |
2024-04-20 | decl: Keep track of storage duration in struct decl | Michael Forney | |
2024-04-19 | decl: Help gcc see that variable is not used uninitialized | Michael Forney | |
2024-04-19 | implement _Thread_local storage class | Drew DeVault | |
Implements: https://todo.sr.ht/~mcf/cproc/8 | |||
2024-04-16 | test: Add test for compatible array types | Michael Forney | |
2024-04-16 | decl: Combine typeof and typeof_unqual switch case | Michael Forney | |
2024-04-16 | qbe: Clarify comment | Michael Forney | |
2024-04-15 | README: Remove mention of trigraphs (they were removed in C23) | Michael Forney | |
2024-04-15 | decl: Support variadic functions with no other parameters | Michael Forney | |
2024-04-15 | decl: Save and re-open parameter scope for body | Michael Forney | |
2024-04-15 | Remove support for non-prototype function declarations and definitions | Michael Forney | |
These were removed in C23. | |||
2024-04-15 | decl: Improve check for function prototype consisting of only 'void' | Michael Forney | |
2024-04-13 | decl: Include offending struct member in error messages | Michael Forney | |
2024-04-12 | README: Update builds.sr.ht badge to only consider master branch | Michael Forney | |
2024-04-12 | Use struct decl for function parameters | Michael Forney | |
2024-04-12 | decl: Add name field to decl struct | Michael Forney | |
2024-04-12 | decl: Use singly-linked list for tentative definitions | Michael Forney | |
2024-04-08 | expr: Remove evalexpr() and just use condexpr() with eval() | Michael Forney | |
evalexpr() was originally named `constexpr`, since it matched the constant-expression rule in the grammar. It had to be renamed due to conflict with the C23 constexpr keyword. However, since 2e3ecc70, eval has just one argument, so just call eval(condexpr()) directly. | |||
2024-04-07 | Store length expression in array types | Michael Forney | |
We don't need the length constant anymore, so just use that name for the length expression. References: https://todo.sr.ht/~mcf/cproc/1 | |||
2024-04-07 | eval: Use enum instead of define for float/signed flags | Michael Forney | |
2024-04-07 | decl: Remove unsufficient attempt to push qualifiers to array element type | Michael Forney | |
There may be multiple nested array types, so this doesn't work in general. References: https://todo.sr.ht/~mcf/cproc/79 | |||
2024-04-07 | init: Remove use of u.array.length | Michael Forney | |
Instead, keep track of index offset. | |||
2024-04-06 | Remove some unnecessary use of array type length | Michael Forney | |
2024-04-06 | expr: Check that _Generic association type has complete object type | Michael Forney | |
2024-04-04 | test: Use C23 keywords in test data | Michael Forney | |
Apparently 8120240c1f missed some. | |||
2024-04-04 | type: Fix qualifiers of adjusted array types of parameters | Michael Forney | |
2024-04-03 | LICENSE: Update copyright year | Michael Forney | |
2024-04-03 | expr: Help gcc see that variables aren't used uninitialized | Michael Forney | |
2024-04-03 | Use 'bool' in headers instead of '_Bool' | Michael Forney | |
_Bool is deprecated in C23, and using it breaks bootstrap with implementations that don't fully support C99 and define bool to some other type in stdbool.h. | |||
2024-04-02 | map: Use simpler fnv-1a hash function | Michael Forney | |
2024-03-29 | Use C23 keywords in test data | Michael Forney | |
2024-03-24 | decl: Implement GNU packed attribute | Michael Forney | |
Implements: https://todo.sr.ht/~mcf/cproc/72 | |||
2024-03-24 | Fix printf format specifier | Michael Forney | |
2024-03-24 | decl: Check alignment range | Michael Forney | |
We store alignment as int, so check that it fits to avoid implementation-defined behavior. Also, fix printf format specifier and drop unneeded parentheses. | |||
2024-03-24 | attr: Parse some GNU attributes | Michael Forney | |
Implements: https://todo.sr.ht/~mcf/cproc/68 | |||
2024-03-24 | attr: Add support for GNU syntax | Michael Forney | |
References: https://todo.sr.ht/~mcf/cproc/68 | |||
2024-03-24 | Add support for C23 attribute syntax | Michael Forney | |
Currently, all attributes are ignored. References: https://todo.sr.ht/~mcf/cproc/68 | |||
2024-03-24 | map: Use separately allocated struct map | Michael Forney | |
2024-03-23 | README: Fix issue tracker link | Jason Lenz | |
2024-03-23 | expr: Keep track of storage duration of compound literals | Michael Forney | |
2024-03-23 | CI: Add patch for openbsd to use __builtin_va_list on all compilers | Michael Forney | |
2024-03-23 | Add test for unreachable statements | Michael Forney | |
This used to trigger a bug. References: https://todo.sr.ht/~mcf/cproc/80 | |||
2024-03-23 | Add tests for standard enum types | Michael Forney | |
2024-03-23 | Change type of u8 string literals to unsigned char for C23 | Michael Forney | |