Commit Graph

6995 Commits

Author SHA1 Message Date
Andrew Kelley 7699b5b997 Merge branch 'Xe-expose-callMain'
closes #3891
2019-12-12 18:56:39 -05:00
Andrew Kelley fff3c1fff4 un-special-case startup code in the std lib
Previously, the compiler had special logic to determine whether to
include the startup code, which was in `std/special/start.zig`. Now,
the file is moved to `std/start.zig`, and there is no special logic
in the compiler. Instead, the standard library unconditionally imports
the `start.zig` file, which then has a `comptime` block that does the
logic of determining what, if any, start symbols to export. Instead of
`start.zig` being in its own special package, it is just another normal
file that is part of the standard library.

`std.builtin.TestFn` is now part of the standard library rather than
specially generated by the compiler.
2019-12-12 18:33:44 -05:00
Christine Dodrill b37acc4d68 allow custom OS entrypoint
Also:

 * Expose `std.start.callMain`.
 * Other fixes added to fix issues found in development.
2019-12-12 16:00:23 -05:00
Andrew Kelley 81f1f72197 ci: skip non native tests for aarch64
We've been hitting timeouts on this service. Once zig build gains
parallel processing support, we can probably enable more tests.
2019-12-12 15:11:59 -05:00
Vexu c759a77aa0 fix dot init parsing 2019-12-12 13:06:48 -05:00
Andrew Kelley d08dc21116 Merge pull request #3886 from kavika13/master
Add function params, parens handling, and some infix operators to self-hosted translate-c
2019-12-11 18:40:35 -05:00
Christine Dodrill b375f6e027 lib/std/io: let the bring-your-own OS package handle stdio (#3887) 2019-12-11 18:37:52 -05:00
Merlyn Morgan-Graham 12171dba92 Add function parameters to self-hosted translate-C 2019-12-10 23:52:40 -08:00
Merlyn Morgan-Graham 5e8186a8ce Fix access of undefined field when calling ast.Tree.dump 2019-12-10 23:52:40 -08:00
Merlyn Morgan-Graham fe415dae04 Add paren expression statements to self-hosted translate-C 2019-12-10 23:52:40 -08:00
Merlyn Morgan-Graham 3e4f5de33c Add rem binary operator to self-hosted translate-C 2019-12-10 23:52:40 -08:00
Merlyn Morgan-Graham 79fe7e6515 Add mul and div binary operators to self-hosted translate-C 2019-12-10 23:52:40 -08:00
Andrew Kelley 7c1dbfab72 self-hosted: manually parse args 2019-12-11 02:08:33 -05:00
Andrew Kelley c3d8b1ffeb remove iterator API from std.ArrayList
This is not a meaningful abstraction. Use a for loop on the result
of `toSlice` or `toSliceConst`.

An iterator can be implemented on top of ArrayList by applications which
want additional functionality, such as removing elements while
iterating.

Closes #3037.
2019-12-10 15:08:10 -05:00
frmdstryr f30af12bea Add hotpath for BufferedOutStream (#3858)
* Add hotpath for BufferedOutStream
2019-12-10 13:44:59 -05:00
Heppokoyuki 5ada11449a fix con_in difinition and add EFI_SIMPLE_TEXT_INPUT_PROTOCOL difinition 2019-12-10 13:25:28 -05:00
Andrew Kelley 0d99744acc Merge branch 'emekoi-dynlib-load'
closes #2598
2019-12-10 13:24:01 -05:00
Andrew Kelley fdc3132126 fix windows dynamic lib loading test 2019-12-10 13:21:37 -05:00
Andrew Kelley 3ef8460d06 fix load dynamic library API when linking libc 2019-12-10 12:56:05 -05:00
Andrew Kelley 80882bda59 load dynamic library test: update API usage code 2019-12-10 12:48:10 -05:00
Andrew Kelley fd6b7b160d improve dynamic library API 2019-12-10 12:28:28 -05:00
emekoi 29fd727b79 fixed windows dynamic library loading and added loading for darwin 2019-12-10 11:41:54 -05:00
Andrew Kelley 9561e7c6b9 Merge branch 'Snektron-typeOf-to-TypeOf'
closes #3875
closes #1348
2019-12-10 11:13:39 -05:00
Robin Voetter 30715560c8 Rename @typeOf to @TypeOf in the language reference 2019-12-10 11:09:41 -05:00
Robin Voetter 8c096707b7 Additional replacements of @typeOf with @TypeOf 2019-12-10 11:09:41 -05:00
Robin Voetter 4b4fbe3887 Replace @typeOf with @TypeOf in all zig source
This change was mostly made with `zig fmt` and this also modified some whitespace. Note that in some files, `zig fmt` produced incorrect code, so the change was made manually.
2019-12-10 11:09:41 -05:00
Robin Voetter f0ee0688f2 Replace typeOf with TypeOf in stage0 2019-12-10 11:09:30 -05:00
Robin Voetter c519bb02df Fix usage of freed memory in zig fmt 2019-12-10 11:09:29 -05:00
Robin Voetter d568db2386 Remove misplaced dot 2019-12-10 11:09:29 -05:00
Robin Voetter 23b901d45a Add typeOf/TypeOf render test 2019-12-10 11:09:29 -05:00
Robin Voetter 20a3011def Add typeOf/TypeOf substition in zig fmt 2019-12-10 11:09:29 -05:00
Andrew Kelley cd4d638d10 Merge pull request #3830 from fengb/wasm-page-allocator
WasmPageAllocator
2019-12-10 10:58:50 -05:00
xackus c27d06596b fix integers parsed as floats 2019-12-10 10:30:41 -05:00
dbandstra 3388c777fa print call in build.zig needs to use a tuple argument 2019-12-10 10:18:57 -05:00
Andrew Kelley 2a7103ca34 ci: update macos to fresh llvm+clang tarball cache 2019-12-10 01:32:45 -05:00
Andrew Kelley e6c01e49d8 remove no-longer-needed workaround for var args
See #557
2019-12-09 16:21:16 -05:00
Andrew Kelley a3f6a58c77 remove var args from the language
closes #208
2019-12-09 15:27:27 -05:00
Andrew Kelley f205d23e65 implement async function call with @call
this removes the last usage of var args in zig std lib
2019-12-09 15:27:26 -05:00
Andrew Kelley 69b587c1d3 add regression cases for now-passing tests
closes #2749
2019-12-09 15:23:51 -05:00
Andrew Kelley 5d82744f1c ability to give comptime and non-comptime types to same parameter 2019-12-09 13:30:53 -05:00
Andrew Kelley 640e09183d Merge pull request #3873 from ziglang/format-no-var-args
std.fmt.format: tuple parameter instead of var args
2019-12-09 10:51:47 -05:00
Andrew Kelley 8b3c0bbeee update docgen to new format API 2019-12-09 00:18:01 -05:00
Andrew Kelley d571fad20e update tests to new format API 2019-12-09 00:05:21 -05:00
Andrew Kelley 03396b3caa update docs to new fmt API 2019-12-08 23:46:50 -05:00
Andrew Kelley 5f9467d78f update formatted printing when linking libc 2019-12-08 23:39:30 -05:00
Andrew Kelley 7a4f704258 windows-specific fixes 2019-12-08 23:26:19 -05:00
Andrew Kelley fe4963412f update self-hosted compiler to new format API 2019-12-08 23:17:03 -05:00
Andrew Kelley 8b2622cdd5 std.fmt.format: tuple parameter instead of var args 2019-12-08 22:53:51 -05:00
Andrew Kelley 5874cb04bd implement tuple concatenation 2019-12-08 22:44:41 -05:00
Benjamin Feng 608d36ad8c Rewrite WasmPageAllocator tests to be less flaky on environment 2019-12-08 21:22:07 -06:00