~mcf/cproc

ref: db4b798e1fbd032b46fbd2a39d3c9797aa1dd34a cproc/cc.h -rw-r--r-- 9.1 KiB
Implement no-op __builtin_expect
Implement prefixed character constants
Pass target to cc-qbe
Add __attribute__ keyword

This will be needed for weak references and hidden visibility.
Implement asm labels
Use enum type for expect argument
eval: Keep track of kind of constant expression we are evaluating

When we are evaluating an arithmetic constant expression, we don't want
to indroduce static data definitions for string or compound literals.

Fixes #59.
Add __asm__ keyword
Use a common member for expression base
Use enum type for expr->builtin.kind
Use a common member for expression op
Free functions when we're done with them
Fix integer promotion on bit-fields

Fixes #47.
expr: Use tokstr in ++/-- operator error messages
Keep track of type properties in type
Make basic types have their own kind
Shorten some names with 'long'
Improve token descriptions in errors
Implement bit-field initializers
Implement __builtin_types_compatible_p

This is used by util-linux.
Next