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

12200 Commits

Author SHA1 Message Date
Turiiya
2ca3046bf8
checker: disallow assigning mutable reference to immutable ParExpr (#18420) 2023-06-13 08:52:37 +03:00
Felipe Pena
ada702ec66
cgen: fix opt ptr argument passing with and without heap usage (#18423) 2023-06-13 08:51:42 +03:00
Alexander Medvednikov
24c09881f7 Revert "fmt: fix parens around reference module prefix expressions (#18416)"
This reverts commit 7f178d4662.
2023-06-13 08:50:50 +03:00
yuyi
126fbe8e33
scanner: fix indent error for line comment generated by vdoc (#18422) 2023-06-13 08:50:02 +03:00
Mark aka walkingdevel
f634f7b01f
mysql: connection fixes (#18428) 2023-06-13 08:49:41 +03:00
Turiiya
7f178d4662
fmt: fix parens around reference module prefix expressions (#18416) 2023-06-12 13:35:44 +03:00
phoebe
37386697a3
math.big: fix internal subtract_align_last_byte_in_place overflow (#18413) 2023-06-12 13:33:53 +03:00
Felipe Pena
54eabcb242
cgen: make the default values for all enums, be their first listed entry, even if it was enum MyEnum { first = 999 second}, not just the defaul 0 (#18388) 2023-06-11 21:57:36 +03:00
Swastik Baranwal
fc6726b2b1
checker: no notice for interface field initialized struct with ...other syntax (#18405) 2023-06-11 20:03:20 +03:00
Felipe Pena
2e9c469158
checker: fix external enum value resolution, i.e. enum { enum_value = C.VALUE } (#18401) 2023-06-11 19:08:45 +03:00
Delyan Angelov
275b8a1294
cgen: fix stringification of usize struct fields (before, they were treated as 32 bit *signed* numbers) (#18410) 2023-06-11 17:31:18 +03:00
Felipe Pena
83e30a8104
checker, cgen: fix comptime method and field name checking (#18402) 2023-06-11 03:59:28 +03:00
Felipe Pena
af8df871d1
cgen: fix option ptr assignment (#18394) 2023-06-11 00:53:35 +03:00
yuyi
54cc59d3a5
arrays: minor comments corrections (#18404) 2023-06-11 00:52:23 +03:00
Felipe Pena
e27786235a
cgen: fix selector option casting (#18395) 2023-06-10 18:02:54 +03:00
Turiiya
c0843af4f7
fmt: refactor, fix typos (#18392) 2023-06-10 11:32:41 +03:00
Felipe Pena
3e5f2541f2
parser: fix comments parsing on map init (#18389) 2023-06-10 02:28:56 +03:00
yuyi
42db392e76
checker: fix embedded structure initialization warnings (#18385) 2023-06-09 17:44:15 +03:00
yuyi
dd1d5bca1b
ast: clean up ast.StructInit (#18387) 2023-06-09 17:43:21 +03:00
Felipe Pena
7a25c03aa7
cgen: simplify fixed arr return (#18380) 2023-06-09 14:34:32 +03:00
penguindark
1de6523da5
regex: bugfix for #18363, [^\s]+ act different from \S+ (#18371) 2023-06-09 14:34:06 +03:00
yuyi
5300441c09
cgen: fix alias of map clone() (fix #18384) (#18386) 2023-06-09 12:58:38 +03:00
yuyi
01b20485c3
parser: fix generic function variable (#18373) 2023-06-08 11:42:29 +03:00
Turiiya
bcd5c91bdc
fmt: fix blank line inserts between enum attribute comments (#18361) 2023-06-08 01:54:38 +03:00
l-m
6208b31d9f
picoev: non breaking refactor (#18364) 2023-06-08 01:54:15 +03:00
Mark aka walkingdevel
0810e84098
coroutines: add macOS amd64 support, panic on wget errors (#18360) 2023-06-07 02:00:49 +03:00
Turiiya
c06fd556e8
checker: add mutability check for comptime assignments (#18354) 2023-06-06 19:58:30 +03:00
Felipe Pena
125921db66
cgen: fix nested fixed array instantiation (#18357) 2023-06-06 19:57:40 +03:00
sandbankdisperser
e97aff8742
time: add more detailed error descriptions, add custom format parsing with time.parse_format (#18257) 2023-06-06 18:43:10 +03:00
Delyan Angelov
0bbbf1e801
v.util: make util.launch_tool/3 more robust, by recompiling V tools always in a known current working folder (vroot) (#18358) 2023-06-06 18:01:58 +03:00
yuyi
22c0cdc192
checker: fix infering generic array type in nested call (fix #18317) (#18350) 2023-06-06 17:18:14 +03:00
yuyi
f45fc45407
ast, checker, fmt: fix compiler internal formatting failed (#18356) 2023-06-06 16:18:28 +03:00
kbkpbot
632c466aa0
sync: add Mutex.destroy and RwMutex.destroy methods (#18351) 2023-06-06 14:45:12 +03:00
Delyan Angelov
c1e302a38d
Revert "parser: add error for typeof(T), suggesting typeof[T]() instead"
This reverts commit 692624b47c.
2023-06-06 12:03:55 +03:00
Delyan Angelov
692624b47c
parser: add error for typeof(T), suggesting typeof[T]() instead 2023-06-06 11:27:17 +03:00
Felipe Pena
d3c679bdcb
cgen: fix fixed array of map (#18347) 2023-06-05 16:46:48 +03:00
yuyi
254ed1766c
ast: minor cleanup in generic_insts_to_concrete() (#18349) 2023-06-05 16:46:23 +03:00
Felipe Pena
169627722a
cgen: circular reference limit to auto_str for interface (#18340) 2023-06-05 16:45:44 +03:00
Swastik Baranwal
48c256bf3b
checker: allow casted enum val and const as fixed array size (#18321) 2023-06-05 16:44:55 +03:00
Felipe Pena
5440657364
fmt: fix alias type stripped comments (#18346) 2023-06-05 01:53:17 +02:00
yuyi
325f64bc60
ast: fix for in iterator with generic structs (#18344) 2023-06-04 18:15:15 +02:00
Ulises Jeremias Cornejo Fandos
02ea6028af
vlib: improvements to the context module (#18318) 2023-06-04 18:12:52 +02:00
yuyi
0e106c9062
checker: fix generic fn infering map argument (#18341) 2023-06-04 18:10:41 +02:00
Felipe Pena
8d2a0ffe37
cgen: fix option handling with auto heap variable (#18336) 2023-06-04 18:10:22 +02:00
Alexander Medvednikov
6fe6fe887d coroutines: $if is_coroutine? { 2023-06-03 19:05:50 +02:00
Felipe Pena
4e21b2ab4e
parser: detect wrong usage of Option as concrete type (#18334) 2023-06-03 13:24:25 +02:00
kbkpbot
0fc33c6fa3
datatypes: add Bloom filter (#18327) 2023-06-02 10:56:22 +03:00
Lenni0451
9764342dbe
vweb: add support for host specific static files (#18322) 2023-06-02 10:55:59 +03:00
Felipe Pena
a8ea1f9d50
cgen, checker, parser: fix fixed array with channel (#18315) 2023-06-02 10:55:08 +03:00
yuyi
5e12d3483c
checker: fix generic fn with nested generic fn call (fix #18285) (#18314) 2023-06-02 10:52:29 +03:00
yuyi
4dc338863c
checker: fix json decode with generic array of struct (fix #18300) (#18308) 2023-05-30 14:25:33 +02:00
yuyi
ac6289301c
ast, cgen: fix generic struct with inconsistent generic types (fix #18254) (#18301) 2023-05-30 14:24:54 +02:00
Turiiya
af05cfcbbc
toml, semver: minor optimization of conditions (#18299) 2023-05-30 14:24:27 +02:00
Felipe Pena
0b71cef78a
cgen: fix generic comptimeselector array resolution (#18296) 2023-05-30 14:23:37 +02:00
Felipe Pena
f430c0b67a
parser: fix for select parsing (#18306) 2023-05-30 14:22:47 +02:00
Casper Kuethe
4174048f96
vweb: add host option to controller (#18303) 2023-05-30 14:22:23 +02:00
Felipe Pena
05b832a317
cgen: fix none initialization to struct member (#18295) 2023-05-29 15:35:41 +03:00
Delyan Angelov
d47c722c1f
builtin: fix byte deprecation warnings for v test-all (the -freestanding compilation) 2023-05-29 13:20:29 +03:00
Lenni0451
2904c399b5
vweb: host attribute (#18288) 2023-05-29 02:11:10 +02:00
Alexander Medvednikov
f22ba836fd prealloc: use u8 instead of byte 2023-05-29 01:42:52 +02:00
Alexander Medvednikov
3f62487409 examples: add a simple coroutine example 2023-05-29 01:35:38 +02:00
Turiiya
1be539d20f
checker: add byte deprecation warning (#18287) 2023-05-28 23:30:32 +02:00
Alexander Medvednikov
3ac63cce86 fmt: fix a shared test 2023-05-28 18:23:07 +03:00
Alexander Medvednikov
f8422738bb vfmt: no longer replace go with spawn 2023-05-28 16:03:39 +02:00
Alexander Medvednikov
786865d349 coroutines: init() that runs automatically 2023-05-28 15:54:57 +02:00
Turiiya
80d404c220
checker: replace as cast with a safer type check is (smart cast) (#18286) 2023-05-28 05:41:46 +02:00
Alexander Medvednikov
9db10c8f61 all: coroutines (part 2) 2023-05-28 05:30:23 +02:00
Alexander Medvednikov
2162230086 cgen: move spawn and go logic to a separate file 2023-05-28 02:52:38 +02:00
Alexander Medvednikov
50247d5093 gen.golang: handle spawn/go 2023-05-28 02:44:47 +02:00
Alexander Medvednikov
45f16a2640 all: coroutines (part 1) 2023-05-27 23:33:46 +02:00
Felipe Pena
5812579d53
checker: remove check for option being initialized (#18280) 2023-05-27 20:43:54 +02:00
Felipe Pena
16ef1d95fb
cgen: fix fixed array ret with anon fn (#18279) 2023-05-27 20:42:31 +02:00
Felipe Pena
6bfa6ec93c
cgen: fix comptime interpolation (#18281) 2023-05-27 20:41:40 +02:00
xiusin
43bc85d3bb
http: add workers to improve the server's concurrent capacity. (#18271) 2023-05-27 01:57:32 +03:00
Turiiya
f9efbdff10
semver: refactor, simplify, fix typo (#18272) 2023-05-27 01:57:02 +03:00
Turiiya
3e08487198
checker: disallow multiple return values in const declarations (#18273) 2023-05-27 01:55:14 +03:00
yuyi
6db62e43d3
parser: fix array method using it in defer (fix #18246) (#18267) 2023-05-26 02:29:52 +02:00
Casper Kuethe
79657a1a2f
vweb: update middleware docs (#18270) 2023-05-26 02:26:00 +02:00
Mark aka walkingdevel
b698a0f459
mysql: add the ability to commit transactions, some code improvements (#18268) 2023-05-26 02:16:02 +02:00
Felipe Pena
8a856cc36d
checker: adjust fix for struct anon assigning to typed struct (#18264) 2023-05-25 20:40:20 +03:00
Mark aka walkingdevel
c2fa45c24d
cgen, orm: fix typo, and wrap the fkey attribute into quotes in errors (#18266) 2023-05-25 17:27:25 +02:00
yuyi
caee3935a5
os: fix truncate() on windows (#18262) 2023-05-25 14:37:53 +03:00
Felipe Pena
bc88183318
cgen: fix struct fn ptr call (#18260) 2023-05-25 10:52:05 +03:00
Felipe Pena
dc16e50d55
regex: fix find() when using anchors (start / end) (#18259) 2023-05-25 10:51:41 +03:00
Felipe Pena
fc6a34355d
parser: fix missing sync auto import when only declaring shared type and not using it (#18255) 2023-05-25 02:54:04 +02:00
Felipe Pena
9d56432e55
checker: add missing check for mismatch anon struct to typed struct (#18250) 2023-05-25 02:53:14 +02:00
Felipe Pena
64a4a3316a
checker, cgen: fix fixed array return on assigning, arg pass and dumping (#18216) 2023-05-25 02:52:45 +02:00
yuyi
f1c647cbbe
parser: make most of parser methods private (#18249) 2023-05-25 02:51:59 +02:00
yuyi
190f5c69ea
os: fix open_file() on windows (fix #18245) (#18253) 2023-05-25 02:50:52 +02:00
Mark aka walkingdevel
351b2e0e42
mysql: refactor, comments, simplify (#18258) 2023-05-25 02:50:15 +02:00
Alexander Medvednikov
c45c36ccce orm: improve an fkey error a bit 2023-05-24 18:30:44 +02:00
Felipe Pena
e8dbd2c0c7
parser: fix enum attr with default value (#18248) 2023-05-24 17:25:27 +03:00
yuyi
099d4fc06f
parser: clean up in parser.v (#18247) 2023-05-24 06:51:15 +03:00
Turiiya
e8046439f0
cgen: include float kind in struct field type defaults (#18228) 2023-05-24 06:50:45 +03:00
Felipe Pena
598673314b
json.decode: add check for shared variable (#18237) 2023-05-24 06:47:09 +03:00
yuyi
6698fe4f60
checker, cgen: fix contains() with array of interfaces (#18241) 2023-05-23 14:46:14 +02:00
Felipe Pena
37618c9465
cgen, checker: fix comptime assigning to sumtype or indexexpr (#18240) 2023-05-23 14:42:53 +02:00
yuyi
e2f18fc9cc
checker, cgen: fix array of interfaces index() (#18232) 2023-05-22 16:31:22 +03:00
Alexander Medvednikov
a33ffcedfb parser: remove attributes from anonymous structs (fixes #18233) 2023-05-22 14:13:34 +02:00
Delyan Angelov
c382f4d310
rand: add missing rand.u16(), update doc comments, add test 2023-05-22 13:20:52 +03:00
Turiiya
1be798be49
net.html: remove unnecessary comment (#18230) 2023-05-22 07:46:26 +03:00
kbkpbot
a10690b934
net.conv: use a pure v implementation instead of C.hton etc (#18226) 2023-05-22 06:59:33 +03:00
Mark aka walkingdevel
ce0591da8d
mysql: allocate memory for each string and blob dynamically depending on its value length (#18214) 2023-05-21 15:24:43 +02:00
sandbankdisperser
f833188234
vweb: return 404 on file not found (#18219) 2023-05-21 15:23:43 +02:00
xiusin
e4c769d072
net.http: add remote-addr header (#18208) 2023-05-21 15:23:24 +02:00
Felipe Pena
38a155ac81
cgen: make comptime call works with or-block (#18215) 2023-05-21 15:22:40 +02:00
Swastik Baranwal
4b22ea7803
parser: disallow all array usage outside of builtin (#18222) 2023-05-21 15:21:57 +02:00
Ikko Eltociear Ashimine
abcbba1e81
builtin: fix typo in string.js.v (#18213) 2023-05-21 02:46:11 +03:00
Casper Kuethe
d0214a254e
vweb: vweb.csrf re-implementation (#18220) 2023-05-21 01:56:17 +03:00
yuyi
adcf47dcce
checker: appending to an array of sumtype (#18201) 2023-05-20 02:25:26 +03:00
Mark aka walkingdevel
1e9dcb9b9e
checker: refactor, comments, simplify. (#18203) 2023-05-20 02:24:30 +03:00
yuyi
94217571cd
parser, checker, cgen: fix swapping arrays (#18204) 2023-05-20 02:23:50 +03:00
yuyi
332235548e
checker: clean up in array_init() (#18205) 2023-05-20 02:21:52 +03:00
Petr Makhnev
9d0a1d8496
builtin: speed up string methods with vmemcpy instead of for loop for copying data (#18211) 2023-05-19 21:24:23 +03:00
Turiiya
aded6088e9
vet: allow vetting files with global variables (#18195) 2023-05-19 16:28:01 +03:00
Petr Makhnev
a39c26507c
builtin: speed up string concatenation and repeat() method with vmemcpy instead of for loop for copying data (#18206)
These changes almost do not speed up the program with the `-prod` flag,
since modern С compilers can do such optimization on their own, but in
normal mode, the performance gain is from 1.6 (concatenation) to 1.8 (repeat) times.

Concatenation:
Old (`for` loop):
Time (mean):          3.699 s +- 0.071 s  [User: 3.629 s, System: 0.069 s]
Range (min ... max):  3.548 s ... 3.741 s  10 runs

New (vmemcpy):
Time (mean):          2.305 s +- 0.065 s  [User: 2.263 s, System: 0.041 s]
Range (min ... max):  2.172 s ... 2.355 s  10 runs

`vmemcpy version` ran 1.60 +- 0.05 times faster than 'for loop version'
2023-05-19 16:18:23 +03:00
Alexander Medvednikov
cc47c78f39 net.mbedtls: make compile with -prod 2023-05-18 11:31:53 +02:00
Felipe Pena
9d9785cc05
all: allow fixed array returns (#17931) 2023-05-18 11:30:49 +02:00
kbkpbot
c8d2098a14
net.websocket: make thread safe/concurrent (#18179) 2023-05-18 11:27:00 +02:00
Felipe Pena
1e88b1ab3e
cgen: fix missing panic message for 'option not set' on debug (#18168) 2023-05-18 11:25:19 +02:00
Felipe Pena
273f46f810
checker: fix generic argument resolution when mixed order on next call (#18192) 2023-05-18 11:24:06 +02:00
yuyi
2bb24ee739
fmt: implement comments inside sumtype declaration (#18189) 2023-05-18 11:22:26 +02:00
yuyi
ddb8e09fec
parser, checker: fix generic fn variable assignment in generic fn (#18180) 2023-05-17 03:06:33 +03:00
yuyi
35f2a0fb66
fmt: fix formating of fn decl with end comments (#18181) 2023-05-17 03:05:59 +03:00
Swastik Baranwal
ee7d34e650
checker: allow i32 in enum MyEnum as i32 { (#18172) 2023-05-16 08:09:13 +03:00
Felipe Pena
a7f84e79f8
cgen: fix option unwrap from ovoid function (#18173) 2023-05-14 14:38:14 +03:00
Felipe Pena
d4072bfc22
cgen: fix option with multi return assign (#18174) 2023-05-14 13:50:04 +03:00
yuyi
814d6823b4
checker: check generic undefined operation (fix #18162) (#18166) 2023-05-13 06:54:08 +03:00
Felipe Pena
47761a42e9
all: attr for enum fields (+ json encode/decode) (#18163) 2023-05-13 01:08:30 +02:00
yuyi
8482bc4626
ast, parser: fix generic fntype to concrete types with later generic fn definition (fix #18156) (#18157) 2023-05-12 15:52:41 +03:00
yuyi
2351856fc3
checker: clean up in struct_init() (#18154) 2023-05-12 09:34:55 +03:00
Turiiya
67e3061ea1
net: fix typos (#18164) 2023-05-12 09:31:27 +03:00
acimnotes
790afbce94
time: add new method year_day and the tests for it (#18107) 2023-05-12 09:27:20 +03:00
Swastik Baranwal
447b45ca8c
checker: disallow non-ptr elem in init ptr array (#18161) 2023-05-12 08:56:22 +03:00
Swastik Baranwal
d8cf65df1a
checker: only allow &u8 with byteptr and itself (#18146) 2023-05-11 18:28:49 +10:00
yuyi
a87f2d9d11
checker: fix generic struct init with generic struct items (#18152) 2023-05-10 19:06:34 +03:00
yuyi
492a93ecd9
vweb: make controllers of struct Controller public (#18153) 2023-05-10 18:31:43 +03:00
Felipe Pena
d62c4c9fc1
checker: add missing check for global var on assignment to shared var (#18125) 2023-05-10 18:30:57 +03:00
Mark aka walkingdevel
61a5fbea35
autofree: fix cross var assigns with strings (#18147) 2023-05-10 00:06:31 +02:00
Felipe Pena
0be74aa613
cgen: fix option ptr default struct initialization (#18141) 2023-05-09 21:40:51 +03:00
yuyi
9aa5e3fe4b
cgen: clean up in index_of_map() (#18145) 2023-05-09 21:12:29 +03:00
yuyi
89f3288fb0
cgen: fix nested map of fn call (#18142) 2023-05-09 16:19:25 +03:00
Turiiya
e2e6c9660c
net.html: add &Tag get_tag methods to find first occurrence (#18139) 2023-05-09 00:22:52 +03:00
Felipe Pena
1e56a69c02
checker, parser: save shared/atomic specifier for ast.Param (#18124) 2023-05-09 00:22:22 +03:00
Mark aka walkingdevel
6ac09e605e
orm: allow structs without the id field, more flexible primary keys (#18140) 2023-05-09 00:21:42 +03:00
yuyi
72b2f22057
cgen: fix generics array of threads with multiple types (#18137) 2023-05-08 13:24:28 +03:00
yuyi
87623b367c
parser: clean up parse_ident() (#18138) 2023-05-08 13:19:03 +03:00
l-m
3a06b55388
wasm: add basic debuginfo through name section (#18130) 2023-05-08 09:31:36 +03:00
Swastik Baranwal
5bdf94a7bc
checker: disallow mut for blank idents (#18114) 2023-05-08 01:26:36 +02:00
yuyi
a0a8b7e47a
ast, parser, checker, cgen, fmt: implement generic fn params (fix #14937) (#18126) 2023-05-07 19:53:56 +02:00
Turiiya
39ec1134fa
net.html: fix parsing of nested quoted strings in code tags (#18123) 2023-05-07 03:55:02 +03:00
Felipe Pena
1c3af091f7
cgen, json: fix option ptr declaration and dumping (#18119) 2023-05-07 03:54:43 +03:00
Jacques Supcik
a82fc5bea0
os: make SignalHandler public (#18115) 2023-05-06 14:59:06 +03:00
squidink7
787d774523
checker: warn instead of error, for unnecessary brackets on if/match (#18117) 2023-05-06 14:17:45 +03:00
Swastik Baranwal
5bcc04e66a
checker: disallow _ = <- quit (#18104) 2023-05-04 21:23:34 +03:00
Ikko Eltociear Ashimine
43093311b6
flag: fix typo in flag.v (#18109) 2023-05-04 21:23:02 +03:00
Felipe Pena
5008515b03
builtin: heap memory usage api (#18103) 2023-05-03 20:33:52 +03:00
Mark aka walkingdevel
40a97aed1a
docs, orm: update examples (#18106) 2023-05-03 20:33:16 +03:00
Felipe Pena
2c123dffbb
cgen: fix comptimeselector option propagation (#18092) 2023-05-03 08:31:48 +03:00
Mark aka walkingdevel
458132b1b2
checker: make undefined ident error for closures more friendly (#18100) 2023-05-03 08:02:59 +03:00
Thomas Peißl
353de60158
examples: fix unset reader notice for the smtp/mail example (#17998) 2023-05-02 22:54:57 +03:00
Casper Kuethe
d3dbd7b743
vweb: add docs for [vweb_global] and shared attributes. (#18098) 2023-05-02 22:49:55 +03:00
Felipe Pena
063dfa0ab9
checker: missing mutability check for array.delete calls (#18096) 2023-05-02 22:48:40 +03:00
Delyan Angelov
5631e2f01d
ci,cgen,orm: fix CI failures after 9f118ba 2023-05-02 21:29:58 +03:00
Alexander Medvednikov
9f118ba3f1 orm: skip via the "-" attribute 2023-05-02 17:00:54 +02:00
Alexander Medvednikov
b9f5cc830b json: skip via the "-" attribute 2023-05-02 16:41:32 +02:00
Felipe Pena
638f0f69ed
checker: fix wrong error message about missing shared on parameter signature (fix #18087) (#18091) 2023-05-02 15:52:40 +03:00
Swastik Baranwal
c4cce3bc00
checker: disallow matching type with primitive vars (#18084) 2023-05-02 11:40:38 +03:00
Mark aka walkingdevel
ca2820da5f
checker, orm: don't insert an uninitialized struct in the related table. (#18093) 2023-05-02 11:14:42 +03:00
Alexander Medvednikov
046dd5481c V 0.3.4 2023-05-01 00:58:10 +03:00
Casper Kuethe
0898f57995
net.html: fix text parsing for inline tags (#18085) 2023-04-30 16:20:24 +03:00
Felipe Pena
d086cc26cd
cgen: fix it variable casting on map call when arr is a comptime variable #18083 2023-04-30 16:18:44 +03:00
Felipe Pena
e738d671a5
checker: fix [noinit] attr checking with multiple attr (#18079) 2023-04-29 17:07:24 +03:00
Mark aka walkingdevel
e8df5a7861
checker: check db type implements orm.Connection and isn't an Option. (#18078) 2023-04-29 10:36:21 +02:00
Mark aka walkingdevel
9eee131423
checker: make type_implements() return false if methods of interface didn't implement (#18076) 2023-04-28 22:18:23 +03:00
Felipe Pena
2f48288a25
checker: fix generic argument resolution for multiple generic args (#18073) 2023-04-28 17:06:28 +03:00
Felipe Pena
b6bbd2463c
cgen: fix shared struct field initialization with default value (#18075) 2023-04-28 16:59:18 +03:00
Hitalo Souza
b0589c645d
json2: encode reference fields too (#17058) 2023-04-28 16:24:27 +03:00
Spydr
433208ea7e
native: make code generation logic platform-independant (#18057) 2023-04-28 16:00:23 +03:00
Turiiya
27e1c20e3d
toml: fix multiline array bool scanner, add test (#18068) 2023-04-28 01:30:47 +03:00
Mark aka walkingdevel
b767c7d6f5
cgen: orm: refactor, comments, simplify (#18070)
* cgen: refactor, comments, simplify

* fix: misc-tooling
2023-04-28 01:30:23 +03:00
Swastik Baranwal
30ac2e8763
checker: disallow assigning anon struct to typed struct (#18017) 2023-04-27 16:54:26 +02:00
Felipe Pena
9fb52c4c9c
cgen: fix code generated for or-block for void result return function + code generated for indirection comptime checking for logical operators (#18066) 2023-04-27 17:37:29 +03:00
Felipe Pena
ee9cfb6df4
checker: add check for mixing multi-return results with other types in return statements (fix #17501) (#18067) 2023-04-27 16:50:09 +03:00
Turiiya
bbfa25a17b
toml: fix scanner floating point detection (#18062) 2023-04-27 06:43:00 +03:00
Turiiya
8f767c9189
toml: update returns from option to result type (#18065) 2023-04-27 06:41:40 +03:00
Felipe Pena
c63902baf0
checker, cgen: fix generic resolution for comptimeselector and indirection checking on generic funcs (#18043) 2023-04-26 22:49:50 +03:00
yuyi
f4b7f83121
parser, checker: fix generic struct init with field struct init (#18052) 2023-04-26 22:22:15 +03:00
Felipe Pena
13b4cd9d58
os: fix memleak from getline on Linux (#18022) 2023-04-26 22:02:09 +03:00
yuyi
e1e5076d94
cgen: fix cross assign with generic fn call (#18050) 2023-04-26 20:41:20 +03:00
Felipe Pena
28f85371b1
cgen: fix comptime ptr comparison generated code (#18048) 2023-04-26 20:40:28 +03:00
squidink7
4bfe270c41
wasm: add support for [export]ed functions (#18055) 2023-04-26 20:39:58 +03:00
Jacques Supcik
c4b34c9482
docs: fix copy/paste leftover in the output of v help build-c (#18056) 2023-04-26 08:59:20 +03:00
Spydr
3622544695
native: implement miscellaneous features (#18044) 2023-04-25 01:19:15 +03:00
Swastik Baranwal
ac58eca015
checker: disallow deferencing a nil pointer (#18038) 2023-04-25 01:10:01 +03:00
yuyi
f598bbde4e
tests: clean up c_struct_with_reserved_field_name_test.v (#18026) 2023-04-24 11:04:13 +02:00
yuyi
79819c4fcb
parser: check generic fntype declaration without type name (#18033) 2023-04-24 11:03:29 +02:00
Spydr
7ac7020192
native, markused: implement -skip-unused (#18036) 2023-04-24 10:41:12 +02:00
yuyi
d8167b8966
ast, parser: fix generic fntype to concrete types (fix #17982) (#18025) 2023-04-23 03:44:16 +03:00
Mark aka walkingdevel
3fb32a866c
all: like operator/keyword for V ORM (#18020) 2023-04-23 03:40:54 +03:00
Casper Kuethe
5f870f41b5
vweb: implement database pool (#18010) 2023-04-23 03:37:15 +03:00
Felipe Pena
6f85384f7f
checker, cgen: fix infering type for comptimeselector when using ptr type (#18005) 2023-04-22 11:04:08 +03:00
Felipe Pena
3d50663bcf
json: fix omitempty for alias, struct, sumtype, array and map (#18012) 2023-04-22 10:58:21 +03:00
Felipe Pena
89b7bebc3c
json: fix option sumtype with int types (#18013) 2023-04-22 10:58:01 +03:00
Felipe Pena
c43ea09d87
json: fix -cstrict build + optional map (#18014) 2023-04-22 10:55:25 +03:00
Felipe Pena
c339ea2ce2
checker, cgen: make comptime field.indirections working with logical operators (#17990) 2023-04-21 19:43:47 +03:00
Felipe Pena
59d91e0514
cgen: fix auto_str for fn type (#17988) 2023-04-21 19:42:45 +03:00
yuyi
95d1beb008
cgen: fix c struct with reserved field name (fix #17993) (#17996) 2023-04-21 19:41:13 +03:00
Felipe Pena
488e14bf99
json: allow decode/encode of alias to primitive type (#18003) 2023-04-21 19:39:40 +03:00
Swastik Baranwal
456968b07d
checker: disallow []array{} (#17994) 2023-04-21 19:33:23 +03:00
yuyi
eb410bf283
checker: minor cleanup in return_stmt() (#17995) 2023-04-21 19:32:59 +03:00
Felipe Pena
adcd16b198
cgen: fix generic return for option ptr (#17987) 2023-04-18 17:51:43 +02:00
Felipe Pena
377c2e25ff
all: allow recursive struct with option ptr (?&Node) (#17682) 2023-04-18 13:07:21 +02:00
yuyi
6cc420880f
ast, checker, cgen: fix generic array of threads (fix #17976) (#17986) 2023-04-18 12:43:30 +03:00
Felipe Pena
df3ee9a64a
cgen: fix concat with matchexpr + option string (#17985) 2023-04-18 12:40:37 +03:00
Felipe Pena
8445642567
cli: fix a panic and an infinite loop, when command flag descriptions have multiple lines (#17981) 2023-04-18 12:37:26 +03:00
Turiiya
a84fddbb91
toml: fix trailing comma in inline toml, add test (#17977) 2023-04-18 12:35:55 +03:00
Mehmet Ali Şipi
04dabb5485
v.builder: add support for cross-compilation from termux to other platforms (#17984) 2023-04-18 09:20:17 +03:00
Delyan Angelov
8275dc5a73
db.pg: add support for -d trace_pg_error 2023-04-17 21:49:05 +03:00
Felipe Pena
3b2e58eace
checker: fix missing check for or-block on selectorexpr (#17975) 2023-04-17 16:11:34 +02:00
yuyi
fe4ccbc4cf
cgen: fix strings builder shift array.reverse() (#17979) 2023-04-17 14:06:57 +03:00
Delyan Angelov
4a22d4a65d checker: fix v -shared vlib/json on windows 2023-04-17 09:12:05 +03:00
Delyan Angelov
bf749b3559
ci: add test jobs for the wasm module, for macos, linux and windows (#17972) 2023-04-16 14:52:00 +03:00
Felipe Pena
a49cecc2b4
cgen: fix array map with it selector expr, used as an it method closure (#17968) 2023-04-16 14:41:07 +03:00
Felipe Pena
8e959ae5b5
parser: fix wrong nodes generated for $something (#17969) 2023-04-16 14:36:51 +03:00
Turiiya
6e0204a614
regex: remove outdated examples in README.md (#17971) 2023-04-16 13:17:24 +03:00
yuyi
6db904fb8f
cgen: correct comments and cleanup in comptime_for() (#17964) 2023-04-16 08:01:36 +03:00
Swastik Baranwal
d3de7adcc0
builtin: add C.scanf fn decl to cfns.c.v (#17965) 2023-04-16 08:00:19 +03:00
Delyan Angelov
75ddcb02fc tests: fix warnings and failure on macos for closure_generator_test.v 2023-04-16 07:45:05 +03:00
yuyi
a938dcddb5
ast: minor cleanup in ast.v (#17962) 2023-04-15 14:29:15 +03:00
yuyi
7c9f273e33
parser: fix comptime_for in repl (script mode) (fix #5976) (#17963) 2023-04-15 14:28:01 +03:00
James Hegedus
2179db37ee
flag: fix typo in uknown flag struct (#17375) 2023-04-14 14:42:11 +03:00
SolarWolf-Code
7981d2854a
net: fix typo give => given (#17955) 2023-04-14 11:15:16 +03:00
Delyan Angelov
e0656ad1b1
term.ui: cleanup of meaningless comment 2023-04-14 11:13:50 +03:00
Alexander Medvednikov
9f5e2aeea9 backtrace: use unsafe { nil } 2023-04-14 08:28:22 +02:00
yuyi
c59a5bbf05
parser: clean up array_init() (#17947) 2023-04-14 07:36:57 +02:00
Casper Kuethe
76fd55a693
vweb: fix multipart_form parsing (#17953) 2023-04-14 07:07:48 +02:00
l-m
8b2887d80b
wasm module: globals, constant expressions and function reference types (#17950) 2023-04-13 19:39:55 +02:00
Delyan Angelov
c6947fde57
os: implement Process.set_work_folder/0 to set the initial working folder of the new child process (#17946) 2023-04-13 14:48:32 +03:00
Turiiya
489ac892b9
regex: fix formatting inconsistencies in README.md (#17940) 2023-04-13 14:44:45 +03:00
Felipe Pena
524f7c3ead
json: fix json with option struct (#17942) 2023-04-13 08:17:40 +02:00
Swastik Baranwal
3d99f1f2c2
checker: disallow struct int to ptr outside unsafe (#17923) 2023-04-13 07:38:21 +02:00
yuyi
92cb7468ce
ast: minor optimization of clear_flags() (#17938) 2023-04-13 07:27:26 +02:00
yuyi
87ca877c83
parser: correct comments in comptime_for() (#17944) 2023-04-13 07:26:43 +02:00
Casper Kuethe
838083e610
vweb: add an overridable .not_found() method, for making a custom 404 page + tests fixes (#17936) 2023-04-12 00:50:03 +03:00
lapingenieur
f9c186a400
builtin: correct a small documentation mistake (#17935) 2023-04-11 12:37:14 +02:00
yuyi
8b37694760
cgen: fix generic method on embed struct (fix #17929) (#17932) 2023-04-11 10:04:00 +03:00
Hitalo Souza
91874f3244
json2: encode array (#17926) 2023-04-10 19:54:43 +03:00
Felipe Pena
319ad5bae2
json: fix json.decode with map alias (#17925) 2023-04-10 19:50:35 +03:00
Hitalo Souza
4d4d76d65b
json2: fix encoding of nested maps like map[string]map[string]int (#17924) 2023-04-10 18:57:02 +03:00