aboutsummaryrefslogtreecommitdiff
path: root/src/ir.cpp
AgeCommit message (Collapse)Author
2019-08-26miscellaneous fixes regarding compile errorsAndrew Kelley
2019-08-26fix regression in ir_get_refAndrew Kelley
2019-08-26fix regression with global variable assignment...Andrew Kelley
...with optional unwrapping with var initialized to undefined
2019-08-26fix regression on struct field with undefined typeAndrew Kelley
2019-08-26fix some compile error regressionsAndrew Kelley
2019-08-26fix dependency loop errors with zig buildAndrew Kelley
2019-08-26make `@alignOf` lazily evaluate the target typeAndrew 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-25fix assertion tripped instead of reporting compile errorAndrew Kelley
2019-08-25fix resolution detection of pointer typesAndrew Kelley
2019-08-25make the zero-bit-ness of pointers lazyAndrew Kelley
this case works now: ```zig const Foo = struct { field: @typeOf(func).ReturnType, }; fn func(self: *Foo) void {} ```
2019-08-23fix regression on `@ptrCast`Andrew Kelley
this case regressed and now fixed: ```zig const a: ?*i32 = undefined; const b: ?*f32 = @ptrCast(?*f32, a); ```
2019-08-23add lazy value support for optional typesAndrew Kelley
this case works now: ```zig const Node = struct { node: ?*Node, }; ```
2019-08-23better handling of lazy structsAndrew Kelley
this case works now: ```zig const A = struct { b_list_pointer: *const []B, }; const B = struct { a_pointer: *const A, }; const b_list: []B = [_]B{}; const a = A{ .b_list_pointer = &b_list }; const obj = B{ .a_pointer = &a }; ```
2019-08-23pointer types lazily evaluate their element typeAndrew Kelley
2019-08-23allow top level declarations to be lazyAndrew Kelley
this case now works: ```zig const A = struct { b: B, }; const B = fn (A) void; ```
2019-08-23add lazy value for fn prototypesAndrew Kelley
this case now works: ```zig const Node = struct { field: fn (*Node) *Node, }; ```
2019-08-23Merge remote-tracking branch 'origin/master' into fix-field-alignment-kludgeAndrew Kelley
2019-08-23Encapsulate bigint representation, assert on cast data lossJonathan Marler
2019-08-22fix regressionsAndrew Kelley
2019-08-22simple self-referential struct is working nowAndrew Kelley
2019-08-22add missing "referenced here" notes for lazy valuesAndrew Kelley
2019-08-22introduce lazy valuesAndrew Kelley
see #2174
2019-08-21breaking: remove field alignment kludgeAndrew Kelley
This breaks behavior tests as well as compile error notes for generic function calls. However it introduces better circular dependency compile errors. The next step is to add Lazy Values to fix the regressions.
2019-08-20compiler error when variable in asm template cannot be foundTimon Kruiper
2019-08-19fix @bitCast of packed struct literalAndrew Kelley
closes #3042
2019-08-19solve it a slightly different wayAndrew Kelley
the error handling of result locations is a bit awkward but it should basically be the same everywhere
2019-08-19fix @bitCast segfault with literal array paramMichael Dusan
closes #3010
2019-08-19fix void array as a local variable initializerAndrew Kelley
Related: #1767
2019-08-19fix array multiplication not setting parent value infoAndrew Kelley
closes #3095
2019-08-18fix error message when dependency requires position independent codeNick Erdmann
2019-08-17allow implicit cast of fn to async fnAndrew Kelley
it forces the fn to be async. closes #3079
2019-08-17detect non-async function pointer of inferred async functionAndrew Kelley
closes #3075
2019-08-17add compile error for incorrect atomic ordering in fence #3082Vexu
2019-08-17fix compiler not checking alignment of function framesAndrew Kelley
closes #3086
2019-08-16add missing compile error for fn call bad implicit castAndrew Kelley
when the function's return type handle is a pointer but the result location's result value type handle is not a pointer closes #3055
2019-08-16fix and test case for returning from suspend blockAndrew Kelley
See #3063
2019-08-16add compile error for casting const frame to anyframeAndrew Kelley
See #3063
2019-08-16add compile error for @Frame() of generic functionAndrew Kelley
See #3063
2019-08-15fix error return traces for async calls of blocking functionsAndrew Kelley
2019-08-15remove `cancel`Andrew Kelley
2019-08-13avoid the word "coroutine", they're "async functions"Andrew Kelley
2019-08-13Merge remote-tracking branch 'origin/master' into rewrite-coroutinesAndrew Kelley
2019-08-11all tests passingAndrew Kelley
2019-08-11fix canceling async functions which have error return tracingAndrew Kelley
2019-08-11fix enum with one member and custom tag typeAndrew Kelley
2019-08-11allow comptime_int to implicit cast to comptime_floatAndrew Kelley
2019-08-10fix try in an async function with error union and non-zero-bit payloadAndrew Kelley
2019-08-09fix combining try with errdefer cancelAndrew Kelley
2019-08-09fix cancel inside an errdeferAndrew Kelley
2019-08-08fix var args call on non-generic functionAndrew Kelley