| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2019-09-16 | fix tripping llvm assert | Andrew Kelley | |
| ``` Assertion `!isa<DIType>(Scope) && "shouldn't make a namespace scope for a type" ``` We've had this problem and solved it before; see #579. | |||
| 2019-09-13 | Make single-element enum default to u0 | LemonBoy | |
| * Allow comptime_int as explicit enum tag type Closes #2997 | |||
| 2019-09-10 | async function calls re-use frame buffers | Andrew Kelley | |
| See #3069 | |||
| 2019-09-10 | Don't forget to resolve the pointee type | LemonBoy | |
| Fixes #3128 | |||
| 2019-09-10 | make the std lib support event-based I/O | Andrew Kelley | |
| also add -fstack-report | |||
| 2019-09-10 | Force LLVM to generate byte-aligned packed unions | LemonBoy | |
| Sometimes the frontend and LLVM would disagree on the ABI alignment of a packed union. Solve the problem by telling LLVM we're gonna manage the struct layout by ourselves. Closes #3184 | |||
| 2019-09-10 | forbid opaque types in function return types | Sahnvour | |
| 2019-09-09 | fix a var decl in scope preventing for loop spills | Andrew Kelley | |
| 2019-09-09 | fix bad LLVM IR when for target expr needs to be spilled | Andrew Kelley | |
| Also reduce the size of ZigVar in memory by making the name a `const char *` rather than a `Buf`. | |||
| 2019-09-07 | fix suspensions inside for loops generating invalid LLVM IR | Andrew Kelley | |
| closes #3076 | |||
| 2019-09-07 | properly spill expressions with async function calls | Andrew Kelley | |
| 2019-09-07 | implement spills when expressions used across suspend points | Andrew Kelley | |
| closes #3077 | |||
| 2019-09-07 | fix await used in an expression generating bad LLVM | Andrew Kelley | |
| 2019-09-05 | implement `noasync` function calls | Andrew Kelley | |
| See #3157 | |||
| 2019-09-05 | Always resolve the struct field types | LemonBoy | |
| Packed structs used to skip the zero-sized types and trip some assertions that expected the type reference not to be null. Fixes #3143 | |||
| 2019-09-05 | stage1 enhance IR print | Michael Dusan | |
| - print fn name in pass1 - replace scalar with enum IrPass for clarity | |||
| 2019-09-05 | Add the noinline keyword for function declarations | LemonBoy | |
| 2019-09-03 | emit a compile error if a test becomes async | Andrew Kelley | |
| See #3117 | |||
| 2019-09-03 | error message and test for alignment of variables of zero-bit types | Sahnvour | |
| 2019-09-03 | Merge branch 'fixSegfault' of https://github.com/marler8997/zig into ↵ | Andrew Kelley | |
| marler8997-fixSegfault | |||
| 2019-08-31 | stage1 enhance IR print | Michael Dusan | |
| - pass2 now prints missing instructions in a trailing fashion - instruction struct name added to print as column 2 | |||
| 2019-08-31 | improvements to `@asyncCall` | Andrew Kelley | |
| * `await @asyncCall` generates better code. See #3065 * `@asyncCall` works with a real `@Frame(func)` in addition to a byte slice. Closes #3072 * `@asyncCall` allows passing `{}` (a void value) as the result pointer, which uses the result location inside the frame. Closes #3068 * support `await @asyncCall` on a non-async function. This is in preparation for safe recursion (#1006). | |||
| 2019-08-31 | `@typeOf` now guarantees no runtime side effects | Andrew Kelley | |
| related: #1627 | |||
| 2019-08-30 | support recursive async and non-async functions | Andrew Kelley | |
| which heap allocate their own frames related: #1006 | |||
| 2019-08-29 | fix regressions | Andrew Kelley | |
| 2019-08-29 | await does not force async if callee is blocking | Andrew Kelley | |
| closes #3067 | |||
| 2019-08-29 | comparing against zero participates in lazy values | Andrew Kelley | |
| 2019-08-29 | make `@sizeOf` lazy | Andrew Kelley | |
| 2019-08-29 | fix not fully resolving debug info for structs causing llvm error | Andrew Kelley | |
| 2019-08-28 | implement lazy values for error union types | Andrew Kelley | |
| closes #3129 | |||
| 2019-08-27 | support self-referential struct through a slice of optional | Andrew Kelley | |
| by making optionals even more lazy closes #1805 | |||
| 2019-08-27 | better handle struct depends on itself via optional field | Andrew Kelley | |
| closes #1995 | |||
| 2019-08-27 | fix not properly casting align values | Andrew Kelley | |
| and add check for alignment specified on enum fields | |||
| 2019-08-27 | add a TODO compile error for union field alignment syntax | Andrew Kelley | |
| See #3125 | |||
| 2019-08-27 | implement and test struct field explicit alignment | Andrew Kelley | |
| 2019-08-26 | fix more compile error regressions | Andrew Kelley | |
| 2019-08-26 | miscellaneous fixes regarding compile errors | Andrew Kelley | |
| 2019-08-26 | fix regression on struct field with undefined type | Andrew Kelley | |
| 2019-08-26 | fix some compile error regressions | Andrew Kelley | |
| 2019-08-26 | fix some std lib dependency loops | Andrew Kelley | |
| 2019-08-26 | fix dependency loop errors with zig build | Andrew Kelley | |
| 2019-08-26 | make `@alignOf` lazily evaluate the target type | Andrew Kelley | |
| this case works now: ```zig const Foo = struct { field: Bar(@alignOf(*Foo)), }; fn Bar(comptime alignment: u29) type { return struct { field: *align(alignment) Foo, }; } ``` | |||
| 2019-08-25 | fix resolution detection of pointer types | Andrew Kelley | |
| 2019-08-25 | behavior tests passing | Andrew Kelley | |
| 2019-08-25 | make the zero-bit-ness of pointers lazy | Andrew Kelley | |
| this case works now: ```zig const Foo = struct { field: @typeOf(func).ReturnType, }; fn func(self: *Foo) void {} ``` | |||
| 2019-08-25 | fix behavior test regressions with unions | Andrew Kelley | |
| 2019-08-25 | hook up unions with lazy values | Andrew Kelley | |
| this case works now: ```zig const Expr = union(enum) { Literal: u8, Question: *Expr, }; ``` | |||
| 2019-08-24 | Fix issue 3058: zig build segfault | Jonathan Marler | |
| 2019-08-23 | add lazy value support for optional types | Andrew Kelley | |
| this case works now: ```zig const Node = struct { node: ?*Node, }; ``` | |||
| 2019-08-23 | fix regression with simple pointer to self | Andrew Kelley | |
