Commit Graph

  • 2bdc6b800c Write to an in-memory buffer before writing to an actual output file Rui Ueyama 2020-08-18 11:45:59 +0900
  • c302a969d8 Do not allow to obtain an address of a bitfield Rui Ueyama 2020-08-23 12:38:17 +0900
  • 17ea802cea Handle zero-width bitfield member Rui Ueyama 2020-08-23 11:47:16 +0900
  • 54c2b3b18f Handle op=-style assignments to bitfields Rui Ueyama 2020-08-27 23:50:05 +0900
  • 441a89b80b Support global struct bitfield initializer Rui Ueyama 2020-09-06 21:06:15 +0900
  • cc852fe99d Add bitfield Rui Ueyama 2020-08-27 23:36:12 +0900
  • be8b6f6d31 Add -U option Rui Ueyama 2020-08-18 11:09:32 +0900
  • fc69f5c6f9 Add -D option Rui Ueyama 2020-08-28 01:34:10 +0900
  • 3f2c2d5bca Tokenize numeric tokens as pp-numbers Rui Ueyama 2020-09-27 19:45:12 +0900
  • e0b5da3b39 Dereferencing a function shouldn't do anything Rui Ueyama 2020-04-23 17:18:49 +0900
  • 603de502fd Add va_copy() Rui Ueyama 2020-09-04 18:37:15 +0900
  • b6d3cd00df Allow variadic function to take more than 6 parameters Rui Ueyama 2020-09-04 18:27:31 +0900
  • d7bad96114 Allow to define a function returning a struct Rui Ueyama 2020-09-04 11:57:15 +0900
  • c72df1c9be Allow to call a fucntion returning a struct Rui Ueyama 2020-08-27 23:16:53 +0900
  • d63b1f410a Allow struct argument Rui Ueyama 2020-07-31 12:12:43 +0900
  • 5e0f8c47e3 Allow struct parameter Rui Ueyama 2020-08-27 23:14:58 +0900
  • 9021f7f5de Support passed-on-stack parameters Rui Ueyama 2020-07-30 12:48:20 +0900
  • b29f052102 Support passed-on-stack arguments Rui Ueyama 2020-08-27 22:59:31 +0900
  • 12a9e7506c Self-host: including preprocessor, chibicc can compile itself Rui Ueyama 2020-08-30 18:49:29 +0900
  • 5322ea8495 Add va_arg() Rui Ueyama 2020-08-16 14:27:35 +0900
  • 7cbfd111d3 Add stdarg.h, stdbool.h, stddef.h, stdalign.h and float.h Rui Ueyama 2020-08-30 18:58:41 +0900
  • 7746e4ee0b Recognize wide character literal Rui Ueyama 2020-07-20 19:24:56 +0900
  • ab4f1e1e19 Concatenate adjacent string literals Rui Ueyama 2020-04-26 10:11:02 +0900
  • 82ba010c76 [GNU] Add __FUNCTION__ Rui Ueyama 2020-09-04 11:56:28 +0900
  • ba6b4b6375 Add __func__ Rui Ueyama 2020-09-04 11:55:28 +0900
  • dc01f94900 Add __VA_ARGS__ Rui Ueyama 2020-04-02 06:55:07 +0900
  • 6f17071885 Add __FILE__ and __LINE__ Rui Ueyama 2020-08-30 18:57:54 +0900
  • 5f5a8507ff Add predefine macros such as __STDC__ Rui Ueyama 2020-04-01 23:54:33 +0900
  • e7fdc2e3f1 Add #error Rui Ueyama 2020-04-01 20:46:47 +0900
  • a939a7a906 Add default include paths Rui Ueyama 2020-09-19 20:42:21 +0900
  • a1dd6213c8 Add -I<dir> option Rui Ueyama 2020-09-25 23:18:32 +0900
  • d85fc4ffcf Add #include <...> Rui Ueyama 2020-08-30 18:57:20 +0900
  • b33fe0ea82 Support line continuation Rui Ueyama 2020-03-31 22:27:38 +0900
  • 8075582c21 Preserve newline and space during macro expansion Rui Ueyama 2020-08-30 02:33:01 +0900
  • a8d76ad435 Replace remaining identifiers with 0 in macro constexpr Rui Ueyama 2020-03-31 22:16:56 +0900
  • 5cb2f89e6a Add defined() macro operator Rui Ueyama 2020-08-31 16:50:58 +0900
  • 769b5a0941 Use chibicc's preprocessor for all tests Rui Ueyama 2020-08-30 18:54:12 +0900
  • 8f561aed9b Add macro token-pasting operator (##) Rui Ueyama 2020-08-30 01:05:28 +0900
  • 8f6f7925a0 Add macro stringizing operator (#) Rui Ueyama 2020-08-30 01:04:23 +0900
  • 1313fc6d3a Do not expand a token more than once for the same funclike macro Rui Ueyama 2020-08-31 16:48:29 +0900
  • c7d7ce0f0c Allow parenthesized expressions as macro arguments Rui Ueyama 2020-03-29 22:18:02 +0900
  • dd4306cdd8 Allow empty macro arguments Rui Ueyama 2020-03-30 10:39:35 +0900
  • b9ad3e43cf Add multi-arity funclike #define Rui Ueyama 2020-03-30 10:37:44 +0900
  • dec3b3fa02 Add zero-arity funclike #define Rui Ueyama 2020-08-18 10:45:03 +0900
  • 1f80f581e5 Add #ifdef and #ifndef Rui Ueyama 2020-03-29 17:18:31 +0900
  • acce00228b Do not expand a token more than once for the same objlike macro Rui Ueyama 2020-03-29 15:47:50 +0900
  • 2651448084 Expand macros in the #if and #elif argument context Rui Ueyama 2020-08-20 19:36:49 +0900
  • 9ad60e41d5 Add #undef Rui Ueyama 2020-03-29 18:23:33 +0900
  • 97d33ad3bd Add objlike #define Rui Ueyama 2020-03-29 13:29:48 +0900
  • e7a1857a31 Add #elif Rui Ueyama 2020-03-29 08:51:06 +0900
  • c6e81d22f8 Add #else Rui Ueyama 2020-03-30 09:57:07 +0900
  • aa570f3086 Skip nested #if in a skipped #if-clause Rui Ueyama 2020-03-30 09:54:47 +0900
  • bf6ff928ad Add #if and #endif Rui Ueyama 2020-08-20 19:36:36 +0900
  • d138864a2a Add -E option Rui Ueyama 2020-08-20 21:37:02 +0900
  • ec149f64d2 Skip extra tokens after `#include "..."` Rui Ueyama 2020-04-21 10:46:26 +0900
  • d367510fcc Add #include "..." Rui Ueyama 2020-09-03 19:24:23 +0900
  • 146c7b3dd4 Add the null directive Rui Ueyama 2020-03-30 09:30:06 +0900
  • 1e1ea39dad Add a do-nothing preprocessor Rui Ueyama 2020-08-18 09:41:59 +0900
  • 8b726b5489 Run "ld" unless -c is given Rui Ueyama 2020-09-19 20:36:26 +0900
  • b833cd0f29 Accept multiple input files Rui Ueyama 2020-08-18 09:16:57 +0900
  • 140b43358c Run "as" command unless -S is given Rui Ueyama 2020-10-08 14:34:23 +0900
  • f3d96136f2 Split cc1 from compiler driver Rui Ueyama 2020-08-15 22:30:28 +0900
  • 53e81033ce Add usual arithmetic conversion for function pointer Rui Ueyama 2020-09-02 20:11:28 +0900
  • c5953ba132 Decay a function to a pointer in the func param context Rui Ueyama 2020-08-31 21:28:53 +0900
  • d06a8ac6e6 Add function pointer Rui Ueyama 2020-09-03 18:50:56 +0900
  • 5d15431df1 Add stage2 build Rui Ueyama 2019-08-24 12:08:12 +0900
  • 9bf96124ba Add "long double" as an alias for "double" Rui Ueyama 2020-08-26 14:51:06 +0900
  • ffea4219b1 Add flonum constant expression Rui Ueyama 2020-05-01 19:30:17 +0900
  • e452cf7215 Support variadic function with floating-point parameters Rui Ueyama 2020-05-01 17:36:12 +0900
  • 8b14859f63 Implement default argument promotion for float Rui Ueyama 2020-04-30 23:33:27 +0900
  • c6b30568b4 Allow to define a function that takes/returns flonums Rui Ueyama 2020-08-27 22:47:31 +0900
  • 8ec1ebf176 Allow to call a function that takes/returns flonums Rui Ueyama 2020-08-27 22:46:16 +0900
  • 0ce1093027 Handle flonum for if, while, do, !, ?:, || and && Rui Ueyama 2020-09-13 15:58:36 +0900
  • 83f76ebb66 Add flonum +, -, * and / Rui Ueyama 2020-09-22 18:29:17 +0900
  • cf9ceecb2f Add flonum ==, !=, < and <= Rui Ueyama 2020-09-22 18:28:37 +0900
  • 29de46aed4 Add "float" and "double" local variables and casts Rui Ueyama 2020-09-12 14:47:47 +0900
  • 1e57f72d8a Add floating-point constant Rui Ueyama 2020-09-27 19:43:03 +0900
  • 1fad2595d6 Allow to omit parameter name in function declaration Rui Ueyama 2020-09-04 17:28:20 +0900
  • 93d12771d0 Ignore "static" and "const" in array-dimensions Rui Ueyama 2020-08-31 09:58:42 +0900
  • b773554275 Ignore const, volatile, auto, register, restrict or _Noreturn. Rui Ueyama 2020-09-03 01:22:17 +0900
  • 7ba6fe8d94 Handle unsigned types in the constant expression Rui Ueyama 2020-03-26 21:20:24 +0900
  • 6880a39d2a When comparing two pointers, treat them as unsigned Rui Ueyama 2020-09-11 21:29:12 +0900
  • 8b8f3de48b Use long or ulong instead of int for some expressions Rui Ueyama 2020-03-24 22:18:59 +0900
  • aaf10459d9 Add U, L and LL suffixes Rui Ueyama 2019-09-21 16:17:40 +0900
  • 34ab83bdf4 Add unsigned integral types Rui Ueyama 2020-08-28 23:29:49 +0900
  • 3f59ce7955 Add `signed` keyword Rui Ueyama 2020-10-06 17:08:59 +0900
  • 197689a22b Check the number of function arguments Rui Ueyama 2020-09-26 14:29:06 +0900
  • 754a24fafc Add va_start to support variadic functions Rui Ueyama 2019-08-25 11:48:44 +0900
  • 58fc86137c Allow to call a variadic function Rui Ueyama 2020-10-07 20:24:13 +0900
  • dcd4579226 Handle a function returning bool, char or short Rui Ueyama 2020-09-13 16:25:46 +0900
  • 6a0ed71107 Align stack frame to 16 byte boundaries Rui Ueyama 2020-09-13 16:25:34 +0900
  • ee252e6ce7 Add do ... while Rui Ueyama 2019-08-24 16:09:46 +0900
  • eb85527656 Add static global variables Rui Ueyama 2020-09-04 11:21:12 +0900
  • 30b3e216cd Add return that doesn't take any value Rui Ueyama 2020-08-27 22:01:34 +0900
  • 127056dc1d Add compound literals Rui Ueyama 2019-08-24 07:45:14 +0900
  • 319772b42e Add static local variables Rui Ueyama 2020-09-04 14:41:55 +0900
  • 310a87e15e [GNU] Allow a variable as an operand of _Alignof Rui Ueyama 2020-09-26 08:09:59 +0900
  • 9df51789e7 Add _Alignof and _Alignas Rui Ueyama 2020-09-04 11:20:55 +0900
  • 27647455e4 Handle extern declarations in a block Rui Ueyama 2020-09-04 18:08:32 +0900
  • 006a45ccd4 Add extern Rui Ueyama 2020-09-04 17:27:22 +0900