| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2017-04-12 | block statement lists never get fake expressions | Josh Wolfe | |
| instead blocks have a field that encodes whether the last statement ended with a semicolon. | |||
| 2017-04-13 | ability to inline at function callsite | Andrew Kelley | |
| closes #306 | |||
| 2017-04-10 | fix some -Wconversion errors | Andrew Kelley | |
| 2017-03-26 | new unreachable syntax | Andrew Kelley | |
| * `noreturn` is the primitive type. * `unreachable` is a control flow keyword. * `@unreachable()` builtin function is deleted. closes #214 | |||
| 2017-03-26 | add comptime top level declaration | Andrew Kelley | |
| closes #255 | |||
| 2017-03-16 | introduce new test syntax | Andrew Kelley | |
| * remove setFnTest builtin * add test "name" { ... } syntax * remove --check-unused argument. functions are always lazy now. | |||
| 2017-02-27 | fix inability to write to global in some cases | Andrew Kelley | |
| before, when we initialized a variable by copying the initialization value, it made the internal const value references point to a duplicate value, resulting in a phony duplicate global value being updated instead of the real on. now the behavior is as expected. thanks to hoppetosse for pointing out this bug on IRC. | |||
| 2017-02-05 | fix assigning to const ptr through struct or index | Andrew Kelley | |
| 2017-02-04 | remove volatileStore builtin; add volatile pointers | Andrew Kelley | |
| closes #238 | |||
| 2017-02-04 | ability to set global variable alignment and ... | Andrew Kelley | |
| ..section in the initialization expression | |||
| 2017-02-03 | exported global variables get emitted as external in LLVM | Andrew Kelley | |
| 2017-02-03 | implement packed structs | Andrew Kelley | |
| closes #183 | |||
| 2017-02-02 | add try expression | Andrew Kelley | |
| See #83 | |||
| 2017-02-02 | remove ability to mark if and switch as inline | Andrew Kelley | |
| if and switch are implicitly inline if the condition/target expression is known at compile time. instead of: ``` inline if (condition) ... inline switch (target) ... ``` one can use: ``` if (comptime condition) ... switch (comptime target) ... ``` | |||
| 2017-01-23 | various fixes | Andrew Kelley | |
| * comptime expression is a block expression as it should be * fix var args when number of args passed is 0 * implement const value equality for structs * fix indent when rendering container decl AST * IR: prevent duplicate generation of code when it is partially compile-time evaluated * implement compile time struct field pointer evaluation * fix compile time evaluation of slicing | |||
| 2017-01-23 | basic support for functions with variable length arguments | Andrew Kelley | |
| See #77 | |||
| 2017-01-22 | introduce comptime expression | Andrew Kelley | |
| closes #221 | |||
| 2017-01-16 | get rid of zeroes literal | Andrew Kelley | |
| closes #222 | |||
| 2017-01-12 | IR: implement macro for function aliasing function pointer | Andrew Kelley | |
| 2017-01-11 | pass some parseh tests | Andrew Kelley | |
| 2017-01-11 | pass more tests | Andrew Kelley | |
| 2017-01-10 | partially fix parseh command | Andrew Kelley | |
| 2016-12-18 | remove duplicate definition of container_string | Andrew Kelley | |
| 2016-12-18 | IR: all structs anonymous | Andrew Kelley | |
| 2016-12-17 | IR: add more instructions | Andrew Kelley | |
| * MaybeWrap * TestErr * UnwrapErrCode * UnwrapErrPayload * ErrUnionTypeChild * ErrWrapCode * ErrWrapPayload | |||
| 2016-12-13 | IR: implement maybe return expression | Andrew Kelley | |
| 2016-12-12 | IR: implement memcpy, memset, and slice expression | Andrew Kelley | |
| 2016-12-11 | IR: fix implementation of parseh | Andrew Kelley | |
| libc hello world works now | |||
| 2016-12-06 | IR: implement defer | Andrew Kelley | |
| 2016-12-05 | IR: implement break and continue | Andrew Kelley | |
| 2016-12-05 | IR: implement generic function calls | Andrew Kelley | |
| 2016-12-04 | add missing copyright notices | Andrew Kelley | |
| 2016-12-04 | IR: re-organize where state goes to prepare for generics | Andrew Kelley | |
| * Rip out legacy code for generics * put scope in instruction instead of AST nodes * separate top level decl stuff from AST nodes - remove the assumption that there is a 1:1 correspondence between an output instruction and an AST node - This way we won't have to clone AST nodes for generics. | |||
| 2016-11-26 | IR: support goto and labels | Andrew Kelley | |
| 2016-11-26 | IR: support import builtin function | Andrew Kelley | |
| 2016-11-26 | IR: switch expression works with numbers | Andrew Kelley | |
| 2016-11-24 | IR: generating a switch statement | Andrew Kelley | |
| 2016-11-21 | IR: support unwrap maybe operation | Andrew Kelley | |
| 2016-11-19 | IR: error for uncasted null lit variable | Andrew Kelley | |
| 2016-11-19 | IR: implement compileVar builtin and more | Andrew Kelley | |
| * implicit array to slice cast * fix if statements at global scope * implement array type IR | |||
| 2016-11-18 | IR: more maybe type support | Andrew Kelley | |
| 2016-11-18 | IR: support setDebugSafety builtin function | Andrew Kelley | |
| 2016-11-17 | remove AST cloning code and add AST render for while loops | Andrew Kelley | |
| 2016-11-13 | IR: add assembly instruction | Andrew Kelley | |
| 2016-11-13 | IR: fix prefix op eval setting wrong type | Andrew Kelley | |
| 2016-11-13 | IR handles global variables correctly | Andrew Kelley | |
| 2016-11-04 | WIP moving all analysis to IR | Andrew Kelley | |
| 2016-09-28 | remove compiler directives | Andrew Kelley | |
| * add `setFnTest`, `setFnVisible`, `setFnStaticEval`, `setFnNoInline` builtin functions to replace previous directive functionality * add `coldcc` and `nakedcc` as keywords which can be used as part of a function prototype. * `setDebugSafety` builtin can be used to set debug safety features at a per block scope level. * closes #169 | |||
| 2016-09-26 | add this keyword refers to thing in immediate scope | Andrew Kelley | |
| See #169 | |||
| 2016-09-19 | use size_t for indexes | Andrew Kelley | |
| protect against incorrect copies in debug mode | |||
