aboutsummaryrefslogtreecommitdiffhomepage
path: root/c
Commit message (Expand)AuthorAgeFilesLines
* lexer: use a hashmap to lookup keywords lemon2025-12-152-28/+28
* c: error when defining function with incomplete parameter type lemon2025-12-151-0/+4
* c: support forward-declared enums lemon2025-12-151-34/+32
* c: emit data for __func__ lazily lemon2025-12-151-15/+16
* c: fix another memory-leak-when-errors case lemon2025-12-141-1/+2
* c: as a hack, warn for zero-length array instead of error lemon2025-12-141-1/+1
* c/builtin: fix vacopy lemon2025-12-141-5/+6
* c: fix memory leak if initializer data if error lemon2025-12-141-1/+1
* eval: long double placeholder lemon2025-12-141-1/+2
* cpp: support #line directives lemon2025-12-141-10/+75
* cpp: correctly handle extra tokens after directives lemon2025-12-141-16/+21
* only put dats can in .text now when emitting it lemon2025-12-141-2/+2
* various relocation related optimization lemon2025-12-141-3/+3
* c: handle more static eval edgecases for int -> ptr lemon2025-12-132-5/+20
* c: case/default labels only create new blocks when necessary lemon2025-12-131-7/+11
* fix position independent loads of function symbols. lemon2025-12-131-3/+3
* s/amd64/x86_64/ lemon2025-12-121-1/+1
* c: switch stmt diagnostics lemon2025-12-121-8/+49
* lex: use pmap for macro lookup lemon2025-12-122-126/+70
* rename arraylength macro -> countof lemon2025-12-113-51/+51
* c: accept C99 `[static N]` style array decls, changes to fn quals lemon2025-12-111-24/+45
* _Alignof and stuff lemon2025-12-111-11/+18
* c: use a look-up table for isdecltok() lemon2025-12-111-14/+18
* -trigraphs option lemon2025-12-111-3/+3
* c: optimize environment decl lookup lemon2025-12-111-6/+26
* c: disallow mismatched nested extern decl, & more diagnostics lemon2025-12-111-17/+24
* c: support for noreturn, and decl parsing cleanup lemon2025-12-112-107/+115
* lex/expr(): cleanup lemon2025-12-111-29/+29
* c: expr2reloc() change sig to return addend lemon2025-12-111-15/+12
* lexer: properly add padding for cpppredefs lemon2025-12-101-2/+2
* c: fix static relocation for &sym[offset] lemon2025-12-101-7/+6
* c: fix compound assignment type conversions when types don't match lemon2025-12-101-2/+3
* lex: make some hashtables resizable lemon2025-12-091-29/+67
* c: fix some static initialziers lemon2025-12-081-1/+3
* eval: &*x address constants lemon2025-12-081-0/+4
* c: fix more declaration parsing bugs lemon2025-12-081-7/+17
* add command-line predefined macros (-D, -U) lemon2025-12-061-4/+52
* eval: fix float cmps lemon2025-12-051-0/+2
* cpp: implement preprocessor expressions short circuiting behaviour lemon2025-12-031-17/+23
* c: allow redeclaration with K&R and non K&R prototypes lemon2025-12-031-2/+10
* preprocessor: add #ifndef...#endif include guard optimization lemon2025-12-022-11/+30
* c: make tentative definitions work lemon2025-12-021-17/+34
* c: narrowing ints of different signedness... lemon2025-12-011-1/+1
* c: edgecase for redeclaration of implicit sized array lemon2025-12-011-1/+1
* c: fix some decl bugs and diagnostics lemon2025-11-301-18/+34
* lex: remove some hacks and optimize preprocessor lemon2025-11-281-39/+34
* c/type: make implicit const T* -> T* conversion warning, not error lemon2025-11-261-1/+8
* c: more static initializer fixes lemon2025-11-262-7/+9
* c: fix elided-braces initializers for nested unions lemon2025-11-261-5/+16
* pp: fix token pasting (hopefully) lemon2025-11-241-27/+15