1
0
mirror of https://github.com/vlang/v.git synced 2023-08-10 21:13:21 +03:00
Commit Graph

651 Commits

Author SHA1 Message Date
Alexander Medvednikov
2642f6a0da cgen: remove _PUSH 2020-04-20 09:04:17 +02:00
Alexander Medvednikov
4b329cb89d tests: fix a typo 2020-04-20 08:32:10 +02:00
Alexander Medvednikov
ee2f1652b5 fmt: add EOL 2020-04-20 08:30:42 +02:00
Alexander Medvednikov
639dc02cc8 x64: test hello world 2020-04-20 08:27:37 +02:00
Alexander Medvednikov
c1fc768c1b fmt: run on cmd/v; cgen: fix anonymous functions 2020-04-20 07:04:31 +02:00
Alexander Medvednikov
efff96d622 x64: make hello world run 2020-04-20 07:02:09 +02:00
Alexander Medvednikov
19a5436118 cgen: use faster array_push instead of _PUSH; re-fmt cgen.v 2020-04-20 03:54:41 +02:00
yuyi
27e04748ed
cgen:gen_str_for_array 2020-04-19 10:42:34 +02:00
Alexey
3ee858cd79
cgen: fix struct initialization bugs 2020-04-19 04:44:39 +02:00
Tim Basel
73073cd954
parser: anonymous functions (part 1) 2020-04-17 21:59:19 +02:00
Daniel Däschle
c1d9e22ca6
cgen: gen str() from eprintln and eprint as well 2020-04-17 16:15:28 +02:00
yuyi
420ecaf31d
cgen: gen_str_for_array() 2020-04-17 16:10:41 +02:00
Daniel Däschle
402e55d115
ast: expr.Position; struct field refactoring 2020-04-17 02:38:39 +02:00
yuyi
8bb11d9035
cgen: fix string_interpolation_struct_test.v error 2020-04-17 01:45:42 +02:00
Enzo Baldisserri
051cc732bb
cgen: generate typeof for functions 2020-04-16 21:04:27 +02:00
yuyi
dee64347e0
cgen: fix const_embed_test.v error 2020-04-16 19:43:39 +02:00
Alexey
4c8510dfaf
cgen: use wWinMain for Windows GUI applications 2020-04-16 19:42:04 +02:00
Alexander Medvednikov
714ff50322 fmt: use the new receiver syntax 2020-04-16 15:42:40 +02:00
Alexander Medvednikov
af224b4933 parser/cgen: is keyword 2020-04-16 15:32:14 +02:00
Delyan Angelov
8a1248b2e7 builder: restore module import cycle detection/topological reorder 2020-04-16 12:29:36 +03:00
yuyi
54a02996f2
cgen: fix string interpolation float type 2020-04-16 07:30:25 +02:00
joe-conigliaro
c3ddaf16ec cgen: fix sum type casting for array push 2020-04-16 15:18:33 +10:00
Delyan Angelov
4b3c44cfd7 Revert "tetris: part 1 of fixing building it with v2"
This reverts commit d42725aafe.
2020-04-16 01:16:54 +03:00
Delyan Angelov
d42725aafe tetris: part 1 of fixing building it with v2 2020-04-16 00:35:16 +03:00
Abdullah Atta
6a186e8f11
jsgen: implement js backend 2020-04-15 23:16:49 +02:00
Kris Cherven
a3ab5df2ed
cgen: prepend __ to new_array 2020-04-15 20:12:06 +02:00
joe-conigliaro
fde83aff0b
checker/cgen: fix calling struct field with fn type 2020-04-15 04:28:18 +02:00
Alexander Medvednikov
da28bc7026 Revert "fmt: (var f Foo)"
This reverts commit 4b110756e0.
2020-04-15 04:15:42 +02:00
Alexander Medvednikov
4b110756e0 fmt: (var f Foo) 2020-04-15 03:56:16 +02:00
Kris Cherven
4dd8796dba
cgen: fix assignment to nested maps 2020-04-15 02:42:00 +02:00
Alexander Medvednikov
f34352faf9 fmt: use var instead of mut 2020-04-15 01:55:51 +02:00
Alexander Medvednikov
efaec8be8e token/parser: var keyword 2020-04-15 01:45:27 +02:00
Alexander Medvednikov
deab448d93 cgen: fix array[i] &=, |= etc 2020-04-14 19:36:52 +02:00
Alexander Medvednikov
233ae3f772 fmt: use import module syntax 2020-04-14 19:32:23 +02:00
Alexander Medvednikov
ec10831318 parser: []int{cap:cap, len:len} syntax; minor fixes 2020-04-14 18:10:16 +02:00
Delyan Angelov
c04c973f84 cgen: use a temp variable for the array part inside 'for x in array{}' 2020-04-14 13:22:58 +03:00
yuyi
956651384c
cgen: fix math/complex_test.v 2020-04-14 07:44:19 +02:00
Alexander Medvednikov
bbc35b1179 checker: check bool and string ops 2020-04-14 04:12:28 +02:00
Daniel Däschle
12e48c6fe2
checker: check match for exhaustion 2020-04-14 01:03:31 +02:00
Alexander Medvednikov
1185f04868 json: encode 2020-04-14 00:37:47 +02:00
krischerven
8c0b25a2ab
cgen: fix printing alias types 2020-04-13 20:07:25 +02:00
Alexander Medvednikov
24958df565 parser: do not allow duplicate fns; cgen: move fn code to fn.v 2020-04-13 19:59:57 +02:00
yuyi
fb4cfa72cd
cgen: fix str() for arrays 2020-04-13 19:18:22 +02:00
Daniel Däschle
8cbdb75dd6
cgen: fix match expr multiline error
* cgen: fix match expr multiline error
* Support for multiple statements in the else part of the match.
* Add a test for the match expression with multiple statements.
2020-04-13 13:05:38 +03:00
krischerven
78f9f25a00
cgen: fix !in not working with maps 2020-04-13 02:22:55 +02:00
Enzo Baldisserri
da5a1e458b
cgen: fix match expr in assert 2020-04-13 01:53:26 +02:00
Alexander Medvednikov
0db0c642c3 vfmt: add missing imports automatically 2020-04-12 17:45:04 +02:00
Daniel Däschle
d55f4ab097
cgen: fix error priting struct which has .str already 2020-04-12 16:25:02 +03:00
Daniel Däschle
5818956cdc
cgen: % escape in string interpolated literals
* cgen: % escape in c call to _STR
* tests: add test for string % escape
* Add a test for the % escaping when interpolating inside strings
2020-04-12 16:24:23 +03:00
ka-weihe
e247690fe1
map: fast_string_eq and improved comments
* improved comments and fast_string_eq
* make it pass CI
* enumerate traits
* Add parameter back
* remove space
* remove parameter
* Allow bootstrap compilation in one step with old vc (add new_map/2 shim).
2020-04-12 15:10:06 +03:00
Daniel Däschle
79dad0bca9
parser: fix enum default value in struct
* parser: fix enum default value in struct

* Add a test for the enum default values in structs.

* Fix compilation of vfmt.

* Run vfmt over enum_default_value_in_struct_test.v

* Cleanup spurious , in vfmt output for enum declarations

Co-authored-by: Delyan Angelov <delian66@gmail.com>
2020-04-12 13:35:54 +03:00
krischerven
1abdf2d68f
cgen: fix missing defer in fn main() 2020-04-12 01:38:14 +02:00
Alexander Medvednikov
581d836de6 !in operator 2020-04-11 21:31:54 +02:00
Alexander Medvednikov
f91e3a5d3c cgen: arr[i] +=, /=, -= 2020-04-11 19:07:03 +02:00
Alexey
0050c1915b
cgen: call module init function if available 2020-04-11 18:38:51 +02:00
Alexey
df825506fd
cgen: fix check for array equality 2020-04-11 17:25:25 +02:00
Alexander Medvednikov
63d747042e cgen: fix sizeof(&int) 2020-04-11 16:24:25 +02:00
Delyan Angelov
61c1535199 assert: generate tos3/1 calls instead of _STR (bugfix) 2020-04-11 16:18:09 +03:00
Delyan Angelov
b10fcc79ba comptime: fix #ifdef/#endif generation 2020-04-11 12:41:48 +03:00
Delyan Angelov
93d2ab200f cheaders: fix selfcompilation with tcc 2020-04-11 12:18:26 +03:00
Delyan Angelov
ba799b3f85 builder: support v.mod/@VROOT, fix -cflags and -cache 2020-04-11 09:57:31 +03:00
Alexander Medvednikov
b95a47b5a7 checker: check fn main(); vfmt: fix for{}, module and module comments 2020-04-10 22:27:54 +02:00
Delyan Angelov
217e6f3b8e checker/parser: allow for fixed array with sizes defined with a const 2020-04-10 22:01:22 +03:00
Alexander Medvednikov
f76931c01e cache builtin modules 2020-04-10 18:11:43 +02:00
Daniel Däschle
42b3b19af4
checker: fix checker enum infix error 2020-04-10 15:44:01 +03:00
yuyi
7f87ac996d
test: fix vlib/math/big/big_test.v 2020-04-10 12:26:15 +03:00
Delyan Angelov
7d564e9791 cgen: skip inc generation for ForCStmt, when empty in the v source 2020-04-10 10:00:14 +03:00
Daniel Däschle
320fad49c5
checker: check enum 2020-04-09 19:23:49 +02:00
Daniel Däschle
c0d86eb651
cgen: printing pointer should print the address 2020-04-09 15:35:52 +02:00
Alexander Medvednikov
f508955b64 vfmt: fix mod.Type; run vfmt on ast.v 2020-04-09 15:33:46 +02:00
Alexander Medvednikov
d7ae9d7279 cgen: optional fixes; make http compile 2020-04-09 14:03:47 +02:00
Daniel Däschle
3fbf91a044
cgen: printing pointers 2020-04-09 12:29:29 +02:00
krischerven
8f8f8c418e
cgen: implement equality on arrays 2020-04-09 03:55:37 +02:00
ka-weihe
77d41d03f5
cgen: inline 2020-04-09 00:35:13 +02:00
Alexander Medvednikov
3f480a358e fix type_alias test 2020-04-08 22:34:21 +02:00
Daniel Däschle
1c340174b7
cgen: print nested structs 2020-04-08 22:14:01 +02:00
Alexander Medvednikov
a08e64f37f cgen: operator overloading 2020-04-08 22:12:42 +02:00
Daniel Däschle
d38acb5487
cgen: fix enum print case 2020-04-08 18:55:10 +02:00
Alexander Medvednikov
7a218286b3 cgen: fix returning optional consts; fix csv test 2020-04-08 17:21:36 +02:00
krischerven
bcb9d90abb
cgen: remove redundant spaces in generated C 2020-04-08 16:52:07 +02:00
Daniel Däschle
6bba7d4e3a
cgen: enum str() 2020-04-08 15:54:38 +02:00
Alexander Medvednikov
eb78396307 parser: fix prefix precedence 2020-04-08 13:53:11 +02:00
Delyan Angelov
ef19aa1de6 assert: fix line position, pretty print float literals and casts 2020-04-08 05:47:29 +03:00
Delyan Angelov
3bad02abdd cgen: do comparison of f32/f64 values for == and != by calling f64_eq(a,b) and f64_ne(a,b) 2020-04-08 03:51:06 +03:00
Alexander Medvednikov
7ff0c3aaa9 cgen/parser: fix unions 2020-04-08 01:20:55 +02:00
Alexander Medvednikov
d54150cd22 vfmt: fix struct init indent and wrapped lines 2020-04-08 00:59:28 +02:00
Alexander Medvednikov
2fbed2f880 cgen: fix _ = ... 2020-04-08 00:46:16 +02:00
ka-weihe
7406abe3b6
map: use strcmp and update wyhash 2020-04-08 00:02:15 +02:00
Daniel Däschle
59ac0bd46b
cgen: print bool correctly in interpolation 2020-04-07 23:26:20 +02:00
Alexander Medvednikov
6bbd1943dd cgen: fix &string cast; vfmt fixes 2020-04-07 18:51:44 +02:00
Daniel Däschle
4aedef367c
cgen: print bool and string correctly in struct 2020-04-07 17:52:15 +02:00
Alexander Medvednikov
890940292b Revert "cgen: print bool in struct correctly"
This reverts commit 78440be2b2.
2020-04-07 12:56:05 +02:00
Daniel Däschle
78440be2b2
cgen: print bool in struct correctly 2020-04-07 12:39:10 +02:00
yuyi
426eb46166
test: fix windows test error 2020-04-07 12:32:09 +02:00
ka-weihe
5be892c635
cheaders: update wyhash to version gamma 2020-04-06 18:47:29 +02:00
Alexander Medvednikov
7f516dbae2 cgen: minor optionals fixes 2020-04-06 18:46:50 +02:00
Alexander Medvednikov
35fbac8d56 parser/cgen: default struct field values 2020-04-06 14:45:48 +02:00
Alexander Medvednikov
f59c9133da cgen: temporary headers fix 2020-04-06 14:22:59 +02:00
Alexander Medvednikov
be014fcdd6 checker: << check; initial #flag os support 2020-04-06 02:05:11 +02:00
Alexander Medvednikov
edb93914bb vfmt: re-run on fmt.v 2020-04-05 23:30:16 +02:00
Alexander Medvednikov
08bbc251ff vfmt: fix multiline comments 2020-04-05 19:35:10 +02:00
Alexander Medvednikov
8260236331 vfmt: run on fmt.v 2020-04-05 18:15:50 +02:00
Alexander Medvednikov
e464c4acc5 vfmt: more fixes + run on cgen.v 2020-04-05 18:03:36 +02:00
Alexander Medvednikov
df45932c03 vfmt: fix same line stmt comments 2020-04-05 16:38:33 +02:00
Alexey
781c20a6ae
cgen: bring back Windows fixes 2020-04-05 16:08:16 +02:00
Alexey
9c1eaaeb49
cgen: declare empty structs correctly 2020-04-05 12:31:25 +02:00
Delyan Angelov
5e76d53fcd compiler: support default values in optional blocks 2020-04-05 11:59:15 +03:00
Alexander Medvednikov
97db4c0e9a vfmt: comments and other fixes 2020-04-05 02:08:13 +02:00
Delyan Angelov
45401954fa fix vlib/os/os_test.v 2020-04-04 23:06:47 +03:00
Alexey
abd0686043
cgen: fix struct initialization 2020-04-04 17:59:49 +02:00
Alexander Medvednikov
e600feda98 cgen: __argc is already used on windows 2020-04-04 15:59:46 +02:00
Alexander Medvednikov
f748390172 parser: do no allow var names with __; cgen: use __argc 2020-04-04 14:55:40 +02:00
Alexander Medvednikov
95a1bd8470 cgen: handle C typedefs 2020-04-04 14:32:42 +02:00
krischerven
4c6db7a64e
cgen: fix mutable arrays 2020-04-04 14:08:38 +02:00
Alexey
d56276017c
cgen: fix variadics called with 0 vargs 2020-04-04 12:54:45 +02:00
Alexey
c6fabea49d
cgen: generate code for go statement for Windows 2020-04-04 12:09:05 +02:00
joe-conigliaro
c9e290b36f
table: simplify/generalise type fns & remove calls 2020-04-04 16:37:11 +11:00
joe-conigliaro
bf59828897
ast: const impl & global scope & objects 2020-04-04 14:14:40 +11:00
Alexander Medvednikov
1d2de44e19 cgen: fix print(ptr); checker: uninitialized reference error/warning 2020-04-03 20:17:53 +02:00
Alexander Medvednikov
436ef12730 cgen: str(): handle empty structs 2020-04-03 18:49:15 +02:00
Delyan Angelov
b411d29577 v2: fix support for 'go fn()' in modules. sync.pool is again multithreaded. 2020-04-03 19:44:49 +03:00
Alexander Medvednikov
c32ed8af51 cgen: struct str() generation; go() fixes 2020-04-03 18:05:53 +02:00
Delyan Angelov
31c4b1cda6 v2: compile vfmt again; consistent colored error messages 2020-04-03 18:42:22 +03:00
Alexander Medvednikov
52f096f5d9 cgen: go xxx() 2020-04-03 15:18:20 +02:00
Alexey
6a5cc0fa19
tests: update assert output 2020-04-03 13:39:11 +02:00
Alexey
6c4de001b8
cgen: add builtin.init call inside of _vinit 2020-04-03 13:27:19 +02:00
Alexander Medvednikov
a25f47124d cgen: make array_set/map_set work with pointers 2020-04-03 10:41:01 +02:00
Delyan Angelov
6b9bf8cbf7 v2: fixes for most of vlib/builtin/map_test.v . 2020-04-03 00:42:08 +03:00
Alexander Medvednikov
804d303487 cgen: add () for | and ^ 2020-04-02 18:26:56 +02:00
Alexander Medvednikov
5b53b3d7e3 cgen/os: minor fixes 2020-04-02 14:00:28 +02:00
Alexander Medvednikov
6e380b8897 cgen: brin back hashes() 2020-04-02 13:49:59 +02:00
Alexander Medvednikov
5b835d294c more windows fixes + bring back windows ci 2020-04-02 13:44:46 +02:00
Delyan Angelov
084f853a2a
v2: enhance version with current git commit hash. Cleanup redundant code. 2020-04-02 13:31:02 +02:00
Alexander Medvednikov
1fe2933dd9 cgen: windows fixes 2020-04-02 13:09:39 +02:00
Delyan Angelov
12b8dc2613
v2: fix version 2020-04-02 10:48:29 +02:00
Alexander Medvednikov
461a5b2c18 cgen: fix raw strings 2020-04-02 10:15:35 +02:00
Alexander Medvednikov
683aa75b8d cgen: fix filter() 2020-04-02 09:32:10 +02:00
krischerven
dac304195e
cgen: print: support all the same functionality as println 2020-04-02 09:19:57 +02:00
Major Taylor
3eff266eb9
cgen: vcleanup call fix (#4186) 2020-04-02 09:18:45 +02:00
krischerven
561b7a0ea5
enum: make .str() print the name instead of the value 2020-04-02 03:27:06 +02:00
Alexander Medvednikov
88d15c6611 gl, glfw, freetype fixes 2020-04-02 01:45:22 +02:00
Alexander Medvednikov
1cfe44d9c6 fix windows build 2020-04-02 01:15:00 +02:00
Alexander Medvednikov
24fc4a4c04 use autofree only with -autofree for now 2020-04-01 23:28:56 +02:00
Alexander Medvednikov
8dfb14b1c4 remove 15k lines of code of the old backend; make V2 the default backend 2020-04-01 21:25:31 +02:00
Alexander Medvednikov
0de853a2ab v2: lots of minor test fixes 2020-04-01 17:14:21 +02:00
joe-conigliaro
6764c7dd5c
parser/cgen: typeof test fixes - match & fixed array order 2020-04-02 02:13:21 +11:00
Alexander Medvednikov
b1b811b5ed v2: static (for translated code only) 2020-04-01 13:38:05 +02:00
Delyan Angelov
5b990078f9
more precise support for internal module tests 2020-03-31 23:42:30 +02:00
Alexander Medvednikov
a3bd19ce73 cgen: generate enums earlier 2020-03-31 20:26:15 +02:00
Alexander Medvednikov
2b563bc69f v2: initial interface support; fix enum_hex_test.v 2020-03-31 19:59:41 +02:00
Delyan Angelov
50143ad9bf
v2: be silent by default 2020-03-31 19:58:44 +02:00
Alexander Medvednikov
2fe0e80569 cgen: enum default values 2020-03-31 19:43:11 +02:00
Alexander Medvednikov
f98cc9c017 cgen: fix ARR_LEN 2020-03-31 17:16:12 +02:00
Alexander Medvednikov
9d630dff30 allow slicing of fixed size arrays 2020-03-31 16:48:00 +02:00
joe-conigliaro
d048bf66b0
cgen: optimize/generalize typ method 2020-04-01 00:18:25 +11:00
Alexander Medvednikov
956bf23390 memory fixes: 21% of V compiler leaks fixed 2020-03-31 14:33:16 +02:00
joe-conigliaro
21e4f2422d
cgen: clarify field name 2020-03-31 19:11:47 +11:00
joe-conigliaro
71ca553190
cgen: multi return/assign optionals 2020-03-31 15:34:59 +11:00
Delyan Angelov
07de351546
v2: support -stats for _test.v files 2020-03-30 17:21:32 +02:00
joe-conigliaro
3440d7edd8
ast: first step merging CallExpr & MethodCallExpr 2020-03-30 21:39:20 +11:00
yuyi
c9eed0b89b
cgen: optimize a replace call 2020-03-29 10:09:27 +02:00
Delyan Angelov
a9724fd38d
v2: typeof() 2020-03-28 17:37:22 +01:00
joe-conigliaro
837bffd03a
parser: parse type - fix multiple & 2020-03-29 01:15:10 +11:00
Alexander Medvednikov
98a0beab03 cgen: generate str() methods; merge c tests 2020-03-27 20:33:30 +01:00
Alexander Medvednikov
473d9fef55 checker: do not allow extra () in if conditions 2020-03-27 14:57:19 +01:00
Alexander Medvednikov
1a751208ca cgen: skip $if os {} block 2020-03-27 14:44:30 +01:00
Alexander Medvednikov
7fdce50718 cgen: write defer statements at the end of the function 2020-03-27 11:21:00 +01:00
Joe Conigliaro
883a105aca cgen: fix tests 2020-03-27 17:28:04 +11:00
Joe Conigliaro
7ce7151ad2 cgen: v2 compiles itself - defer stmt / if * in opt parens. 2020-03-27 17:21:22 +11:00
Alexander Medvednikov
9185de3fb7 cgen: fix tests 2020-03-26 22:28:24 +01:00
Alexander Medvednikov
f0334b2e12 cgen: fix arr[i] *= x and 2d_arr << arr 2020-03-26 22:09:25 +01:00
Delyan Angelov
f489c89987
v2: more informative assert output; string interpolation formatting 2020-03-26 19:17:14 +01:00
Alexander Medvednikov
eb57f192d4 cgen: fix test 2020-03-26 17:21:52 +01:00
Alexander Medvednikov
75c2ef7947 cgen: fix octal and hex int literals 2020-03-26 17:14:24 +01:00
Alexander Medvednikov
ed3e0c43bc cgen: for c in string; short struct init syntax fixes; 2020-03-26 17:03:14 +01:00
Alexander Medvednikov
c71d36356b v2: optionals fixes 2020-03-26 14:58:11 +01:00
Alexander Medvednikov
b288bf2e7c cgen: or{} for methods 2020-03-26 14:42:14 +01:00
Joe Conigliaro
1d0f3abadf cgen/checker: variadic method call fix 2020-03-26 22:40:14 +11:00
Joe Conigliaro
f452518a63 cgen: fix typo & use expected type 2020-03-26 21:11:56 +11:00
Joe Conigliaro
9c6ac7cb71 cgen: fix variadics called with 0 vargs 2020-03-26 21:09:59 +11:00
Alexander Medvednikov
f2c9592b86 cgen: fix () in & exprs 2020-03-26 10:44:59 +01:00
Alexander Medvednikov
1f3428f282 cgen: basic assert 2020-03-26 10:27:46 +01:00
Delyan Angelov
fb4f7b6827
v2: enable compilation of short programs with no 'import os' 2020-03-26 09:20:55 +01:00
Alexander Medvednikov
aa34d3a4c4 cgen: remove a space 2020-03-25 23:57:46 +01:00
Alexander Medvednikov
25ee30d8cb cgen: fix optional functions with unused return values 2020-03-25 23:57:22 +01:00
Alexander Medvednikov
3b4e0147cd cgen: fix tests 2020-03-25 17:26:03 +01:00
Alexander Medvednikov
7070b1cda9 cgen: GotoStmt, err variable 2020-03-25 17:24:55 +01:00
Alexander Medvednikov
26fab9b274 cgen: fix mutable array args 2020-03-25 17:04:16 +01:00
Alexander Medvednikov
41a089e513 cgen: or block 2020-03-25 16:00:22 +01:00
Alexander Medvednikov
456750ac19 v2: array_test fixes 2020-03-25 14:24:48 +01:00
Alexander Medvednikov
60fbceea43 memory: free_scope_vars() 2020-03-25 12:26:59 +03:00
Alexander Medvednikov
b495e78f0e v2: add _vinit to tests' fn main 2020-03-25 00:17:39 +01:00
Alexander Medvednikov
a3046b68da cgen: fix tests 2020-03-24 23:41:34 +01:00
Alexander Medvednikov
7f345e310b cgen: fix const name 2020-03-24 22:41:01 +01:00
Alexander Medvednikov
cc9537dd8a cgen: fix tests 2020-03-24 22:35:05 +01:00
Alexander Medvednikov
437bba5566 cgen: generate fn main for tests; fix consts bug 2020-03-24 22:24:03 +01:00
Joe Conigliaro
7aff0cb84f cgen: remove special case for malloc 2020-03-25 00:46:00 +11:00
Joe Conigliaro
d98bb44490 cgen: remove 0 typ checks & unused var 2020-03-24 22:55:41 +11:00
Joe Conigliaro
3d2fafa580 cgen: variadic for in loop 2020-03-24 19:42:16 +11:00
joe-conigliaro
309a905409 cgen: remove unused var 2020-03-24 17:27:20 +11:00
joe-conigliaro
e5a111396c cgen: add for map 2020-03-24 17:25:10 +11:00
Joe Conigliaro
0433e24b7f cgen: array init fix 2020-03-24 13:31:16 +11:00
Delyan Angelov
efe21fed66
v2: fix hello world compilation with tcc 2020-03-23 21:26:48 +01:00
Alexander Medvednikov
2e29e09b1b cgen: fix map_get: use zero value if the key was not found 2020-03-23 20:02:09 +01:00
Joe Conigliaro
80676cf44f cgen: fix struct init 0 fields & tests 2020-03-23 21:57:54 +11:00
Joe Conigliaro
e13bbd8c40 cgen: map init struct fields & fn type arg fix 2020-03-23 21:17:14 +11:00
Alexander Medvednikov
c808430643 cgen: optimize type_default() 2020-03-23 09:17:32 +01:00
Alexander Medvednikov
4867803f6b cgen: zero struct fields during initialization 2020-03-23 08:59:34 +01:00
joe-conigliaro
a5bd98610f cgen: call arg ref fix 2020-03-23 17:23:10 +11:00
Joe Conigliaro
89af7e7a5b cgen: replace reserved C keywords in identifiers 2020-03-23 13:36:50 +11:00
Alexander Medvednikov
b69ebd73b2 cgen: minor fixes. v2 can now compile itself! 2020-03-22 16:55:42 +01:00
Joe Conigliaro
99de98ffc7 cgen: fix test 2020-03-23 02:30:45 +11:00
Joe Conigliaro
076bc2b773 cgen/checker: fixes & fixes & tmp fixes :D 2020-03-23 02:22:49 +11:00
Alexander Medvednikov
ce73ced932 cgen: #else 2020-03-22 14:54:31 +01:00
Alexander Medvednikov
2738a0c776 cgen: backtrace and sigaction fixes 2020-03-22 14:47:45 +01:00
Joe Conigliaro
0609756d36 cgen: fix sum type casts & else if formatting 2020-03-23 00:28:11 +11:00
Alexander Medvednikov
c2ce06eba7 cgen: generate #ifdefs 2020-03-22 13:55:39 +01:00
Alexander Medvednikov
8d8907b61e memory: handle string assignments 2020-03-22 13:40:53 +01:00
Joe Conigliaro
043ea80fa9 checker: comptime if expr/stmts & type check fixes 2020-03-22 23:36:27 +11:00
Alexander Medvednikov
4cbba8c45d memory: handle arrays 2020-03-22 13:19:45 +01:00
Alexander Medvednikov
3a938972df memory: autofree fix 2020-03-22 12:06:33 +01:00
Alexander Medvednikov
7b689d8c52 ast: CompIf position 2020-03-22 11:53:08 +01:00
Alexander Medvednikov
ab3f6d9202 cgen: generate indents for more readable C code 2020-03-22 10:12:45 +01:00
Alexander Medvednikov
1ad417734e memory: remove if false 2020-03-22 08:59:44 +01:00
Alexander Medvednikov
3e80e22f5d fix prod build 2020-03-21 20:02:37 +01:00
Alexander Medvednikov
e5f6a0949f cgen: autofree: first step 2020-03-21 19:52:19 +01:00
Joe Conigliaro
9d80d261b9 gen: rename _init() to _vinit() in cheaders.v 2020-03-22 00:22:43 +11:00
Joe Conigliaro
f7042e9038 cgen: sum type cast & map str() receiver 2020-03-21 23:57:11 +11:00
Alexander Medvednikov
0f1371e1c9 cgen: fix tests 2020-03-21 13:56:21 +01:00
Alexander Medvednikov
f962d92623 cgen: use _vinit instead of _init to avoid conflicts on Linux 2020-03-21 13:28:41 +01:00
Alexander Medvednikov
7b1b647832 parser: disable parser_test.v for now 2020-03-21 11:55:49 +01:00
Alexander Medvednikov
7ad1441c81 cgen: fix the tests 2020-03-21 11:47:23 +01:00
Alexander Medvednikov
b2d1f55702 cgen_test fixes 2020-03-21 11:17:17 +01:00
Alexander Medvednikov
c12985d1d7 cgen: for in; init fixes 2020-03-21 10:22:19 +01:00
Alexander Medvednikov
e57804e6c2 cgen: generate init() 2020-03-21 09:29:16 +01:00
Alexander Medvednikov
c93f515a54 cgen: add _STR definition 2020-03-21 07:10:53 +01:00
Alexander Medvednikov
5f61fbcbe3 fix prod build 2020-03-21 07:04:53 +01:00
Alexander Medvednikov
5072320803 cgen/ast/checker: string interpolation 2020-03-21 07:01:11 +01:00
Alexander Medvednikov
ec003ff897 cgen: temporary lld fix 2020-03-20 20:46:42 +01:00
Alexander Medvednikov
6b571155f4 cgen: fix print(struct); use automatic referencing 2020-03-20 17:11:58 +01:00
Alexander Medvednikov
078f498b17 cgen: fix vals[i].field = x 2020-03-20 17:03:41 +01:00
Joe Conigliaro
15d4b5fcdb checker/fmt/cgen: fun vfmt on changes from previous commit 2020-03-21 00:46:00 +11:00
Joe Conigliaro
a331abf675 ast/cgen/parser: combine IfExpr branches into single node 2020-03-21 00:39:56 +11:00
Alexander Medvednikov
c993489fe9 cgen: optional expr fix 2020-03-20 13:03:42 +01:00
joe-conigliaro
ed50fef1c0 cgen: dont add overidden fields in assoc 2020-03-20 15:05:50 +11:00
joe-conigliaro
1fb2c3f5b4 cgen: multi return optional fix 2020-03-20 14:59:06 +11:00
joe-conigliaro
525639b42f cgen: fix tests after array.first fix 2020-03-20 14:24:18 +11:00
Alexander Medvednikov
f37b9d99fe cgen: last/first fix 2020-03-19 19:36:15 +01:00
Alexander Medvednikov
b7a036945d cgen: in [] optimization 2020-03-19 16:12:49 +01:00
Alexander Medvednikov
216c7a16d8 cgen: filter + expected_type fix 2020-03-19 15:18:29 +01:00