yuyi
|
4878077c62
|
gen/c: fix gen_str_for_struct with custom ref str (fix #7179) (#8820)
|
2021-02-18 18:19:42 +02:00 |
yuyi
|
4fa315edc2
|
checker: fix for _, mut j in array (#8785)
|
2021-02-17 20:44:28 +01:00 |
Delyan Angelov
|
2002d20249
|
io: remove unused Zzz_CoerceInterfaceTableGeneration struct; add test for `x := Enum{}`
|
2021-02-17 01:37:05 +02:00 |
Delyan Angelov
|
843de10442
|
parser,gen: fix `arr << map[key] using map_get_and_set_1, leading to double free
|
2021-02-16 16:39:31 +02:00 |
yuyi
|
982e35909d
|
cgen: fix `mut` var in `for` loop reads as address (fix #8548) (#8745)
|
2021-02-16 13:24:19 +01:00 |
Uwe Krüger
|
0520b755f4
|
checker/cgen: support `print*()`, `.str()` and '$x' for `shared` (#8771)
|
2021-02-16 12:40:13 +01:00 |
yuyi
|
a9c2045dbd
|
cgen: fix var name clash of array/map (fix #1994) (#8765)
|
2021-02-15 15:51:57 +02:00 |
Peter Badida
|
6781f732f4
|
gen: fix infinite loop when struct's ref field is pointing to self (#8632) (#8641)
|
2021-02-15 15:43:10 +02:00 |
Nick Treleaven
|
82650ee813
|
parser: fix parsing attribute after fn prototype with no return type (#8727)
|
2021-02-14 08:05:20 +01:00 |
Uwe Krüger
|
374739b804
|
all: rename `[ref_only]` -> `[heap]` (#8718)
|
2021-02-13 16:52:01 +02:00 |
Uwe Krüger
|
40066a5daa
|
checker: obey [ref_only] tag, allow embedding in other ref struct (#8707)
|
2021-02-13 00:47:37 +01:00 |
Delyan Angelov
|
578de634fe
|
sync: move pool related code to `sync.pool`, cleanup, add a README.md
|
2021-02-11 10:55:23 +02:00 |
yuyi
|
f2e74bce7a
|
checker: fix sumtype assign error (fix #7988) (#8655)
|
2021-02-10 10:59:56 +01:00 |
Uwe Krüger
|
f3c5f24c17
|
allow `lock` expression to return multiple objects (#8657)
|
2021-02-09 17:09:10 +02:00 |
Delyan Angelov
|
d110f0de74
|
tests: add a regression test for 3d2afcf
|
2021-02-09 14:11:09 +02:00 |
Swastik Baranwal
|
09cff69919
|
all: allow using aliases as keys in map (#8589)
|
2021-02-08 18:51:05 +01:00 |
Lukas Neubert
|
5abd49d9bc
|
cgen: cast default struct field value to correct SumType/interface (#8619)
|
2021-02-08 17:33:05 +02:00 |
Swastik Baranwal
|
e2ff26a066
|
cgen: fix gen of .sort method for `>` operator and improve grammar of error (#8615)
|
2021-02-08 17:19:54 +02:00 |
zakuro
|
e5839effbc
|
checker/cgen: allow `<<` operator for aliases (#8561)
|
2021-02-08 01:41:47 +01:00 |
Uwe Krüger
|
118ca1240e
|
all: allow `shared` element types for `struct` and arrays (#8631)
|
2021-02-08 00:28:29 +01:00 |
Nick Treleaven
|
cd4f7101f7
|
parser: support short struct update syntax `{...ident,` (#8613)
|
2021-02-07 03:43:51 +01:00 |
Delyan Angelov
|
d77bb2f606
|
all: improve -skip-unused, track consts, walk all AST nodes, support tests
|
2021-02-07 02:51:45 +02:00 |
Nick Treleaven
|
f5f65f929f
|
parser: parse `map{key_expr: val_expr}` (#8608)
|
2021-02-06 22:13:24 +01:00 |
Uwe Krüger
|
5343f1374b
|
all: allow functions to return `shared` object (#8606)
|
2021-02-06 19:41:52 +01:00 |
zakuro
|
fe9d062b41
|
gen: fix bug where unreached defer is executed (#8594)
|
2021-02-06 18:40:39 +02:00 |
Swastik Baranwal
|
9b839b3b7d
|
cgen: fix gen of `>` operator overloading (#8600)
|
2021-02-06 12:59:20 +02:00 |
Uwe Krüger
|
ab279dace7
|
cgen: support `shared` initialization from call returning optional (#8593)
|
2021-02-06 03:07:05 +01:00 |
Delyan Angelov
|
99822e51de
|
ci: force println_os_executable.vv to have a stable output on all OSes
|
2021-02-05 20:01:02 +02:00 |
Delyan Angelov
|
81789ee106
|
tests: add vlib/v/tests/skip_unused/
|
2021-02-05 17:27:00 +02:00 |
Delyan Angelov
|
25a3873019
|
parser,checker: support @METHOD, replaced by 'ReceiverType.MethodName'
|
2021-02-05 16:32:43 +02:00 |
Louis Schmieder
|
97c0ef3505
|
orm: struct field support (#8517)
|
2021-02-04 20:28:33 +01:00 |
yuyi
|
abde1cd73d
|
cgen: fix array/map of alias to string (#8549)
|
2021-02-04 17:52:14 +02:00 |
BigBlack
|
162c42dbe9
|
ast: fix `new_struct := MyStruct{...(*old_struct)}` (#8544)
|
2021-02-04 09:14:43 +02:00 |
pancake
|
27239db427
|
builder: show file:line when import fails (#8537)
|
2021-02-04 09:09:54 +02:00 |
Uwe Krüger
|
f013e65670
|
checker/cgen: support lock expressions `x := rlock s { s.get() }` (#8540)
|
2021-02-03 23:56:58 +01:00 |
Uwe Krüger
|
cee00a3551
|
cgen: create enclosing block on C side for V `lock` blocks (#8538)
|
2021-02-03 23:25:01 +01:00 |
Swastik Baranwal
|
7ec116d588
|
all: only allow defining `==` and `<` and auto generate `!=`, `>`, `>=` and `<=` (#8520)
|
2021-02-03 15:18:38 +01:00 |
Uwe Krüger
|
9dcf673216
|
all: make `lock` and `rlock` dead lock free :-) (#8534)
|
2021-02-03 15:16:52 +01:00 |
Uwe Krüger
|
df0520b43a
|
checker,cgen: make `shared` behave like `mut` inside `lock` - and like non-mut inside `rlock` (#8526)
|
2021-02-03 01:20:19 +02:00 |
yuyi
|
7875164d91
|
cgen: add gen_alias_equlity_fn (#8514)
|
2021-02-02 18:37:57 +01:00 |
Daniel Däschle
|
d477e525bb
|
checker/gen: fix generic struct init (#8322)
|
2021-02-03 00:42:00 +11:00 |
Uwe Krüger
|
1de299ad22
|
cgen: allow `shared` initialization from return values of functions (#8512)
|
2021-02-02 14:13:13 +02:00 |
yuyi
|
9a2820fa7b
|
checker: fix pass fixed array of function as argument (#8502)
|
2021-02-02 03:58:54 +01:00 |
Ruofan XU
|
a0a33f7ff1
|
checker: fix map of function as argument and direct call of function in map (#8494)
|
2021-02-02 03:58:32 +01:00 |
Ruofan XU
|
51f2eb81f4
|
checker/cgen: fix mut array of fn as argument (#8469)
|
2021-02-01 20:10:24 +01:00 |
Nick Treleaven
|
79e9084f7b
|
checker: allow `Struct{...expr}` where `expr` is another struct type (#8495)
|
2021-02-01 20:08:25 +01:00 |
Uwe Krüger
|
17746561f2
|
cgen: put `shared` arrays and maps always on heap (#8496)
|
2021-02-01 20:07:01 +01:00 |
Delyan Angelov
|
fab7b9d9d9
|
checker: fix `x := match enumexpr { .case2 { fn1 } .case2 { fn2} }`, where fn1 and fn2 have compatible signature
|
2021-02-01 21:01:58 +02:00 |
BigBlack
|
e3c2604338
|
cgen: fixed array slice in function, add docs (#8481)
|
2021-02-01 19:11:17 +02:00 |
yuyi
|
53a5aad855
|
cgen: fix fixed array of function (#8490)
|
2021-02-01 14:50:10 +01:00 |
Uwe Krüger
|
44ec9e3ebc
|
checker/cgen: put `shared` struct always on heap (#8492)
|
2021-02-01 14:39:36 +01:00 |
Enzo
|
778b83a132
|
gen: fix multiple blank param with interface (#8480)
|
2021-01-31 19:44:55 +02:00 |
spaceface
|
effa3188dd
|
cgen: fix type casts to interfaces (#8476)
|
2021-01-31 19:24:33 +02:00 |
Enzo
|
2945040a67
|
gen: fix function with multiple blank params (#8475)
|
2021-01-31 16:37:26 +02:00 |
Nick Treleaven
|
f992099726
|
checker: check s.$method(arg) argument is []string (#8455)
|
2021-01-31 15:28:23 +01:00 |
Ruofan XU
|
ae60ea4ed5
|
tests: add regression tests for typeof map and array of fns (#8458)
|
2021-01-31 12:20:15 +02:00 |
Delyan Angelov
|
978359a6fc
|
tests: fix some warnings in preparation for `-W test-self`
|
2021-01-31 11:05:17 +02:00 |
yuyi
|
2963425995
|
cgen: fix fn_with_mut_args (fix #7139) (#8446)
|
2021-01-31 02:45:45 +01:00 |
Nick Treleaven
|
9c2bd24b4f
|
tests: add test for s.$method() with T.methods (#8451)
|
2021-01-30 18:35:41 +01:00 |
Daniel Däschle
|
2cadb3e4d8
|
gen: panic with correct type names (#8355)
|
2021-01-30 18:54:05 +02:00 |
Uwe Krüger
|
9c82eec529
|
checker: support nested propagation cases `f(g() ?)` (#8447)
|
2021-01-30 16:53:31 +01:00 |
Nick Treleaven
|
43c3a3b080
|
checker: fix compile-time call with string identifier expression (#8415)
|
2021-01-30 15:24:16 +01:00 |
div72
|
8c70920695
|
all: add offsetof (#8380)
|
2021-01-30 12:57:09 +01:00 |
Nick Treleaven
|
c0685eeefc
|
parser: add warning for s.$field.name without brackets (#8411)
|
2021-01-30 12:56:10 +01:00 |
Enzo
|
ced7649bf8
|
gen: fix `for ... in array` (#8428)
|
2021-01-30 12:27:11 +01:00 |
Uwe Krüger
|
5e9b528a9d
|
checker/cgen: support `return` from nested `or` (#8430)
|
2021-01-30 12:46:36 +02:00 |
Delyan Angelov
|
5564a2c1da
|
tests: fix filter_in_map_test.v (it did not have a `test_` function in it)
|
2021-01-30 10:29:48 +02:00 |
Uwe Krüger
|
4a955d9c54
|
sync: don't force `Mutex` and `Semaphore` to be reference (#8331)
|
2021-01-29 20:52:14 +02:00 |
yuyi
|
26c06a56b7
|
checker: fix array_insert_or_prepend_short_struct_init (#8397)
|
2021-01-29 14:53:14 +01:00 |
yuyi
|
56c4a36cd4
|
cgen: fix match_in_if_expression (#8407)
|
2021-01-29 14:51:17 +01:00 |
yuyi
|
ddcbc4440b
|
cgen: fix array_sort_by_references (fix #8390) (#8403)
|
2021-01-29 12:20:28 +02:00 |
Tim Basel
|
5fc7eadd8b
|
cgen: fix short struct init with `mut` (#8384)
|
2021-01-28 10:05:09 +02:00 |
Delyan Angelov
|
dceb63b9df
|
cgen: fix implicit the optional return value to have .ok = true, in anon `fn()?{}`
|
2021-01-28 02:26:02 +02:00 |
yuyi
|
d1ab22d45f
|
checker: fix array append short struct init (#8362)
|
2021-01-27 13:55:53 +01:00 |
Delyan Angelov
|
e5a84719ca
|
all: require calling `optfn() ?` / `optfn() or {...}` for `fn optfn() ? {}`
|
2021-01-26 16:43:17 +02:00 |
spaceface
|
5f2b2df546
|
checker: don't disallow defining methods on interfaces (#8335)
|
2021-01-26 11:56:17 +01:00 |
Daniel Däschle
|
7bb9c0e7b3
|
checker: fix multi generic args (#8347)
|
2021-01-26 09:37:48 +02:00 |
spaceface
|
daff085033
|
checker: fix treating C structs with capitalized fields as embeds (#8343)
|
2021-01-25 18:47:14 +02:00 |
Daniel Däschle
|
006a11454f
|
cgen: fix generic type $else $if (#8339)
|
2021-01-25 17:08:02 +01:00 |
Nick Treleaven
|
02d8ede94d
|
cgen: fix `$if T !is` (#8311)
|
2021-01-25 14:25:52 +01:00 |
yuyi
|
1c9950c84a
|
cgen: fix map_complex_high_order_fixed_array (#8329)
|
2021-01-25 14:40:53 +02:00 |
yuyi
|
d3327ba50f
|
cgen: fix for_mut_val_in_map_fixed_array (#8314)
|
2021-01-24 23:18:11 +01:00 |
spaceface
|
4be45e8d02
|
checker: add mutability checks for interface fields; add tests (#8312)
|
2021-01-24 22:11:17 +01:00 |
Uwe Krüger
|
815104e5d0
|
parser: parse `-1` and `-13.3` as number literals (#8321)
|
2021-01-24 22:09:51 +01:00 |
Daniel Däschle
|
750738aa12
|
cgen: fix optional sum types (#8319)
|
2021-01-24 20:56:44 +01:00 |
Uwe Krüger
|
1ea5cedd03
|
parser/cgen: fix explicit array/map shared/reference initializers (#8307)
|
2021-01-23 23:54:57 +02:00 |
Daniel Däschle
|
35432c5e92
|
gen: fix generic multi return (#8303)
|
2021-01-23 23:41:32 +02:00 |
Swastik Baranwal
|
8a59ffb4b7
|
cgen: allow `==` to be user defined if `!=` is auto generated and vice versa (#8286)
|
2021-01-23 16:59:39 +01:00 |
Delyan Angelov
|
4065a0327a
|
gen: fix autogeneration of .str() methods for sumtypes that have child types with custom .str() methods
|
2021-01-23 17:22:19 +02:00 |
Uwe Krüger
|
74115fe70a
|
parser: auto-import `sync` when `shared` objects are used (#8294)
|
2021-01-23 16:03:21 +01:00 |
Uwe Krüger
|
38880b23eb
|
checker: allow `a[i]` for `shared` arrays outside `unsafe` (#8292)
|
2021-01-23 13:33:32 +01:00 |
Alexander Medvednikov
|
d991712b3c
|
gg: native rendering mode on macOS
|
2021-01-23 10:25:43 +01:00 |
Daniel Däschle
|
c5c7addb88
|
checker: improve infer generic (#8281)
|
2021-01-23 10:19:08 +02:00 |
spaceface
|
c2d501e8a9
|
all: implement interface fields (#8259)
|
2021-01-23 08:57:17 +02:00 |
Daniel Däschle
|
dbf84520f1
|
all: update assoc syntax (#8274)
|
2021-01-22 23:24:48 +01:00 |
Daniel Däschle
|
500ebf77e4
|
all: implement multiple generics (#8231)
|
2021-01-22 13:49:56 +01:00 |
Alexander Medvednikov
|
46cdf4f1ff
|
0.2.2
|
2021-01-22 10:39:44 +01:00 |
Nick Treleaven
|
72168cd6bc
|
parser: support `mut:` section in the interface methods, and a mut interface fn modifier (#8092)
|
2021-01-22 10:02:28 +02:00 |
yuyi
|
d44c632d11
|
cgen: fix innermost value of map fixed array (fix #8214) (#8247)
|
2021-01-22 09:32:56 +02:00 |
Daniel Däschle
|
3ee7bc960f
|
checker/gen: fix smartcast pointer sumtype (#8260)
|
2021-01-21 22:31:25 +02:00 |