aboutsummaryrefslogtreecommitdiff
path: root/src/ir.cpp
AgeCommit message (Collapse)Author
2018-04-28Fixed wrong formatting for arg_index when reporting @ArgType errorJimmi Holst Christensen
2018-04-28.ReturnType and @ArgType now emits errors on unresolved typesJimmi Holst Christensen
related: #846
2018-04-28Functions with infered error set can now return literalsJimmi Holst Christensen
fixes #852
2018-04-28Removed zero sized error set optimizationJimmi Holst Christensen
fixes #762 fixes #818
2018-04-23fix interaction between defer and labeled breakAndrew Kelley
closes #830
2018-04-22add compile error for invalid deref on switch targetAndrew Kelley
closes #945
2018-04-20zig fmt: preserve comments in front of test blocksAndrew Kelley
* refactor std.zig.parser * fix compiler crashing for some compile errors * take advantage of @field in std.zig.ast * move ast.NodeFoo to ast.Node.Foo * comment preservation is more explicit See #911
2018-04-19Optimized field ptr ir for hot path and fix assignment bugJimmi Holst Christensen
2018-04-19Added field builtin functionJimmi Holst Christensen
2018-04-18support break in suspend blocksAndrew Kelley
* you can label suspend blocks * labeled break supports suspend blocks See #803
2018-04-18improve cmpxchgAndrew Kelley
* remove @cmpxchg, add @cmpxchgWeak and @cmpxchgStrong - See explanations in the langref. * add operand type as first parameter * return type is ?T where T is the operand type closes #461
2018-04-15add @atomicLoad builtinAndrew Kelley
See #174
2018-04-15add @sqrt built-in functionAndrew Kelley
See #767
2018-04-14add std.os.createThreadAndrew Kelley
this adds kernel thread support to the standard library for linux. See #174
2018-04-12inline functions must be stored in const or comptime varAndrew Kelley
closes #913
2018-04-11allow integer and float literals to be passed to var paramsAndrew Kelley
closes #623
2018-04-09async tcp server proof of conceptAndrew Kelley
2018-04-08fixups from rebaseAndrew Kelley
2018-04-08running into the llvm corosplit error againAndrew Kelley
2018-04-08*WIP* async/await TCP serverAndrew Kelley
2018-04-08error return traces work with async return caseAndrew Kelley
2018-04-08put the error return addresses in the coro frameAndrew Kelley
2018-04-08error return traces for the early return caseAndrew Kelley
it would work but LLVM is not correctly spilling the addresses. See #821
2018-04-01Add run compiler commandMarc Tiehuis
'zig run file.zig' builds a file and stores the artifacts in the global cache. On successful compilation the binary is executed. 'zig run file.zig -- a b c' does the same, but passes the arguments a, b and c as runtime arguments to the program. Everything after an '--' are treated as runtime arguments. On a posix system, a shebang can be used to run a zig file directly. An example shebang would be '#!/usr/bin/zig run'. You may not be able pass extra compile arguments currently as part of the shebang. Linux for example treats all arguments after the first as a single argument which will result in an 'invalid command'. Currently there is no customisability for the cache path as a compile argument. For a posix system you can use `TMPDIR=. zig run file.zig` to override, in this case using the current directory for the run cache. The input file is always recompiled, even if it has changed. This is intended to be cached but further discussion/thought needs to go into this. Closes #466.
2018-03-28fix compile time array concatenation for slicesAndrew Kelley
closes #866
2018-03-27fix crash when compile error in analyzing @panic callAndrew Kelley
2018-03-24fix invalid codegen for error return traces across suspend pointsAndrew Kelley
See #821 Now the code works correctly, but error return traces are missing the frames from coroutines.
2018-03-24add promise->T syntax parsingAndrew Kelley
closes #857
2018-03-24fix async fns with inferred error setsAndrew Kelley
closes #856
2018-03-24move error ret tracing codegen to zig irAndrew Kelley
progress towards #821
2018-03-22ability to use async function pointersAndrew Kelley
closes #817
2018-03-14fix tests broken by previous commitAndrew Kelley
2018-03-13Tests for zero-bit field compiler errorAndrea Orru
2018-03-13Compiler error when taking @offsetOf of void struct memberAndrea Orru
closes #739
2018-03-13fix casting a function to a pointer causing compiler crashAndrew Kelley
closes #777
2018-03-12some return types disqualify comptime fn call cachingAndrew Kelley
closes #828
2018-03-12fix comptime slicing not preserving comptime mutabilityAndrew Kelley
* fix comptime slice of slice not preserving mutatibility of the comptime data * fix comptime slice of pointer not preserving mutability of the comptime data closes #826
2018-03-12fix incorrect setEvalBranchQuota compile errorAndrew Kelley
closes #688
2018-03-10fix await multithreaded data raceAndrew Kelley
coro return was reading from a value that coro await was writing to. that wasn't how it was designed to work, it was an implementation mistake. this commit also has some work-in-progress code for fixing error return traces across suspend points.
2018-03-09don't memoize comptime functions if they can mutate state via parametersAndrew Kelley
closes #639
2018-03-08fix partial inlining of binary math operator using old valueAndrew Kelley
the code was abusing the internal IR API. fixed now. closes #699
2018-03-07add compile error for using @tagName on extern unionAndrew Kelley
closes #742
2018-03-06fix missing compile error for returning error from void async functionAndrew Kelley
closes #799
2018-03-06turn assertion into compile error for using var as return typeAndrew Kelley
closes #758
2018-03-06var is no longer a pseudo-type, it is syntaxAndrew Kelley
closes #779
2018-03-06fix assertion when taking slice of zero-length arrayAndrew Kelley
closes #788
2018-03-06ptrCast builtin now gives an error for removing const qualifierAndrew Kelley
closes #384
2018-03-01Merge remote-tracking branch 'origin/master' into asyncAndrew Kelley
2018-03-01await keyword worksAndrew Kelley
2018-03-01implementation of awaitAndrew Kelley
but it has bugs