Commit Graph

708 Commits (b68aee4f34dffe60c099cba0a4ca56580e7a9cf5)

Author SHA1 Message Date
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
Andrew Kelley eb83111f02 add debug safety for division
See #149
2016-05-07 19:58:02 -07:00
Andrew Kelley 9d29674711 ability to cast slice to u8 slice 2016-05-07 18:45:28 -07:00
Andrew Kelley 9e0165147e generic args available to member functions
See #22
2016-05-07 17:27:57 -07:00
Andrew Kelley 2ed72022ce support generic data structures
See #22
2016-05-07 17:00:58 -07:00
Andrew Kelley 01c46eef3a std: separate str and cstr 2016-05-07 10:52:52 -07:00
Andrew Kelley 6f0f357ee4 self hosted tests test release mode too
closes #69
2016-05-07 10:14:16 -07:00
Andrew Kelley 8c79438f6b better array concatenation semantics
closes #87
2016-05-07 10:05:59 -07:00
Andrew Kelley d5d5fd928c link: don't put -l in front of .a or .so files 2016-05-07 01:58:18 -07:00
Andrew Kelley c098a8f522 add frame_address and return_address builtins 2016-05-06 23:10:14 -07:00
Andrew Kelley 271a37b418 implicit wrap widening cast on integer peer types
closes #46
2016-05-06 19:49:28 -07:00
Andrew Kelley 6131b37163 fix eval integer wrapping and add tests
See #46
2016-05-06 19:23:21 -07:00
Andrew Kelley 9db45ac362 add shl_with_overflow builtin function
See #46
2016-05-06 16:45:04 -07:00
Andrew Kelley 100802cdc0 add debug safety for left shifting
See #46
2016-05-06 15:46:38 -07:00
Andrew Kelley 0c96920172 add tests for integer wrapping
See #46
2016-05-06 15:02:02 -07:00
Andrew Kelley b8d17b11a7 add tests for integer overflow crashing
see #46
2016-05-05 18:07:15 -07:00
Andrew Kelley 094336f07c add integer wrapping
see #46
2016-05-05 17:19:01 -07:00
Andrew Kelley dedde0d790 add fence builtin function 2016-05-04 18:34:17 -07:00
Andrew Kelley c95e497857 add cmpxchg builtin function 2016-05-04 18:19:49 -07:00
Andrew Kelley f2bc5ccbc2 more networking standard library code 2016-05-04 14:52:15 -07:00
Andrew Kelley 66ed7a5eb5 beginnings of network standard library code 2016-05-03 20:48:53 -07:00
Andrew Kelley 7f589c0cab support maybe destructuring into a pointer variable 2016-05-03 15:06:34 -07:00
Andrew Kelley 9ccd0ba961 implement string escapes 2016-05-01 14:53:48 -07:00
Andrew Kelley 037283c3b3 build: link against libLLVM.so if available
readme: better instructions for finding native libc headers
2016-04-30 17:17:59 -07:00
Andrew Kelley d908afe105 add array multiplication operator 2016-04-28 18:03:44 -07:00
Andrew Kelley 46b0b84b90 ability to specify body of an extern function
closes #101
2016-04-28 16:04:44 -07:00
Andrew Kelley a299de2265 better alignment value for stack variables
fixes debug info sometimes not being available for parameters
2016-04-28 15:10:27 -07:00
Andrew Kelley 4815c03caa better parameter codegen
* ability to take address of a parameter (closes #97)
 * debug symbols work for parameters
2016-04-27 17:34:53 -07:00
Andrew Kelley 09042f1b0c add missing debug entry for breakpoint 2016-04-26 15:35:36 -07:00
Andrew Kelley 8ec109de3c ability to compare booleans 2016-04-26 11:39:31 -07:00
Andrew Kelley d1fa5692c6 add array bounds checking in debug mode
closes #27
2016-04-26 11:36:11 -07:00
Josh Wolfe 61e6c49bc5 vim syntax: single-line strings must be contained in a single line 2016-04-26 01:50:21 -07:00