Andrew Kelley
3eb5afd245
std: cleanup of rand
2016-07-27 19:52:38 -07:00
Andrew Kelley
06c4b35eb1
std: improve rand implementation and API
2016-07-26 23:51:58 -07:00
Andrew Kelley
bc81ddfea6
unsigned integers for sizes of things
...
Closes #62 .
2016-07-26 20:40:11 -07:00
Andrew Kelley
76f87cdd96
std: add OutStream.write_byte
2016-07-26 18:13:22 -07:00
Andrew Kelley
78d4fb20c4
inline parameters
...
This replaces the current generic syntax for functions and replaces
it with the concept of inline parameters.
This paves the way for the "all structs anonymous" proposal.
Closes #151 .
2016-07-25 22:55:15 -07:00
Andrew Kelley
425c0ffa01
rename NodeTypeStructDecl to NodeTypeContainerDecl
2016-07-17 16:30:41 -07:00
Andrew Kelley
3971bf3d72
fix not resolving use declarations
...
causing bogus compile errors
2016-07-13 18:22:49 -07:00
Andrew Kelley
f2fc9b8a7b
fix duplicate type defined when imported from parseh
2016-07-09 15:48:25 -07:00
Andrew Kelley
49a4b1b930
ability to cast explicitly from int to enum
...
This commit also fixes a bug where pure functions are marked with
the read-only attribute in debug mode. This resulted in incorrect
codegen because calls to read-only functions with unused values
were not generated.
For example, a call to assert() would not be generated if assert
is marked with read-only. Which it *is* marked with in release
mode.
2016-07-09 15:22:04 -07:00
Andrew Kelley
a5251a1c10
parseh: support octal in C macro string literal
2016-07-09 12:17:31 -07:00
Andrew Kelley
100e8e15fa
fix tokenizing string symbols with hex characters in them
2016-07-09 07:54:55 -07:00
Andrew Kelley
b08bc84a36
don't add no-frame-pointer-elim for inline functions
...
and make syscall functions inline
this gets the tests all passing on i386
2016-05-18 18:30:03 -07:00
Andrew Kelley
762e686d17
inline assembly: allow empty output list
2016-05-18 18:20:15 -07:00
Andrew Kelley
39016c1d3e
fix offset map for inline assembly error messages
2016-05-18 18:05:03 -07:00
Andrew Kelley
f6b16c99ba
fix raw string literal crash
2016-05-18 17:55:07 -07:00
Andrew Kelley
3273e99d70
linux: accept calls accept4 with 0 for flags
2016-05-18 17:18:28 -07:00
Andrew Kelley
da8e30fe46
add some docs about builtin functions
2016-05-18 16:59:55 -07:00
Andrew Kelley
fbb6d1d7ee
support extern C ABI for return types
2016-05-18 15:32:34 -07:00
Andrew Kelley
7edef4f3fd
add beginning of print stack trace function
...
introduce std.debug and move std.assert to std.debug.assert
add mem.copy
2016-05-17 13:32:43 -07:00
Andrew Kelley
2c710382a8
fix crash when error evaluating target of for expr
...
closes #153
2016-05-16 22:51:08 -07:00
Andrew Kelley
3df9389215
compiler-rt: add __aeabi_uldivmod
2016-05-15 12:02:37 -07:00
Travis McDemus
7b0052abbb
Add unsigned and signed generic print fns
...
Signed-off-by: Andrew Kelley <superjoe30@gmail.com>
2016-05-15 01:41:15 -07:00
Andrew Kelley
9813ae8586
add bit_count, is_wrapping, is_signed fields to int types
2016-05-15 01:30:25 -07:00
Andrew Kelley
6ff996f60f
add int_type builtin function
2016-05-15 01:05:24 -07:00
Andrew Kelley
50310cf9df
add 64 bit division test
2016-05-15 00:42:48 -07:00
Andrew Kelley
7f90dbbb11
switch on compile var marks entire namespaces
...
as depending on compile vars.
closes #154
2016-05-15 00:25:13 -07:00
Andrew Kelley
6ae6b5f5b5
add compile_err builtin
2016-05-14 18:54:37 -07:00
Andrew Kelley
76f909edeb
std: take advantage of ability to cast maybe pointer to isize
2016-05-14 12:38:27 -07:00
Andrew Kelley
33e3d56453
add error for wrong return type of main
2016-05-13 13:08:54 -07:00
Andrew Kelley
65e0e85685
update README with website
2016-05-13 11:38:14 -07:00
Andrew Kelley
6a7f3c8df7
std: make parsing an unsigned number generic
2016-05-13 11:11:55 -07:00
Andrew Kelley
b68aee4f34
we have generics now
2016-05-13 10:59:43 -07:00
Andrew Kelley
5d2f86116f
std: fix linux.get_errno
2016-05-13 09:54:56 -07:00
Andrew Kelley
8e3ab28be9
ability to cast maybe pointer to isize/usize
...
also ability to put noalias on maybe pointer
2016-05-13 09:54:56 -07:00
Andrew Kelley
774ec1f889
Merge pull request #152 from jmi2k/zig-std-dir
...
Add --zig-std-dir
2016-05-12 21:40:38 -07:00
José Miguel Sánchez
b7b864e5e5
For the sake of correctness: we can always rely on ZIG_STD_DIR
2016-05-12 19:55:50 +02:00
José Miguel Sánchez
a1817f462a
Add --zig-std-dir
2016-05-12 18:41:20 +02:00
Andrew Kelley
1eafc85f1f
add readonly attribute to relevant functions and parameters
2016-05-11 15:58:00 -07:00
Andrew Kelley
26718a619c
recognize ar program and pass --gc-sections to ld
...
See #54
2016-05-11 14:44:10 -07:00
Andrew Kelley
6b7ffd4cbe
builtin: use explicit type instead of typeof function
2016-05-11 13:18:28 -07:00
Andrew Kelley
22888ca524
some work in progress networking code
...
also, casting to or from a u8 slice makes a function impure
2016-05-10 15:00:59 -07:00
Andrew Kelley
d92ae20f45
add hashmap to standard library
...
closes #22
2016-05-09 15:07:38 -07:00
Andrew Kelley
f1e5be9686
fix ability to use previous generic params and
...
add error when `%return` shows up in a function with incorrect
return type
2016-05-09 13:44:29 -07:00
Andrew Kelley
745c325d0f
support variable declarations in structs
...
See #22
2016-05-09 12:34:03 -07:00
Andrew Kelley
56908dcb9d
add debug safety for shortening casts
...
closes #150
2016-05-09 08:44:41 -07:00
Andrew Kelley
9e905ab364
not-yet-working implementation of generic hash map
2016-05-08 16:05:41 -07:00
Andrew Kelley
0c32b0b4ad
add list implementation to standard library
2016-05-08 01:34:00 -07:00
Andrew Kelley
18ed87c695
ability to cast u8 slice to bigger slice
2016-05-08 00:59:21 -07:00
Andrew Kelley
aed96e3512
fix null literal outside function
2016-05-08 00:15:05 -07:00
Andrew Kelley
404defd99b
add div_exact builtin fn
...
closes #149
2016-05-07 20:53:16 -07:00