Commit Graph

540 Commits

Author SHA1 Message Date
Vexu
4dae70e702
translate-c-2 container aliases 2019-12-14 13:40:33 +02:00
Vexu
e4ca1f441b
translate-c-2 record type 2019-12-14 02:00:01 +02: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
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
5e8186a8ce Fix access of undefined field when calling ast.Tree.dump 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
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
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
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
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
5d82744f1c
ability to give comptime and non-comptime types to same parameter 2019-12-09 13:30:53 -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
8b2622cdd5
std.fmt.format: tuple parameter instead of var args 2019-12-08 22:53:51 -05:00
Benjamin Feng
608d36ad8c Rewrite WasmPageAllocator tests to be less flaky on environment 2019-12-08 21:22:07 -06:00
Andrew Kelley
64d700bfa6
zig fmt: support comptime fields 2019-12-08 12:26:20 -05:00
Josh Wolfe
05fc4d34a9 documentation for mutable HashMap KV pointers 2019-12-07 13:22:23 -05:00
Benjamin Feng
e91522b875 Add back comptime check for wasm 2019-12-06 17:27:11 -06:00
data-man
80a72c225c Crypto benchmark fixes 2019-12-06 17:14:10 -05:00
data-man
008e42f483 getStdOut fixes 2019-12-06 16:41:02 -05:00
Benjamin Feng
5a004ed834 Actually use const conventional as the comment indicates 2019-12-06 15:16:07 -06:00
Andrew Kelley
525b1e8fb4
Merge pull request #3856 from ziglang/builtin-call
introduce `@call` and remove other builtin calls
2019-12-06 15:49:47 -05:00
Andrew Kelley
656cc33f8d
allow calling with a new stack to regress a bit
Calling with a new stack, with a runtime-known stack pointer (e.g.
not a global variable) is regressed with this branch. It is now a
compile-error, due to the Runtime Hint system not being smart enough
to mix a compile-time modifier field with a runtime stack field.
I'm OK with this regression because this feature is flawed (see #3268)
and may be deleted from the language.
2019-12-06 15:25:00 -05:00
Andrew Kelley
71b7f4b47f
remove @newStackCall from zig 2019-12-06 14:52:09 -05:00
Andrew Kelley
343987cd05
remove @inlineCall from zig 2019-12-06 14:12:01 -05:00
Benjamin Feng
eb495d934b Add WasmPageAllocator tests 2019-12-05 21:54:57 -06:00
Andrew Kelley
105ef560b3
Merge pull request #3853 from xackus/doc-fixes
Docs: assembly example printing garbage and minor html fixes
2019-12-05 20:43:10 -05:00
Benjamin Feng
f2b0dbea74 Resolve tests to work with or skip WasmPageAllocator 2019-12-05 19:31:49 -06:00
Benjamin Feng
694616adb5 Standardize around bigger slices 2019-12-05 18:43:51 -06:00
Benjamin Feng
7d1c4fe4dc Switch bitmask to enums 2019-12-05 18:01:49 -06:00
Andrew Kelley
ef83358eb6
remove @noInlineCall from zig 2019-12-05 17:37:29 -05:00