Louis Schmieder
|
dcf4a6b008
|
orm: add support for custom table names & custom field names (#9697)
|
2021-04-15 10:53:43 +03:00 |
yuyi
|
1250ce4353
|
cgen: fix generics with embed generics (fix #8694) (#9724)
|
2021-04-15 01:44:11 +02:00 |
crthpl
|
0099458c0a
|
all: small asm fixes and number labels (#9730)
|
2021-04-15 01:30:23 +02:00 |
Uwe Krüger
|
10bf974cda
|
all: gc: provide optimized mode (#9716)
|
2021-04-14 00:40:26 +02:00 |
Delyan Angelov
|
68c3eccec5
|
v: skip asserts in -prod mode inside non _test.v files
|
2021-04-13 13:07:57 +03:00 |
Delyan Angelov
|
1ef718c1e1
|
cgen: fix `return if cond { x,y } else { a,b }` generation
|
2021-04-13 11:52:18 +03:00 |
Henrixounez
|
6cfd53bf57
|
cgen: generate interfaces after all other typedefs (#9680)
|
2021-04-12 00:43:19 +03:00 |
Delyan Angelov
|
79fa15ec3a
|
cgen: allow printing of C.Structs containing &char/charptr fields
|
2021-04-12 00:14:58 +03:00 |
Enzo
|
a851901620
|
checker: allow casting bool to byte (#9676)
|
2021-04-11 13:24:24 +03:00 |
Uwe Krüger
|
954c436d28
|
checker/cgen: auto initialize `shared` elements of structs (#9669)
|
2021-04-11 10:30:23 +03:00 |
Uwe Krüger
|
78c6e35bde
|
checker/cgen: fix `v := rlock m { m[key] or { default_val } }` (#9666)
|
2021-04-10 16:57:18 +02:00 |
yuyi
|
9f093203a4
|
cgen: fix generics struct_init (#9661)
|
2021-04-10 17:33:15 +03:00 |
yuyi
|
cf64001474
|
checker: fix generics return generic struct (#9663)
|
2021-04-10 14:00:01 +03:00 |
yuyi
|
bf6a2f80ef
|
checker: fix generics with generic struct receiver (#9658)
|
2021-04-10 04:00:53 +02:00 |
Uwe Krüger
|
b346dd9464
|
cgen: fix blank identifier in IfGard (`if _ := <-ch { ... }`, etc) (#9650)
|
2021-04-09 17:18:36 +02:00 |
Uwe Krüger
|
84fa1ae444
|
boehm-gc: support a `[keep_args_alive]` tag for C functions (#9641)
|
2021-04-09 13:13:49 +03:00 |
zakuro
|
e6a67e7172
|
parser: fix error of `-foo.bar()` (#9646)
|
2021-04-09 10:54:03 +03:00 |
Ali Chraghi
|
9881ff8448
|
tests: fix option_print_errors_test.v (#9616)
|
2021-04-08 08:46:08 +03:00 |
yuyi
|
fef4e1e700
|
checker: fix generics method return generics struct (#9614)
|
2021-04-07 15:27:58 +02:00 |
Lukas Neubert
|
1d5ed89138
|
fmt: remove trailing space in comments (#9620)
|
2021-04-07 15:25:11 +02:00 |
crthpl
|
018a88c3ce
|
parser: asm: add support for memory clobbers (#9618)
|
2021-04-06 21:25:24 +02:00 |
Alexander Medvednikov
|
89838f2e21
|
tutorials: blog: use db.create_table()
|
2021-04-06 22:15:14 +03:00 |
Alexander Medvednikov
|
1e2a92945c
|
autofree: test `return x[0]` (optional)
|
2021-04-06 17:28:07 +03:00 |
Alexander Medvednikov
|
dbaa91810f
|
autofree: fix optional returns
|
2021-04-06 17:14:11 +03:00 |
涂紳騰(Shen-Teng Tu)
|
7d5c1c2ddb
|
tmpl: inline styles with attributes (#9605)
|
2021-04-06 15:17:40 +02:00 |
Delyan Angelov
|
10619d098c
|
ci: fix a race in vlib/v/compiler_errors_test.v execution on m1
|
2021-04-05 22:57:59 +03:00 |
Delyan Angelov
|
fec89c7efb
|
ci: fix some of `v test-cleancode` 1
|
2021-04-05 20:47:32 +03:00 |
Delyan Angelov
|
d82a0c1637
|
ci: fix multiret_with_ptrtype_test.v
|
2021-04-05 08:31:20 +03:00 |
Delyan Angelov
|
63a1c32a17
|
ci: fix ptr_arithmetic_test.v
|
2021-04-05 08:25:08 +03:00 |
Delyan Angelov
|
9cc9ce698f
|
ci: fix more of byteptr=> &byte, vfmt check_types.v
|
2021-04-05 07:27:26 +03:00 |
Daniel Däschle
|
6a5f49afb1
|
all: support `?Type(none)` (#9567)
|
2021-04-02 16:34:48 +02:00 |
Alexander Medvednikov
|
7385f8e56b
|
all: a massive merge of ast and table modules
|
2021-04-02 01:57:09 +03:00 |
crthpl
|
8d5e310189
|
asm: make fixed labels possible as displacement (#9549)
|
2021-04-01 09:58:33 +03:00 |
yuyi
|
63f835c4ce
|
cgen: fix the alias of fixed_array (fix #9537) (#9544)
|
2021-03-31 18:51:03 +02:00 |
yuyi
|
f1797a0150
|
generics: fix generic_struct_insts_to_concrete (#9536)
|
2021-03-31 13:11:55 +02:00 |
Swastik Baranwal
|
b40d06ec1e
|
cgen: fix operator overloading for array/map aliases (#9529)
|
2021-03-30 11:39:54 +02:00 |
Uwe Krüger
|
97f43d6a97
|
gc: make generational mode of Boehm-GC available (#9514)
|
2021-03-30 09:36:22 +02:00 |
zakuro
|
a3455b8433
|
cgen: execute defer stmts in LIFO order (#9528)
|
2021-03-30 09:35:19 +02:00 |
yuyi
|
cabbf93faa
|
cgen: fix generic_struct str() (#9504)
|
2021-03-29 11:15:59 +02:00 |
yuyi
|
92f19f5767
|
generics: fix generics_struct with generic array string (#9494)
|
2021-03-28 10:46:13 +02:00 |
Lukas Neubert
|
4a10514081
|
tests: run vfmt over some of the tests in vlib/v/tests (#9455)
|
2021-03-27 19:29:57 +02:00 |
zakuro
|
6f5259571d
|
cgen: use overloaded eq op in auto eq method (#9475)
|
2021-03-26 19:46:54 +02:00 |
yuyi
|
36cc4880a6
|
parser: fix generic fn with upper name type (#9460) (#9478)
|
2021-03-26 16:50:35 +02:00 |
Delyan Angelov
|
87494fad1d
|
parser: allow passing `mut a AliasOfPointerType`
|
2021-03-26 13:38:16 +02:00 |
zakuro
|
91ea76797a
|
cgen: fix a c error, when using dump(ptr) (#9468)
|
2021-03-26 08:35:12 +02:00 |
yuyi
|
478bb9ce8e
|
parser, checker: fix generic fn that returns a generic struct (#9469)
|
2021-03-26 08:32:11 +02:00 |
Uwe Krüger
|
257eadd2e1
|
gc: add `-gc boehm_leak` for leak detection (#9464)
|
2021-03-25 16:52:33 +01:00 |
ka-weihe
|
f885c7cea9
|
tests: fix three tests with address errors (#9441)
|
2021-03-24 00:01:29 +02:00 |
spaceface
|
392666e475
|
cgen: fix treating errors as values inside if expressions (#9440)
|
2021-03-23 22:45:08 +02:00 |
Alexander Medvednikov
|
6463dfca29
|
Revert "Revert "builder: create the binary in the current directory if -o is not provided""
This reverts commit f2b73fe3ca .
|
2021-03-23 14:49:09 +03:00 |
Delyan Angelov
|
f2b73fe3ca
|
Revert "builder: create the binary in the current directory if -o is not provided"
This reverts commit 9ae64e7fce .
|
2021-03-23 13:27:26 +02:00 |
Alexander Medvednikov
|
9ae64e7fce
|
builder: create the binary in the current directory if -o is not provided
|
2021-03-23 12:31:02 +03:00 |
Alexander Medvednikov
|
b5c286256c
|
tests: fix a compilation error
|
2021-03-23 11:16:13 +03:00 |
Alexander Medvednikov
|
e86c6e024c
|
autofree: fix frees before returns
|
2021-03-23 11:04:59 +03:00 |
zakuro
|
0258482caf
|
cgen: auto eq method for sumtype (#9408)
|
2021-03-22 06:39:07 +01:00 |
yuyi
|
cf6faaf215
|
parser: fix anon_fn with array arguments (#9414)
|
2021-03-22 03:22:29 +01:00 |
zakuro
|
dfd58293ef
|
parser: fix parse error when using `f<Foo<int> >` (#9401)
|
2021-03-21 13:09:43 +02:00 |
yuyi
|
246c09db96
|
checker: fix generics in big_struct (fix #9373) (#9383)
|
2021-03-20 17:29:13 +01:00 |
yuyi
|
ead0dff55a
|
cgen: fix return if_guard expr (#9375)
|
2021-03-20 03:53:47 +01:00 |
spaceface
|
3f9e921c95
|
builtin: add a proper str() method to IError (#9379)
|
2021-03-20 01:55:16 +02:00 |
Delyan Angelov
|
4a12546971
|
cgen,fmt: improve sizeof(), fix `type PPType = &&Type`
|
2021-03-19 22:49:46 +02:00 |
Miccah
|
7222ee476b
|
all: implement array .any and .all (#9347)
|
2021-03-18 15:24:16 +01:00 |
Delyan Angelov
|
f7a8a460f6
|
v.parser: add a test for db46ad5
|
2021-03-18 11:31:17 +02:00 |
Alexander Medvednikov
|
4e62bc0b81
|
autofree: fix free before return
|
2021-03-18 05:41:50 +03:00 |
zakuro
|
6cfc2c217b
|
checker: fix #9330 (#9342)
|
2021-03-17 20:57:14 +02:00 |
crthpl
|
fafb035fb5
|
all: reimplement inline assembly (#8645)
|
2021-03-17 01:43:17 +01:00 |
Alexander Medvednikov
|
149151b1e8
|
cgen: minor vfmt
|
2021-03-17 03:41:52 +03:00 |
Enzo
|
4b6244c9c1
|
gen: fix generic variadic (#9333)
|
2021-03-17 00:18:43 +02:00 |
Delyan Angelov
|
1753445a64
|
builtin: make panics more IDE friendly
|
2021-03-16 20:50:11 +02:00 |
Nick Treleaven
|
446631ceb5
|
checker: fixed array cannot implicitly convert to fooptr (again) (#9302)
|
2021-03-15 15:55:07 +02:00 |
Uwe Krüger
|
9d168895ed
|
checker: check write access to shared elements of `struct` and `array` (#9314)
|
2021-03-15 15:54:06 +02:00 |
yuyi
|
2d2e4610e7
|
cgen: make use of mut_rec in method consistent (#9308)
|
2021-03-15 12:22:52 +02:00 |
yuyi
|
e235022e10
|
cgen: fix error of for_in map_literal (#9310)
|
2021-03-15 12:22:32 +02:00 |
StunxFS
|
92e95f127a
|
checker: correct type check for generic function with ternary if return (#9296)
|
2021-03-14 19:01:32 +02:00 |
Enzo
|
db152868c0
|
fix: fix infering int and float literal in generic fn calls (#9287)
|
2021-03-14 15:00:47 +02:00 |
zakuro
|
8dc0e4d150
|
v.scanner: decode \uXXXX in scanner (#9298)
|
2021-03-14 12:09:17 +02:00 |
spaceface
|
e9797c618a
|
all: implement error interfaces (#9291)
|
2021-03-13 18:13:50 +01:00 |
Alexander Medvednikov
|
2f1810634e
|
checker: do not allow direct initialization of builtin types (s := string{})
|
2021-03-13 18:20:46 +03:00 |
Nick Treleaven
|
c06e58d418
|
gen: fix generating `$if expr || expr` (#9270)
|
2021-03-13 08:45:50 +02:00 |
zakuro
|
00dedaf6c1
|
scanner: replace ascii unicode(\u0020) with hex(\x20) (#9259)
|
2021-03-13 08:02:42 +02:00 |
Delyan Angelov
|
c474106511
|
cgen: fix match expression with complex boolean conditions
|
2021-03-12 19:55:33 +02:00 |
Miccah
|
f26d2f02b7
|
ast, cgen, checker, parser: support method arguments in comptime $for (#9208)
|
2021-03-11 15:04:34 +02:00 |
zakuro
|
791dec7b01
|
v: support `$if prod` (#9228)
|
2021-03-10 19:26:34 +02:00 |
Swastik Baranwal
|
8d84206a8c
|
cgen: fix match for one branch (#9234)
|
2021-03-10 18:44:32 +02:00 |
Delyan Angelov
|
f5ebfefdc9
|
ci: use a smaller fixed size array for the const eval test (fixes failing windows job)
|
2021-03-10 10:40:41 +02:00 |
Delyan Angelov
|
96a9e16e64
|
checker: allow `a := [5*kb]byte{}` where `kb` is a compile time known const too
|
2021-03-09 20:21:36 +02:00 |
Delyan Angelov
|
26cfd0eda9
|
checker: eval `const a = 1024 * 1024` and other simple integer expressions at compile time
|
2021-03-09 20:07:08 +02:00 |
spaceface
|
f1469a8761
|
checker: allow accessing fields common to all sumtype members (#9201)
|
2021-03-09 19:16:18 +02:00 |
yuyi
|
c4b0fdcbaf
|
cgen: fix for_in fixed_array of fixed_array literal (#9206)
|
2021-03-09 16:18:07 +02:00 |
yuyi
|
e67ce5ea7b
|
cgen: fix error of alias interpolation (#9209)
|
2021-03-09 13:25:31 +02:00 |
Vassilis Panagiotopoulos
|
b893373e63
|
cgen: make .alias fields in structs use their proper string format, instead of the default %d (#9197)
|
2021-03-08 23:36:59 +02:00 |
Delyan Angelov
|
d7049ae2da
|
os: deprecate os.exec (returning ?os.Result), in favour of os.execute, which returns os.Result (#8974)
|
2021-03-08 20:52:13 +02:00 |
yuyi
|
f2e570d63c
|
tests: add `for` tests of labelled continue and break (#9189)
|
2021-03-08 12:45:12 +02:00 |
zakuro
|
4c3ce97763
|
parser: fix Enum.value when Enum is an imported symbol (#9046)
|
2021-03-07 16:44:38 +01:00 |
Miccah
|
a1e0f2bc46
|
gen: add argument names to compile-time method struct (#9174)
|
2021-03-07 14:28:43 +01:00 |
Delyan Angelov
|
c15de57f0f
|
tests: simplify the profile_test.v example program to not use `net`
(avoids unrelated openssl dependency)
|
2021-03-07 12:05:06 +02:00 |
Delyan Angelov
|
d0b89c5675
|
tests: rename for_c_multi_vars.v to for_c_multi_vars_test.v
|
2021-03-07 12:05:06 +02:00 |
yuyi
|
82085b0140
|
cgen: fix for_in map of fixed_array (#9133)
|
2021-03-07 11:41:08 +02:00 |
Lukas Neubert
|
7f7f9dca6b
|
parser,fmt: fix regression with non-void arrays in if conditions (#9161)
|
2021-03-06 20:39:38 +02:00 |
Delyan Angelov
|
849cde245c
|
v: support dump(expr) (#9160)
|
2021-03-06 18:09:28 +01:00 |
yuyi
|
cbbfb460a7
|
cgen: fix for_in fixed_array (#9129)
|
2021-03-05 15:35:09 +03:00 |
Gal Pasternak
|
208cabc994
|
checker: fix generic type ignores implemented interface (#9124)
|
2021-03-05 06:59:18 +02:00 |
spaceface
|
7663f826e5
|
cgen: add auto str method generation for interfaces (#9095)
|
2021-03-04 12:41:42 +02:00 |
yuyi
|
5f9af3f594
|
cgen: fix for_in array of fixed_array (fix #9098) (#9099)
|
2021-03-04 12:39:39 +02:00 |
yuyi
|
2870a5a63a
|
vrepl: fix array_filter (#9104)
|
2021-03-04 12:24:14 +02:00 |
yuyi
|
97f9abcf82
|
cgen: fix anon_fn in containers (#9077)
|
2021-03-03 10:12:08 +02:00 |
Uwe Krüger
|
dd475f4e37
|
checker/cgen: enable `IfGuardExpr` for `a[k]` and `<-ch` (#9065)
|
2021-03-03 10:10:38 +02:00 |
yuyi
|
81dbd72412
|
cgen: fix anon_fn in containers (fix #8965) (#9049)
|
2021-03-02 10:26:27 +02:00 |
spaceface
|
2b53992c01
|
checker, cgen: allow implementing an interface with an embedded struct (#9042)
|
2021-03-01 21:47:00 +01:00 |
yuyi
|
65900e55e3
|
cgen: fix if_expr of multi-stmts optional (#9039)
|
2021-03-01 21:39:04 +01:00 |
yuyi
|
f9c8d3d25c
|
cgen: fix return if true { 0 } else { none } (fix #9005) (#9030)
|
2021-03-01 13:56:07 +01:00 |
Anton Zavodchikov
|
506041a15b
|
tmpl: fix doubling templates folder path and enhancements (#9029)
|
2021-03-01 11:15:59 +02:00 |
spaceface
|
15896beace
|
cgen: scope `$for` fields/methods independently (#9017)
|
2021-03-01 01:01:56 +01:00 |
spaceface
|
b712af56fd
|
all: bring back `panic(err.msg)` -> `panic(err)` (#9022)
|
2021-03-01 00:18:14 +01:00 |
Uwe Krüger
|
e937d6249c
|
cgen: fix various issues concerning optionals (#9021)
|
2021-02-28 23:21:03 +01:00 |
spaceface
|
d63b7bc35a
|
all: update repo to use the new error handling syntax (#8950)
|
2021-02-28 23:20:21 +03:00 |
spaceface
|
b9a381f101
|
all: migrate to the new Option (p. 1) (#8924)
|
2021-02-28 22:24:29 +03:00 |
Delyan Angelov
|
e354dcefc2
|
fmt: fix support for `mut static x := 42`
|
2021-02-28 19:40:21 +02:00 |
Delyan Angelov
|
4076e8eaa0
|
tmpl: add a tmpl_all_in_one_folder.vv test; fix for static_vars_in_translated_mode.vv
|
2021-02-28 19:14:19 +02:00 |
Delyan Angelov
|
bdce35fd9c
|
parser: support `static x := 42` in [unsafe] functions too
|
2021-02-28 14:32:46 +02:00 |
Patrick Hintermayer
|
ae01b480c4
|
docs: ROADMAP.md instead of roadmap.txt (#9002)
|
2021-02-27 21:18:47 +03:00 |
Alexander Medvednikov
|
3a2d696fac
|
time: time.wait() => time.sleep()
|
2021-02-27 20:41:06 +03:00 |
Alexander Medvednikov
|
be4a2e17d3
|
cgen: always use tmp vars in return_statement()
|
2021-02-27 20:00:19 +03:00 |
Alexander Medvednikov
|
d39866d4f7
|
cgen: optionals/autofree fixes
|
2021-02-27 17:11:30 +03:00 |
Uwe Krüger
|
f67bff1696
|
all: support `thread` handles and `wait()` for functions returning optionals (#8990)
|
2021-02-27 10:16:55 +02:00 |
zakuro
|
1fd0aceb42
|
parser: imporve generics detection (#8992)
|
2021-02-27 10:07:18 +02:00 |
spaceface
|
51fae95339
|
cgen: move the condition of an iterator to a temp var (#8989)
|
2021-02-26 21:51:01 +01:00 |
Delyan Angelov
|
1a8ff9d7dd
|
v.gen.c: ensure that @continue is escaped in the generated C code
|
2021-02-26 10:22:35 +02:00 |
zakuro
|
89c82ff8e2
|
parser: treat f<mod.Type> as generic call not `<` operator (#8938)
|
2021-02-26 09:05:00 +02:00 |
yuyi
|
c762d150c6
|
cgen: fix anon_fn redefinition (#8961)
|
2021-02-25 12:16:35 +01:00 |
yuyi
|
1dd1be4400
|
cgen: fix if_expr with array.map (fix #8925) (#8937)
|
2021-02-24 15:06:29 +02:00 |
yuyi
|
05a08530ff
|
cgen: implement for_stmt of multi_init_vars or multi_assign_vars (#8917)
|
2021-02-24 14:58:45 +02:00 |
Delyan Angelov
|
ecef42832a
|
tests: make profile_test.v more robust
|
2021-02-23 18:30:53 +02:00 |
yuyi
|
302baaa7b4
|
cgen: fix error of match in fn_call (#8900)
|
2021-02-23 09:53:07 +02:00 |
Uwe Krüger
|
5674d46965
|
table,cgen: fix bug preventing `t := []thread{}` to compile (#8913)
|
2021-02-23 09:37:29 +02:00 |
Uwe Krüger
|
5306b2788c
|
all: extend `wait()` method to array of `thread` handles (#8840)
|
2021-02-22 15:08:52 +02:00 |
spaceface
|
1658c4789f
|
cgen: fix `match`ing interface types (#8889)
|
2021-02-22 14:55:43 +02:00 |
Nick Treleaven
|
15daeaeafa
|
cgen: add fixed array bounds checking for non-literal index (#8832)
|
2021-02-22 14:54:24 +02:00 |
yuyi
|
1a838b1f43
|
checker: fix error of match in map_init (fix #8579) (#8879)
|
2021-02-21 17:09:42 +02:00 |
zakuro
|
ac4791045f
|
time: consolidate the different sleep functions into time.wait(Duration) (#8853)
|
2021-02-21 17:05:03 +02:00 |
Joe Conigliaro
|
0470baafa6
|
cgen: fix duplicate optional generation for struct field
|
2021-02-22 00:00:39 +11:00 |
zakuro
|
7928689ee2
|
parser: set is_public when registering enum type symbols (#8875)
|
2021-02-21 12:13:52 +02:00 |
yuyi
|
e106dc3ad5
|
cgen: fix match_return with complex expr stmts (#8876)
|
2021-02-21 11:47:46 +02:00 |
Nicolas Sauzede
|
f67a4c3ee0
|
checker, cgen: allow | between bitfield enum values, autogenerate a more specific .str method for them too (#8856)
|
2021-02-20 21:51:54 +02:00 |
Delyan Angelov
|
5a333b0fdc
|
gen,parser: allow enums as map keys
|
2021-02-20 19:39:25 +02:00 |
yuyi
|
c704a49283
|
parser: fix error of $tmpl in anon_fn (fix #8847) (#8849)
|
2021-02-20 18:51:08 +02:00 |
Nick Treleaven
|
2be852e461
|
arrays: use for/in instead of unsafe `[direct_array_access]` (#8857)
|
2021-02-20 15:27:36 +02:00 |
kristof de spiegeleer
|
3f3bec45fa
|
examples: add a template example, update the regex examples (#8829)
|
2021-02-19 12:39:15 +02:00 |
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 |
Louis Schmieder
|
0d204603d1
|
gen: fix generic comp time if (#8254)
|
2021-01-21 21:17:44 +02:00 |
yuyi
|
59c3e98c16
|
cgen: fix complex map_fixed_array (#8209)
|
2021-01-21 12:45:37 +01:00 |
yuyi
|
f13ba3a9a8
|
cgen: fix for_in_mut_val for maps (#8221)
|
2021-01-21 12:44:22 +01:00 |
Uwe Krüger
|
3ecbf78707
|
cgen: support explicit array handling even in [direct_array_access] functions (#8241)
|
2021-01-21 12:43:54 +01:00 |
Daniel Däschle
|
c6d6690064
|
checker: fix if expr infix (#8215)
* checker: fix if expr infix
* remove debugger code
* fmt
* remove debug
* add test cases
|
2021-01-21 12:42:24 +01:00 |
Enzo
|
55efd8309a
|
parser: fix parsing interface methods with varargs (#8229)
|
2021-01-20 23:15:02 +02:00 |
Alexander Medvednikov
|
57af8570fe
|
tests: another pointer struct test
|
2021-01-20 09:24:12 +01:00 |
joe-conigliaro
|
97ebecc5f4
|
usecache: get all tests running with -usecache enabled by default (p.1) (#7699)
|
2021-01-20 06:04:59 +01:00 |
yuyi
|
985ef52872
|
cgen: fix child struct's default values not assigned (#8202)
|
2021-01-19 17:10:22 +01:00 |
Ruofan XU
|
103901a5cb
|
example/test: add a binary search tree example and test (#8145)
|
2021-01-19 15:18:38 +02:00 |
Uwe Krüger
|
5067046538
|
parser: support `x = a[k] ?` propagation for arrays and maps (#8199)
|
2021-01-19 14:46:47 +02:00 |
yuyi
|
15cc1cd884
|
cgen: fix high order map assignment (#8198)
|
2021-01-19 14:31:24 +02:00 |
Delyan Angelov
|
85bcfdd636
|
checker: handle `a[i] or { statements expr }` the same as the other or blocks
|
2021-01-19 09:28:34 +02:00 |
Uwe Krüger
|
b74690cbec
|
builtin, checker, cgen: implement `x = a[k] or { ... }` for maps and arrays (#8193)
|
2021-01-19 06:06:57 +01:00 |
yuyi
|
a65b73d3e4
|
cgen: fix for_in_fixed_array (fix #8186) (#8195)
|
2021-01-19 05:50:23 +01:00 |
Uwe Krüger
|
5cc591b2b6
|
all: support generic `chan` (#8188)
|
2021-01-18 18:37:45 +01:00 |
yuyi
|
5ddb70940e
|
cgen: fix map_fixed_arrays str error (fix #8170) (#8178)
|
2021-01-18 10:34:29 +01:00 |
yuyi
|
6c87c25ef1
|
cgen: fix `for _,mut j in arr` for fixed arrays (fix #8163) (#8167)
|
2021-01-18 06:05:38 +01:00 |
yuyi
|
73fd4396c3
|
parser: fix fixed array using const size (fix #8144) (#8161)
|
2021-01-18 06:03:03 +01:00 |
Delyan Angelov
|
75af639721
|
checker: allow ptr++/ptr-- in unsafe{}, for any kind of pointer, except voidptr
|
2021-01-17 18:09:25 +02:00 |
BigBlack
|
28ed4da1ce
|
cgen: fix `array_slice(*a, 0, a.len)` C error, generated for `a[..a.len]`, for a `mut a []int` (#8168)
|
2021-01-17 17:22:23 +02:00 |
Uwe Krüger
|
e4850cd6dd
|
cgen: fix `for` iteration over fixed array literal (#8159)
|
2021-01-17 10:44:15 +01:00 |
yuyi
|
9376c57a51
|
cgen: fix for_in_mut_val (fix #8087) (#8129)
|
2021-01-17 05:32:34 +01:00 |
Delyan Angelov
|
5ae55731b9
|
embed: move to `v.embed_file`, fix CI failing test
|
2021-01-16 20:03:07 +02:00 |
Delyan Angelov
|
5c3ef588c3
|
live: move to vlib/v/live
|
2021-01-16 15:05:01 +02:00 |
Delyan Angelov
|
263fb7d7a8
|
checker: fix `instance.cb_field(mut arg)`
|
2021-01-15 20:28:42 +02:00 |
Uwe Krüger
|
1c6fe83408
|
parser: fix parsing of `go` call expression (#8138)
|
2021-01-15 19:47:49 +02:00 |
Ruofan XU
|
5de287a6e7
|
tests: add test of sumtype-based binary tree (#8121)
|
2021-01-15 15:10:30 +02:00 |
Uwe Krüger
|
8d014d4646
|
sync: allow `go` routine join with return value (#8125)
|
2021-01-15 13:45:26 +01:00 |
BigBlack
|
80008a40e2
|
fix fixed_array slice ommit high_value (#8025)
|
2021-01-15 10:28:20 +01:00 |
yuyi
|
0945efebf1
|
cgen: fix anon_fn_call (#8120)
|
2021-01-15 10:25:30 +01:00 |
Larpon
|
f73500f2fe
|
all: add support for the `x := $embed_file('v.png')` compile time call (#8048)
|
2021-01-14 16:20:11 +02:00 |
yuyi
|
a2efb5319d
|
all: change `[1,2,3]!!` to `[1,2,3]!` (#8101)
|
2021-01-14 03:51:13 +01:00 |
zakuro
|
47536df2d0
|
table: remove nr_dims from Array (#8053)
|
2021-01-13 23:43:19 +01:00 |
Delyan Angelov
|
0d25091afd
|
tests: fix random color mismatches in the CI
|
2021-01-13 21:27:30 +02:00 |
Daniel Däschle
|
2030875c0a
|
gen: fix go call with generic function (#8093)
|
2021-01-13 17:35:50 +02:00 |
Nick Treleaven
|
a1245de25b
|
gen: fix interface method call name that is a C reserved word (#8091)
|
2021-01-13 16:37:47 +02:00 |
Ruofan XU
|
245ed9160a
|
gen: fix `mut arr [3]int` as a fn argument (#8085)
|
2021-01-13 15:52:46 +02:00 |
Nick Treleaven
|
ac85257ea0
|
parser: fix sizeof(mod.Type), fix checking sizeof expression (#8065)
|
2021-01-13 06:13:39 +01:00 |
yuyi
|
dd6febf6fa
|
cgen: fix gen_array_sort() (#8077)
|
2021-01-13 06:12:22 +01:00 |
Swastik Baranwal
|
1e853b0efc
|
cgen: implement argument operator overloading (#8067)
|
2021-01-13 03:31:14 +01:00 |
Daniel Däschle
|
3289dff7ff
|
checker: require explicit return none (#8060)
|
2021-01-12 11:43:55 +01:00 |
Swastik Baranwal
|
82a5300044
|
cgen: allow sort with`<` and `>` op overloading (#8042)
|
2021-01-12 04:38:12 +01:00 |
Uwe Krüger
|
5f95dd54bd
|
builtin: rename `any_*` -> `*_literal` - 2. part (#8032)
|
2021-01-11 22:58:15 +01:00 |
Swastik Baranwal
|
0081e5740d
|
checker: only allow `!=` and `==` for enum (#7985)
|
2021-01-10 12:26:31 +02:00 |
Swastik Baranwal
|
1f5255c2bb
|
cgen: implement `>=` and `<=` (#7991)
|
2021-01-10 12:24:46 +02:00 |
Daniel Däschle
|
a8dd13f086
|
parser: change array decompose syntax (#7965)
|
2021-01-09 22:48:23 +01:00 |
Delyan Angelov
|
561d4f84b3
|
tests: remove tmp files on OK live_test.v run
|
2021-01-09 20:56:02 +02:00 |
Daniel Däschle
|
687b152318
|
gen: fix generation of comptime if T is (#7971)
|
2021-01-08 19:39:58 +02:00 |
Swastik Baranwal
|
9291fb5e0c
|
checker: disallow comparison between enum and int (#7886)
|
2021-01-08 17:41:52 +01:00 |
Daniel Däschle
|
88d18f3303
|
checker: smartcast in for loops (#7942)
|
2021-01-07 21:35:32 +01:00 |
Nick Treleaven
|
cbefe6c32f
|
parser: warn about old use of `typeof` (#7923)
|
2021-01-07 20:32:02 +01:00 |
Daniel Däschle
|
085085a2b9
|
parser: fix sumtype match with array type (#7939)
|
2021-01-07 20:12:35 +01:00 |
Daniel Däschle
|
a8e4d1df40
|
cgen: fix match comparing with ident of type string (#7921)
|
2021-01-06 20:03:50 +02:00 |
Daniel Däschle
|
9025c3528f
|
all: implement comptime if for generic type `$if T is string {` (#7901)
|
2021-01-06 19:58:53 +02:00 |
Nick Treleaven
|
7a6b160d63
|
checker: fix indexing a type alias instance (#7889)
|
2021-01-05 19:17:18 +01:00 |
yuyi
|
10e7045bee
|
cgen: fix array/fixed_array_rune_str (#7881)
|
2021-01-05 18:16:55 +02:00 |
Daniel Däschle
|
5841d5d8e1
|
all: implement basic comptime field selector (#7888)
|
2021-01-05 16:11:43 +02:00 |
zakuro
|
5c1981379e
|
parser: fix a bug when using some types like map in generic methods (#7872)
|
2021-01-05 02:59:36 +01:00 |
spaceface
|
efb80bdffd
|
all: implement iterators in for loops (#7867)
|
2021-01-05 01:06:44 +01:00 |
Ned Palacios
|
82162b8ff8
|
cgen: interface fix + add more interface tests (#7776)
|
2021-01-04 21:54:13 +02:00 |
Uwe Krüger
|
bf904c2f82
|
checker, cgen: allow using literals as `int` and `f64` for sum types (#7864)
|
2021-01-04 20:48:13 +02:00 |
Daniel Däschle
|
164d7bf5fb
|
parser: struct updating syntax with `Abc{...oldabc newfield: val}` (#7865)
|
2021-01-04 20:19:03 +02:00 |
yuyi
|
46d311dcc4
|
generic: fix return multi array generic (fix #7727 #7753) (#7855)
|
2021-01-04 18:40:53 +02:00 |
Nick Treleaven
|
b9c6011602
|
parser: support casting to a pointer to array (#7861)
|
2021-01-04 18:22:04 +02:00 |
Daniel Däschle
|
43adbf4b66
|
cgen: fix filter in map (#7844)
|
2021-01-04 01:04:53 +01:00 |
Enzo
|
9332f7cac2
|
checker: allow `map` method name (#7834)
|
2021-01-03 16:57:29 +01:00 |
Swastik Baranwal
|
9033099676
|
cgen: implement overriding of `!=` and `==` (#7837)
|
2021-01-03 16:19:02 +01:00 |
yuyi
|
60b3658e6f
|
gen: fix str_gen_test.v (#7826)
|
2021-01-03 15:40:47 +01:00 |
zakuro
|
6bd35505a2
|
parser: fix error when using imported types in short fn signature (#7795)
|
2021-01-02 15:09:54 +02:00 |
Ned Palacios
|
40b8d9ca3d
|
checker: fix infer_fn_type for generic methods (#7767)
|
2021-01-01 17:33:23 +01:00 |
Swastik Baranwal
|
24b18f05c4
|
cgen: implement > and < for structs (#7774)
|
2021-01-01 14:54:32 +01:00 |
Nick Treleaven
|
d15d13674c
|
parser: parse non-identifier expressions for sizeof too (#7781)
|
2021-01-01 15:38:11 +02:00 |
clubby789
|
9ac237d9c0
|
match: implement exhaustive match for bool values (#7761)
|
2021-01-01 13:28:23 +02:00 |
yuyi
|
c3dafad7ef
|
generics: implement method generics (fix #7638) (#7732)
|
2020-12-31 18:00:22 +01:00 |
Uwe Krüger
|
74ea5ac99f
|
checker: check reference return to be really reference (#7739)
|
2020-12-31 12:42:22 +01:00 |
Joe Conigliaro
|
b2bd2c9337
|
cgen: make multi return decl order consistant & use typedefs. closes #7728
|
2020-12-31 21:55:21 +11:00 |
Joe Conigliaro
|
3e655d6bf6
|
cgen: fix multi return auto str methods. closes #7726
|
2020-12-31 10:21:02 +11:00 |
Daniel Däschle
|
9a31744255
|
cgen: fix embed generic field access & method call (#7725)
|
2020-12-30 23:49:02 +01:00 |
Daniel Däschle
|
b4c5fa8ca0
|
cgen: fix embed field access from reference (#7724)
|
2020-12-30 21:50:58 +01:00 |
Daniel Däschle
|
e4edc5925a
|
parser: embed always public and mutable (#7722)
|
2020-12-30 21:17:48 +02:00 |
Daniel Däschle
|
b8af81240a
|
cgen: fix struct embedding method when receiver is ptr (#7710)
|
2020-12-30 20:44:01 +02:00 |
Alexander Medvednikov
|
ad78875a8c
|
parser: allow `const x = 0` consts outside of const blocks
|
2020-12-30 02:15:44 +01:00 |
Alexander Medvednikov
|
e26a690975
|
0.2.1
|
2020-12-29 21:24:33 +01:00 |
joe-conigliaro
|
02965e753e
|
all: re-implement variadics using arrays & implement array decomposition to varg (#7689)
|
2020-12-29 16:14:08 +01:00 |
yuyi
|
32091dd90e
|
cgen: fix struct equality (#7649)
|
2020-12-28 18:22:47 +02:00 |
Delyan Angelov
|
3f3ae67b55
|
Revert "cgen: fix struct_eq (#7639)"
This reverts commit 164dd3000b .
|
2020-12-28 13:16:00 +02:00 |
yuyi
|
164dd3000b
|
cgen: fix struct_eq (#7639)
|
2020-12-28 12:25:22 +02:00 |
Delyan Angelov
|
df61cf246b
|
cgen: fix `x.interface_field = value_implementing_interface` (closes #7620)
|
2020-12-27 19:12:39 +02:00 |
zakuro
|
21805ea2a5
|
all: make eprint[ln] behave same as print[ln] (#7595)
|
2020-12-27 11:22:16 +01:00 |
Daniel Däschle
|
7507403118
|
cgen: fix zero init bug of embedded structs (#7567)
|
2020-12-25 22:46:42 +02:00 |
Delyan Angelov
|
c6b0ce2a07
|
ci: disable socket error assertion in profile_test.v
|
2020-12-25 16:10:18 +02:00 |
Delyan Angelov
|
a631078d8a
|
tests: add vlib/v/tests/profile/profile_test.v regression test
|
2020-12-25 14:30:22 +02:00 |
Delyan Angelov
|
36dcace0a7
|
cgen: fix compiling call expressions with no varargs (tcc bug)
|
2020-12-23 21:15:00 +02:00 |
Daniel Däschle
|
b27f5c378c
|
all: reimplement struct embedding with methods (#7506)
|
2020-12-23 19:12:49 +01:00 |
Alexander Medvednikov
|
e4f94b6ad5
|
V 0.2
|
2020-12-22 20:48:45 +01:00 |
Delyan Angelov
|
5f5c53348b
|
ci: fix vlib/v/tests/project_with_c_code_2/modc/wrapper.v
|
2020-12-20 18:33:31 +02:00 |
Alexander Medvednikov
|
50a6976b5e
|
all: minor array fixes
|
2020-12-20 16:08:56 +01:00 |
Alexander Medvednikov
|
6bf21c300a
|
checker: do not allow arr1=arr2 without cloning
|
2020-12-20 15:33:55 +01:00 |
Alexander Medvednikov
|
60c936a688
|
tests: remove map reference test
|
2020-12-20 07:59:39 +01:00 |
Ned Palacios
|
3a86f27b9f
|
cgen: fix optional struct const field access (#7405)
|
2020-12-19 09:43:50 +01:00 |
yuyi
|
ff2cfd4f38
|
checker: fix fn_array types check (#7376)
|
2020-12-19 01:10:11 +02:00 |
Nick Treleaven
|
042449cd3d
|
cgen: use voidptr key methods: map_get_1, map_set_1, map_get_and_set_1 (#7390)
|
2020-12-19 01:05:16 +02:00 |
yuyi
|
b10f692c43
|
gen: fix errors of string interpolation of fn values in struct/array/map (#7367)
|
2020-12-17 11:16:27 +02:00 |
Daniel Däschle
|
7022456c9d
|
Alias string compare (#7364)
|
2020-12-16 21:40:56 +02:00 |
yuyi
|
525b521b4a
|
cgen: impliment gen_str_for_fn_type() (#7353)
|
2020-12-16 11:07:58 +02:00 |
Ned Palacios
|
604eab7742
|
cgen: fix interface struct field initialization (#7340)
|
2020-12-16 11:03:28 +02:00 |
yuyi
|
e40e1500a8
|
cgen: fix map['xxx']() error (#7342)
|
2020-12-15 16:07:24 +01:00 |
yuyi
|
8ab59c5f0f
|
parser: implement a direct call to an array of functions (fix #6908) (#7322)
|
2020-12-15 04:24:57 +01:00 |
Swastik Baranwal
|
a3c3fd4d20
|
cgen: fix generation of array names in generic structs (#7324)
|
2020-12-15 02:52:20 +11:00 |
Enzo
|
78fb84c4dd
|
gen: fix comparing signed int to u32/u64 (#7312)
|
2020-12-14 12:01:11 +02:00 |
Nick Treleaven
|
d785e22a6e
|
checker: disallow assigning number to pointer (#7267)
|
2020-12-12 10:42:07 +01:00 |
yuyi
|
2a731e1c8e
|
scanner: fix interpolation with more embedded string args (#7258)
|
2020-12-11 19:15:59 +02:00 |
Andréas Livet
|
18ec24dd53
|
gen: fix mutable map generation (#7251)
|
2020-12-11 04:48:55 +01:00 |
Enzo
|
04346e7ba5
|
checker: allow void,char,byteptr to be mut args (#7239)
|
2020-12-11 04:47:10 +01:00 |
spaceface777
|
ca2c082a5e
|
checker: initial support for evaluating expressions at compile time (#7248)
|
2020-12-11 04:46:06 +01:00 |
yuyi
|
ca39a9a1a9
|
test: add more embed string interpolation tests (#7229)
|
2020-12-10 11:20:42 +02:00 |
Daniel Däschle
|
a38fe4fca9
|
checker: fix smartcast inside smartcast (#7215)
|
2020-12-10 00:59:39 +01:00 |
yuyi
|
5fa1e403ec
|
scanner: fix interpolation with string args (#7214)
|
2020-12-09 19:58:27 +01:00 |
Nick Treleaven
|
cf755d40b7
|
checker: allow ++, -- on byteptr, charptr (#7218)
|
2020-12-09 19:58:02 +01:00 |
Delyan Angelov
|
8caf3829d7
|
checker: fix interface checking of array arguments; closes #2377
|
2020-12-09 18:51:37 +02:00 |
Delyan Angelov
|
3b94a2b77a
|
cgen: fix interface _name_table generation; closes issue #73
|
2020-12-09 17:07:11 +02:00 |
joe-conigliaro
|
805da2325f
|
cgen: defer was broken in presence of anon fn. fixed #7171
|
2020-12-08 14:21:19 +11:00 |
joe-conigliaro
|
78a6795319
|
all: change the way import symbols work & support consts (#7182)
|
2020-12-07 19:13:03 +02:00 |
Alexander Medvednikov
|
8eff8b0eff
|
autofree: fix `for` args
|
2020-12-06 08:38:21 +01:00 |
joe-conigliaro
|
d7c057840a
|
parser: autofree - reset p.branch_parent_pos to previous pos on return
|
2020-12-06 17:00:44 +11:00 |
joe-conigliaro
|
a05408b49a
|
all: make type system use source name & cleanup storing name in fields
|
2020-12-06 14:55:08 +11:00 |
Delyan Angelov
|
946a1418fe
|
Revert "autofree: handle tmp vars in for loops"
This reverts commit 1d6c604664 .
|
2020-12-05 21:52:50 +02:00 |
Alexander Medvednikov
|
1d6c604664
|
autofree: handle tmp vars in for loops
|
2020-12-05 20:11:31 +01:00 |
Delyan Angelov
|
6e76d5d1db
|
cgen: fix double escaping \n in @VMOD_FILE expansion
|
2020-12-05 20:13:36 +02:00 |
joe-conigliaro
|
83f651c29a
|
cgen: autofree - know where to stop freeing parent scops on continue/break
|
2020-12-06 02:36:27 +11:00 |
joe-conigliaro
|
3172f324d1
|
checker: infer array_init type from call with in return of or block. closes #7135
|
2020-12-06 01:26:28 +11:00 |
Delyan Angelov
|
0dfcacd26b
|
cgen: fix `fn f(mut a []int) { a << [1,2] }`
|
2020-12-05 10:12:17 +02:00 |
Delyan Angelov
|
b18915df62
|
tests: cleanup long running repl tests (replaced by faster ordinary tests in vlib/v/tests/)
|
2020-12-05 08:52:08 +02:00 |
Alexander Medvednikov
|
d1281ac6c1
|
autofree: handle` break`
|
2020-12-05 05:06:52 +01:00 |
Alexander Medvednikov
|
5180013aef
|
autofree: fix array re-assignment with struct fields
|
2020-12-04 23:30:30 +01:00 |
spaceface777
|
76ed8e3750
|
checker: don't disallow method call chains (#7128)
|
2020-12-04 21:27:38 +01:00 |
spaceface777
|
52fb7033c3
|
gen: fix evaluating the receiver of array methods (.map(), .filter(), etc) more than once (#7130)
|
2020-12-04 20:29:34 +02:00 |
Delyan Angelov
|
52ccdd747f
|
cgen: allow for `const ( x = opt() ? )`
|
2020-12-04 13:11:12 +02:00 |
Alexander Medvednikov
|
b64945a6c0
|
autofree: lots of fixes in `return_statement()`
|
2020-12-04 10:10:40 +01:00 |
joe-conigliaro
|
b578e60dd5
|
tests: add test for fix #cf7b45b
|
2020-12-04 15:43:28 +11:00 |
yuyi
|
06eaded6ea
|
string: change `tos_lit` to `_SLIT` (#7079)
|
2020-12-03 16:02:48 +01:00 |
Swastik Baranwal
|
c5a7c51dfd
|
parser: add a check for known vars in or block (#7094)
|
2020-12-03 04:46:04 +01:00 |
Uwe Krüger
|
c1b25dd61d
|
cgen: fix map value op-assign modification (#7101)
|
2020-12-03 00:40:11 +01:00 |
Alexander Medvednikov
|
0ff541375d
|
autofree: fix a bug with $if and add a test
|
2020-12-01 18:58:16 +01:00 |
yuyi
|
d3deaa1f59
|
cgen: fix typeof variadic type (#7063)
|
2020-12-01 16:11:37 +01:00 |
Daniel Däschle
|
5b6eb7b2c9
|
cgen: simplify .str() generation (#7038)
|
2020-12-01 16:09:03 +01:00 |
yuyi
|
6a1e0322bd
|
gen: fix interpolation variadic (#7059)
|
2020-12-01 12:40:38 +02:00 |
joe-conigliaro
|
34e124d5f7
|
cgen: auto cast sum type in array init. fixes #6907
|
2020-12-01 20:03:45 +11:00 |
Delyan Angelov
|
fe0ded9a91
|
tests: add a regression test for the inter module generics inference
|
2020-12-01 08:07:07 +02:00 |
Daniel Däschle
|
879d238887
|
cgen: initial option auto str support (#7004)
|
2020-12-01 04:00:23 +01:00 |
Delyan Angelov
|
b11d285680
|
v: support multiple paths in VMODULES env variable (#7048)
|
2020-11-30 18:31:37 +01:00 |