Andrew Kelley
|
deb3586884
|
implement %% prefix operator
See #23
also make undefined constants use llvm undef value
|
2016-01-25 15:45:05 -07:00 |
|
Andrew Kelley
|
4b9e1dd438
|
fix tests and add %% operator test
|
2016-01-25 14:04:29 -07:00 |
|
Andrew Kelley
|
6db6609df8
|
implement %% operator
See #23
|
2016-01-25 13:53:40 -07:00 |
|
Andrew Kelley
|
bcb18338cd
|
update std lib to use error type and global variables
|
2016-01-24 22:53:00 -07:00 |
|
Andrew Kelley
|
29a83f648b
|
support the %return expression
|
2016-01-24 20:13:08 -07:00 |
|
Andrew Kelley
|
f5cc7f65a3
|
fix parameter access of sret functions
|
2016-01-24 19:27:12 -07:00 |
|
Andrew Kelley
|
419652ee8f
|
ability to return structs byvalue from functions
closes #57
|
2016-01-24 18:34:50 -07:00 |
|
Andrew Kelley
|
ca7b85b32e
|
fix number literal implicit cast
|
2016-01-24 14:51:47 -07:00 |
|
Andrew Kelley
|
5c18826240
|
introduce the error keyword and type
See #23
|
2016-01-24 01:34:57 -07:00 |
|
Andrew Kelley
|
706f72f1b4
|
fix hang when returning from while loop
also fixes duplicate error message for function missing
return type.
also makes guess number game use %void for main return type.
closes #58
|
2016-01-23 02:46:24 -07:00 |
|
Andrew Kelley
|
c0ea9290c4
|
main returns %void
|
2016-01-23 02:14:01 -07:00 |
|
Andrew Kelley
|
91d911007b
|
codegen: fix field access of arrays
also fix error type analyze error
|
2016-01-23 00:53:43 -07:00 |
|
Andrew Kelley
|
a922d5d42a
|
implement literal error values
See #23
|
2016-01-23 00:34:59 -07:00 |
|
Andrew Kelley
|
1543043bf5
|
fix no error emitted for redeclaring global var
closes #81
|
2016-01-23 00:07:08 -07:00 |
|
Andrew Kelley
|
bfceb18631
|
character literal returns a number literal
|
2016-01-22 23:24:09 -07:00 |
|
Andrew Kelley
|
e269caae02
|
implement undefined literal
|
2016-01-22 23:12:33 -07:00 |
|
Andrew Kelley
|
0e51c16ef5
|
add undefined literal
|
2016-01-22 22:42:02 -07:00 |
|
Andrew Kelley
|
523e3b86af
|
support statically initialized array literal
|
2016-01-22 22:02:07 -07:00 |
|
Andrew Kelley
|
21fc5a6402
|
un-special case constant global strings
|
2016-01-22 20:36:08 -07:00 |
|
Andrew Kelley
|
1158bc3ead
|
support statically initialized structs
|
2016-01-22 18:05:22 -07:00 |
|
Andrew Kelley
|
7bd9c82386
|
add compile error for non constant expr global
|
2016-01-22 16:40:15 -07:00 |
|
Andrew Kelley
|
72fa03bada
|
add undefined reserved word
|
2016-01-22 16:05:29 -07:00 |
|
Andrew Kelley
|
272fe1c54c
|
implicit casts rewrite the AST
|
2016-01-22 15:31:35 -07:00 |
|
Andrew Kelley
|
b09a0cd072
|
allow constants to have number literal values
also codegen takes advantage of constant expr eval
|
2016-01-21 15:23:24 -07:00 |
|
Andrew Kelley
|
32e2196257
|
number literal rework
|
2016-01-21 03:02:25 -07:00 |
|
Andrew Kelley
|
5e212db29c
|
parsing error value decls and error value literals
and return with '?' or '%' prefix
|
2016-01-20 18:18:50 -07:00 |
|
Andrew Kelley
|
961adc0909
|
Merge branch 'master' of github.com:andrewrk/zig
|
2016-01-20 02:16:36 -07:00 |
|
Andrew Kelley
|
ad9759bc8e
|
basic support for switch expression
|
2016-01-20 02:12:24 -07:00 |
|
MovingtoMars
|
361531891f
|
rename value_count to member_count
rename BuiltinFnIdValueCount to BuiltinFnIdMemberCount
rename value_count to member_count
|
2016-01-20 22:03:03 +13:00 |
|
Andrew Kelley
|
c17309dbc5
|
add switch statement support to parser
|
2016-01-19 20:29:36 -07:00 |
|
Andrew Kelley
|
890714b8ca
|
Revert "delete parseh"
This reverts commit 18374ea8f1 .
|
2016-01-18 21:28:54 -07:00 |
|
Andrew Kelley
|
ae2151a751
|
use signed integer for sizes of things
|
2016-01-18 21:13:14 -07:00 |
|
Andrew Kelley
|
ea21d2beb6
|
add error for shadowing a type
closes #61
|
2016-01-18 17:04:37 -07:00 |
|
Andrew Kelley
|
32821e7098
|
add function pointer support
See #14
|
2016-01-18 16:42:45 -07:00 |
|
Andrew Kelley
|
3a326d5005
|
pave the road for function pointers
See #14
|
2016-01-18 08:50:10 -07:00 |
|
Andrew Kelley
|
4c50606b9d
|
refactor std to use for loop
|
2016-01-18 07:16:17 -07:00 |
|
Andrew Kelley
|
fbbef14013
|
add for loop which can iterate over arrays
See #51
|
2016-01-18 07:00:45 -07:00 |
|
Andrew Kelley
|
f0a43cfda9
|
fix nested arrays
|
2016-01-18 04:34:26 -07:00 |
|
Andrew Kelley
|
5f7685336f
|
better main symbol prototype
closes #64
|
2016-01-16 00:07:34 -07:00 |
|
Andrew Kelley
|
ca8d8f114f
|
rename "alwaysinline" to "inline"
|
2016-01-15 20:05:39 -07:00 |
|
Andrew Kelley
|
8205253b2b
|
support array literals
|
2016-01-15 20:01:49 -07:00 |
|
Andrew Kelley
|
8bc3fae1cf
|
fix error message for struct initialization on array
|
2016-01-15 19:05:51 -07:00 |
|
Andrew Kelley
|
8818c59cbc
|
parser: fix not setting container init kind
|
2016-01-15 19:02:04 -07:00 |
|
Andrew Kelley
|
dc162c7f83
|
rename "use" to "import"
|
2016-01-15 18:45:52 -07:00 |
|
Andrew Kelley
|
86f55bce53
|
add void arrays test
|
2016-01-15 18:41:19 -07:00 |
|
Andrew Kelley
|
0311b35a21
|
reduce precedence of {} suffix operator
this makes []u8 {1, 2, 3, 4} work for array literal
|
2016-01-15 17:40:12 -07:00 |
|
Andrew Kelley
|
8d60ffe314
|
solve the mystery of undefined reference error
big surprise, C++ is to blame
|
2016-01-15 17:12:26 -07:00 |
|
Andrew Kelley
|
8409e518ab
|
fix build with gcc
|
2016-01-15 14:29:02 -07:00 |
|
Andrew Kelley
|
18374ea8f1
|
delete parseh
we'll have to switch to the clang C++ api anyway
we'll revive this code later
|
2016-01-15 14:16:07 -07:00 |
|
Andrew Kelley
|
b0f608a6a7
|
merge constant expression evaluator with analyzer
|
2016-01-15 04:45:25 -07:00 |
|