Age | Commit message (Collapse) | Author | |
---|---|---|---|
2019-03-12 | Implement __builtin_constant_p | Michael Forney | |
2019-03-12 | Sort built-ins | Michael Forney | |
2019-03-12 | scan: Add support for prefixed string literals and character constants | Michael Forney | |
2019-03-12 | scan: Accept leading `.` in pp-number | Michael Forney | |
2019-03-12 | Revert "Zero uninitialized decls/returns." | Michael Forney | |
This reverts commit 7722c7593a1a249e1a6d98d84afdff3cb086ca81. This causes problems with large stack allocations, such as https://github.com/madler/pigz/blob/fe822cb435622c43f491013da77b127e9fe851a9/pigz.c#L3403-L3405 | |||
2019-03-03 | Fix emittype for qualified nested struct | Michael Forney | |
We don't have to strip qualifiers off of array types since array types can only be qualified when used in a parameter declaration before adjustment. | |||
2019-03-01 | init: Check for incomplete types | Michael Forney | |
Fixes #28. | |||
2019-03-01 | Array element cannot have incomplete or function type | Michael Forney | |
2019-03-01 | Add -M and -MM to support our own makefile. | Andrew Chambers | |
2019-02-28 | Set __GNUC__=3 and __GNUC_MINOR__=3 by default | Michael Forney | |
2019-02-27 | Implement __typeof__. | Andrew Chambers | |
2019-02-26 | Use funcinst macro in a few more places | Michael Forney | |
2019-02-26 | Simplify common funcinst case. | Andrew Chambers | |
2019-02-26 | Zero uninitialized decls/returns. | Andrew Chambers | |
Resolves #12 and #15. | |||
2019-02-26 | Don't add zero offsets when zeroing. | Andrew Chambers | |
2019-02-25 | Use a stack of scanners | Michael Forney | |
This is necessary to implement the #include directive. | |||
2019-02-24 | Remove obsolete function declaration | Michael Forney | |
2019-02-24 | Check for negative array lengths/indices | Michael Forney | |
2019-02-24 | Add __alignof__ definition by default | Michael Forney | |
2019-02-24 | driver: Fix -E with no output specified | Michael Forney | |
2019-02-24 | Define __GNUC__=4 and __STRICT_ANSI__ by default | Michael Forney | |
We implement some GNU extensions that are used to implement certain libc features, like INF, NAN, alloca, and offsetof. | |||
2019-02-24 | Make __PRETTY_FUNCTION__ a synonym for __func__ | Michael Forney | |
2019-02-24 | Remove unnecessary spaces in keyword list | Michael Forney | |
This used to contain __builtin_va_list, so was longer than necessary. | |||
2019-02-24 | Remove unused field | Michael Forney | |
2019-02-24 | scan: Handle comments | Michael Forney | |
2019-02-24 | scan: Handle escaped newlines | Michael Forney | |
2019-02-23 | Check for any write errors | Michael Forney | |
2019-02-22 | Run cc-qbe directly in runtests | Michael Forney | |
This way, it completes much faster since we don't have to run the system preprocessor. | |||
2019-02-22 | Fix use of uninitialized character in string array | Michael Forney | |
String data in expressions is just an array and is not NULL-terminated. | |||
2019-02-22 | Make sure to zero the rest of an array initialized with a string | Michael Forney | |
2019-02-22 | Fix size of incomplete array types initialized with strings | Michael Forney | |
updatearray takes an index, so was allocating an extra byte. | |||
2019-02-22 | When & is applied to an array, it is no longer decayed | Michael Forney | |
2019-02-22 | Don't need CFLAGS with linking | Michael Forney | |
2019-02-22 | Simplify build status URL | Michael Forney | |
2019-02-22 | Implement __builtin_nanf for empty string literals | Michael Forney | |
2019-02-22 | Separate out built-in handling from postfixexpr | Michael Forney | |
2019-02-22 | Implement __builtin_inff | Michael Forney | |
2019-02-22 | Keep track of built-in kind in declaration | Michael Forney | |
Also, populate filescope with builtins outside of main. | |||
2019-02-22 | Only need to emit tentative definitions when compiling | Michael Forney | |
2019-02-22 | Simplify handling of arguments to cc-qbe a bit | Michael Forney | |
2019-02-22 | Implement __builtin_alloca | Michael Forney | |
2019-02-22 | Fix adding integer to pointer | Michael Forney | |
2019-02-21 | driver: Create output files in current directory | Michael Forney | |
2019-02-21 | Emit complete union type definitions instead of just using the first member | Michael Forney | |
2019-02-21 | Always expect at least one struct decl. | Andrew Chambers | |
2019-02-21 | driver: Fix -o - | Michael Forney | |
We need to distinguish between no output specified, and output specified to be standard out. | |||
2019-02-21 | Fix decay on qualified array types | Michael Forney | |
2019-02-20 | Use name parameter instead of tok.lit | Michael Forney | |
This was only called with tok.lit, so it didn't matter in practice. | |||
2019-02-20 | Remove some unused variables | Michael Forney | |
2019-02-20 | driver: Various improvements | Michael Forney | |
Use an input struct to keep track of information about an input. When creating an output name from an input with no extension, make sure to add a `.`. When linking, write intermediate objects to temporary files and remove them afterwards. Allow specifying language of input using `-x` flag. Allow reading from standard input by passing `-`. |