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

11701 Commits

Author SHA1 Message Date
Delyan Angelov
42732138c6
v: support -ldflags in addition to -cflags (allow adding C options *after* other C option, similar to LDFLAGS) (#17630) 2023-03-13 21:38:48 +02:00
Felipe Pena
9ad1c2f922
checker: fix missing option function field checking (#17601) 2023-03-13 15:05:56 +01:00
Felipe Pena
d00237f02c
cgen: fix code generated to option fn (fix #17604) (#17614) 2023-03-13 11:56:13 +02:00
yuyi
5cb1f8965a
cgen: fix option struct init with reference option (#17617) 2023-03-13 09:58:45 +02:00
Thomas Mangin
0bd094292f
v: add support for _qnx.c.v overriding _default.c.v (#17611) 2023-03-12 19:48:36 +02:00
Felipe Pena
3197ec1a41
v: add compile-time enum evaluation with $for item in MyEnum.fields { dump(item.value) dump(item.name) } (#17517) 2023-03-12 12:46:54 +02:00
Delyan Angelov
b2a71ecab2
pref: support v -e "println(2+5)" (#17605) 2023-03-12 00:42:36 +01:00
yuyi
95a9f0e29b
ast, parser, fmt: fix fmt error of infix expr with comments (fix #17560) (#17583) 2023-03-12 01:07:13 +02:00
Thomas Mangin
8490ea318b
readline: add more readline support to macos too (not simply os.get_raw_line based, but arrow key navigation, history etc too) (#17602) 2023-03-12 01:06:35 +02:00
ChAoS_UnItY
f02b423f80
builtin: string test refactor, string functions inlining (#17598) 2023-03-11 20:44:45 +02:00
Felipe Pena
ddcc22fe08
checker: fix parenexpr checking on assignment (#17593) 2023-03-11 14:56:47 +02:00
Alexander Medvednikov
dc24df9510 cbuilder: change order of functions to improve readability 2023-03-11 14:19:18 +03:00
yuyi
6e4dc82f28
sync: fix error of empty struct channel (fix #17556) (#17597) 2023-03-11 12:02:51 +02:00
Felipe Pena
a98376025e
checker: fix missing re-check of recursive generic function (fix #16962) (#17592) 2023-03-11 11:57:41 +02:00
Swastik Baranwal
48a03a4874
checker: check wrapped Option types before comparison (#17590) 2023-03-11 11:16:12 +02:00
yuyi
b691e1e24a
checker: check struct embed required field (#17595) 2023-03-11 11:12:26 +02:00
ChAoS_UnItY
9fa49da9d5
builtin: add rsplit functions (#17577) 2023-03-11 00:07:02 +01:00
Felipe Pena
ee4150f213
v: add a $Option comp-time type, to enable: $for f in Test.fields { $if f.typ is $Option { } } (#17546) 2023-03-10 12:17:25 +02:00
yuyi
09c9cbcef9
cgen: fix assign option value using propagate option (#17578) 2023-03-10 11:30:46 +02:00
yuyi
038fa6c8ab
checker: remove warning of casting same reference type (#17579) 2023-03-10 11:07:09 +02:00
Felipe Pena
23e385ee8a
json: fix json decode/encode with option type (#17393) 2023-03-10 10:49:26 +02:00
yuyi
b42a3f43a5
crypto, math: change option to result (#17580) 2023-03-10 10:31:05 +02:00
Felipe Pena
32d09544d7
cgen, checker: fix dump() to return option values (#17563) 2023-03-09 20:29:25 +02:00
yuyi
71c3b66ecf
datatypes: fix linked list of map (fix #17570) (#17573) 2023-03-09 14:26:01 +01:00
Felipe Pena
d353dd6e8a
cgen: fix selector accessing field (#17567) 2023-03-09 14:24:43 +01:00
yuyi
737e7f6410
cgen: fix generic array of alias (#17571) 2023-03-09 13:57:14 +01:00
Felipe Pena
638805be63
cgen: fix code for unwrap option on print (#17545) 2023-03-08 20:55:19 +01:00
Felipe Pena
785546f277
json2: fix decode result with option fields (#17561) 2023-03-08 20:54:28 +01:00
Felipe Pena
b19052949f
cgen: fix array initialization with options (#17562) 2023-03-08 20:54:00 +01:00
Felipe Pena
a0b3379d4a
cgen: fix fn option-only return print (#17547) 2023-03-08 20:53:23 +01:00
Felipe Pena
e253256c30
cgen: fix option unwrap on assignment (#17551) 2023-03-08 20:52:24 +01:00
ChAoS_UnItY
ae6a48c0e3
all: rename it to index in array inits (#17543) 2023-03-08 20:51:45 +01:00
Felipe Pena
2597efa7f6
cgen: fix struct initialization with option value (#17539) 2023-03-07 23:53:56 +03:00
Felipe Pena
b4f0bb247d
cgen: fix default initialization of option array with none values (#17536) 2023-03-07 23:53:07 +03:00
yuyi
b6c4e88462
checker: check error of casting to interface (fix #17522) (#17531) 2023-03-07 23:49:53 +03:00
Felipe Pena
b85f71d00f
cgen: fix default init value for an array of option (#17538) 2023-03-07 20:04:16 +02:00
Felipe Pena
792b822091
cgen: fix dump(option_value) inside a generic function (#17537) 2023-03-07 18:13:19 +02:00
Felipe Pena
32751440b6
checker: fix missing check for none type on or block on non-option (#17529) 2023-03-07 18:11:03 +02:00
Felipe Pena
68cab00ded
cgen: fix or-block with return void statement (#17527) 2023-03-07 15:01:46 +01:00
Felipe Pena
9826310882
cgen: fix struct initialization for nested option struct (fix #17524) (#17525) 2023-03-07 09:30:45 +01:00
Felipe Pena
1e416de627
checker: fix const init with comptime (#17528) 2023-03-07 09:15:46 +01:00
Ikko Eltociear Ashimine
784592af83
os: fix typo in os.v (#17519) 2023-03-07 08:30:37 +01:00
ChAoS_UnItY
6e670ec908
v: support interface field compile time reflection (#17503) 2023-03-07 08:52:40 +02:00
Alexander Medvednikov
d7a418fbb5 pref: no-skip-unused 2023-03-06 14:13:29 +01:00
yuyi
65a627d72b
checker: allow aa := AA{}, when AA has an option field, that is a struct, that has a [required] tag on its fields (#17516) 2023-03-06 10:16:05 +02:00
Wertzui123
77b6bc1c1a
net.websocket: fix a typo (allready -> already) (#17512) 2023-03-06 10:05:17 +02:00
Felipe Pena
7de3485bd2
cgen: fix multi return with option type (#17489) 2023-03-05 11:41:19 +01:00
Petr Makhnev
1a48d08d7a
cgen: add calls to all typeof functions for interfaces and sum-types (#17490) 2023-03-04 14:59:00 +02:00
Tim Marston
3f8821b8d8
cgen: unwrap and c-mangle field selectors in or blocks (#17495) 2023-03-04 11:52:08 +02:00
yuyi
6944d54257
parser, cgen: fix option variable error (fix #17460) (#17479) 2023-03-04 11:47:49 +02:00
yuyi
30c205ef2c
cgen: fix printing map reference value (#17496) 2023-03-04 11:35:38 +02:00
l-m
6f7192359a
wasm: bug fixes and memory based changes (#17497) 2023-03-04 11:24:33 +02:00
Felipe Pena
72cbca9653
checker: fix and improve return stmt error messages (#17477) 2023-03-04 09:32:55 +02:00
Felipe Pena
c5832379e7
checker, cgen, parser: fix Option/Result error messages (capitalized) (#17486) 2023-03-04 09:02:57 +03:00
Alexander Medvednikov
0ba0fb256f checker: check the type of SizeOf 2023-03-03 18:45:18 +01:00
walking devel
5454562d2c
checker, parser, orm: remove redundant & for sum type value arguments to functions with expr &ast.Expr parameters (#17482) 2023-03-03 14:35:12 +02:00
l-m
9c9adb125b
doc: ignore builtin/wasm (#17480) 2023-03-03 12:35:21 +02:00
walking devel
5e2ff246c8
cgen: pass sum type values automatically by reference too, when functions require that (#17476) 2023-03-03 09:11:15 +02:00
Felipe Pena
904f984367
checker: fix or-block expected type checking (#17469) 2023-03-03 08:30:44 +02:00
yuyi
17000ef7b6
checker: check option fn returning error (fix #17423) (#17438) 2023-03-02 15:49:50 +02:00
Felipe Pena
8f7c35552d
fmt: fix formatting for $compile_warn (#17450) 2023-03-02 15:40:53 +02:00
Delyan Angelov
9fc2860074
checker: fix compiler panic for for k, mut val in app.field[x].values { (#17468) 2023-03-02 15:40:14 +02:00
Delyan Angelov
e2daa84a33
ci: add windows and macos jobs for checking the wasm backend too (#17451) 2023-03-01 21:53:03 +02:00
l-m
cdc0159c6e
wasm: update the compile flags in binaryen.c.v to assist darwin (#17449) 2023-03-01 14:21:08 +02:00
Felipe Pena
bba7cfee0b
checker: check or-block used on non-option value (#17444) 2023-03-01 02:08:18 +02:00
walking devel
3682a9cf88
orm: allow use of mut db orm.Connection (#17439) 2023-03-01 00:49:30 +02:00
Felipe Pena
5f4b34ef12
eval: add host API, for passing and receiving values, to/from code, ran by the eval.Eval instances (#17426) 2023-03-01 00:42:19 +02:00
Haren S
acfd21e4e0
os: add #include <sys/types.h> to debugger_darwin.c.v, to fix bootstrapping on macOS <= 11 (#17446) 2023-03-01 00:06:12 +02:00
l-m
0625caad56
wasm: add a webassembly compiler backend, based on using binaryen (#17368) 2023-02-28 23:58:53 +02:00
yuyi
b9a8a21094
cgen: fix nested option struct init (fix #17415) (#17425) 2023-02-28 14:02:17 +02:00
walking devel
b7b6c2368e
orm: allow using connections, that were explicitly casted to orm.Connection too (#17427) 2023-02-27 23:54:03 +02:00
Petr Makhnev
864e1994b0
vlib/time: format table for custom_format() (#17428)
* vlib/time: format table for `custom_format()`

* small fix

* small fix
2023-02-27 21:48:05 +02:00
Delyan Angelov
607649b44d
builder: add small diagnostic and instructions for when the C cross compiler for linux->windows is not installed. 2023-02-27 16:59:56 +02:00
paul-elesin
15cb18cbd2
os: make hostname and loginname functions return Result (#17414) 2023-02-27 05:21:23 +03:00
yuyi
45d4849b0f
checker: fix returning match expr with custom error (#17413) 2023-02-26 07:54:53 +02:00
Delyan Angelov
4c13a4c22c
ci: make websocket_test.v more robust (wait till the websocket server are open for connections, instead of relying on fixed time.sleep delays, which are not enough on the CI) 2023-02-25 19:39:14 +02:00
Delyan Angelov
524c500146
cgen: add requires to c_reserved, so that V generated code, can be compiled with -cc g++-11 -no-std -cflags -std=c++20 as well (#17404) 2023-02-25 16:50:48 +02:00
Delyan Angelov
cf47a5f978
ci: fix websocket_test.v after a7ae3bf 2023-02-25 14:46:31 +02:00
Felipe Pena
12ec0e9fe1
cgen: support option pointer values - ?&Type (#17397) 2023-02-25 14:44:41 +02:00
Petr Makhnev
51bb8cda15
test: fix teamcity runner message escapes (#17405) 2023-02-25 14:39:09 +02:00
Delyan Angelov
a7ae3bfa78
ci: fix all ports for the servers started in websocket_test.v 2023-02-25 14:36:54 +02:00
Felipe Pena
9a8f3025f5
cgen: implement option fixed array (#17400) 2023-02-24 19:25:31 +02:00
yuyi
2836544978
cgen: minor cleanup of leftover comments in expr() (#17390) 2023-02-24 11:03:07 +02:00
Felipe Pena
6b20bddd15
cgen, json2: fix auto str option type generator, and json2 option type handling (#17388) 2023-02-24 10:54:45 +02:00
yuyi
acd903484d
parser: fix channel pop with or expression: ch := <-self.item or { return none } (#17392) 2023-02-23 16:45:15 +02:00
Felipe Pena
248e9538ca
parser: check for anonymous function param redefinitions (#17382) 2023-02-23 16:34:42 +02:00
Felipe Pena
2879afadd4
cgen, checker: fix none checking (#17364) 2023-02-22 16:13:02 +02:00
Swastik Baranwal
c173104295
cgen: add & before ptr arr elements (#17379) 2023-02-22 14:10:07 +02:00
Felipe Pena
6682911bc3
cgen: fix print fn + cycle const error message (#17355) 2023-02-22 13:38:08 +02:00
Delyan Angelov
612ac69486
ci: fix bootstrapping on macos/freebsd etc 2023-02-21 12:30:35 +02:00
Felipe Pena
82c4338b76
os: move pub fn debugger_present() bool{ to platform-specific files (better ptrace portability handling) (#17373) 2023-02-21 10:55:03 +02:00
R cqls
cd00beb099
gg: add toggle_fullscreen and is_fullscreen (#17371) 2023-02-20 21:58:04 +02:00
Felipe Pena
cb976c7e17
os: fix the declaration of C.ptrace (the 4th parameter is a pointer, not an integer) (#17366) 2023-02-20 12:29:49 +02:00
yuyi
fcef8c98ee
cgen: fix map of array initialisation, with len and no default (fix #17358) (#17367) 2023-02-20 12:26:48 +02:00
Swastik Baranwal
e9a3817aed
checker: disallow enum initalization (#17361) 2023-02-19 22:22:07 +01:00
JalonSolov
79b2c34f97
arrays: replace C.memcpy with vmemcpy calls, to make v -shared -Wimpure-v vlib/arrays/ pass (#17357) 2023-02-19 19:01:18 +02:00
Felipe Pena
8a1e90fff1
checker: allow none to be casted to all option types, including aliases (#17348) 2023-02-19 18:56:14 +02:00
Felipe Pena
ce1978ecde
parser: disallow defining methods on option receivers - fn (x ?Type) method() { (#17351) 2023-02-19 15:00:29 +02:00
yuyi
93a3f5ff7d
builtin, cgen: fix array of struct with map field initialize (fix #17325) (#17340) 2023-02-18 20:34:15 +02:00
Felipe Pena
2879c5110c
cgen, check, parser: implement first-class option type (#17017) 2023-02-18 11:45:01 +02:00
Felipe Pena
e066d1d3df
cgen: fix missing aggregate rec_type (#17335) 2023-02-16 16:36:16 +01:00
Felipe Pena
7f5cba1a38
cgen: add comptime field.name checking (#17318) 2023-02-16 11:46:27 +02:00
Ahmad Yasser
cad2cd5583
docs: fix typos using codespell (#17332) 2023-02-16 11:43:39 +02:00
walking devel
580dbc3f0e
orm: allow inserting empty objects with db.sqlite (SQLite uses a slightly different SQL dialect) (#17334) 2023-02-16 11:34:16 +02:00
yuyi
289993ad7f
checker: fix printing address of integer variable (#17327) 2023-02-15 20:05:26 +02:00
Ikko Eltociear Ashimine
2382549df3
math: fix typo in factorial.v (#17322) 2023-02-15 19:57:37 +02:00
walking devel
5d4c9dc9fc
checker: allow using struct field as ORM limit and offset. (#17330) 2023-02-15 19:47:35 +02:00
zakuro
f5423ed26b
checker: fix warning of unnnecessary default none value for option struct fields (#17305) 2023-02-15 11:42:00 +02:00
Felipe Pena
039c9b2550
cgen, checker: fix comptimeselector resolution + if comptime branching improvement + comptimeselector cleanup (#17302) 2023-02-15 11:40:11 +02:00
yuyi
5a8c433548
cgen: fix printing a reference to a function (#17307) 2023-02-15 11:27:21 +02:00
yuyi
d0a873ca02
checker: fix printing the address of a struct value with println('${&value:p}') (#17321) 2023-02-15 11:20:25 +02:00
yuyi
b6ecd634e3
tests: change option to result in vscript_using_generics_in_os.vsh (#17306) 2023-02-14 13:01:35 +02:00
Delyan Angelov
b13f7118ab
os,term: fix C.tcsetattr declaration (add missing int return type) 2023-02-13 15:16:23 +02:00
starryskye
2d3508c872
net.websocket: call close event (#17300) 2023-02-13 14:28:41 +02:00
Felipe Pena
16344cfc28
checker: fix sumtype cast of comptime var (#17287) 2023-02-13 13:24:36 +01:00
Felipe Pena
fbcb1f3711
checker: disallow &nil (#17283) 2023-02-13 13:24:11 +01:00
Felipe Pena
04e00a46d4
cgen, checker: allow array decompose on non-variadic func call (e.g call(...arr)) (#17284) 2023-02-13 13:13:52 +02:00
Makhnev Petr
c8c70de87d
docs: unify format of notes (#17294) 2023-02-13 10:29:02 +02:00
zakuro
e7fcf66095
tests: add more tests for struct option fields in vlib/v/tests/option_test.v (#17297) 2023-02-13 10:02:47 +02:00
Felipe Pena
eb7e1b4712
cgen: fix cast with comptime var (#17286) 2023-02-12 07:54:09 +01:00
yuyi
6883561d6d
cgen: fix c_fn_name() for mongo module (#17282) 2023-02-11 20:33:41 +02:00
yuyi
90591eb813
checker: check nested struct field with required attr (fix #10913) (#17277) 2023-02-11 11:22:31 +02:00
walking devel
03be525c82
orm: allow using reference objects in ORM insert. (#17279) 2023-02-11 10:02:55 +02:00
MatejMagat305
ac381f5e5b
docs: add git to the list of installed prerequisites for V on Termux (#17276) 2023-02-10 17:02:02 +02:00
MatejMagat305
c003bfd5d4
docs: add make to the list of installed prerequisites for V on Termux (#17269) 2023-02-10 01:00:33 +02:00
yuyi
7cfbc1cc5f
checker: fix generic array of sumtype push operation (#17268) 2023-02-10 00:27:07 +02:00
Felipe Pena
3aecd01d05
tests: add empty_struct_compare_test.v too (#17270) 2023-02-10 00:26:41 +02:00
Riccardo
ba9a9fdc2a
builder: fix bug for incorrectly detecting tcc as icc, when V was installed in a path containing icc (#17271) 2023-02-10 00:24:03 +02:00
MatejMagat305
dcb9c3beb3
cgen: support [spawn_stack: 131072] fn attribute, for controlling the max size of the stack, of the spawned threads (#17222) 2023-02-09 15:57:53 +02:00
yuyi
19ba7c5ceb
parser: fix fn attrs with anon struct param (#17266) 2023-02-09 14:10:28 +02:00
yuyi
34efc9c427
checker: fix returning if expr with custom error (#17265) 2023-02-09 11:45:46 +02:00
Felipe Pena
47e8d967e6
v.reflection: add type symbol info metadata (#17188) 2023-02-08 21:30:44 +02:00
Felipe Pena
fbfdab9e2d
cgen: remove unused generated func (#17258) 2023-02-08 21:27:24 +02:00
ChAoS_UnItY
404a9aa442
v: forbid function parameter names, shadowing imported module names (#17210) 2023-02-08 20:37:04 +02:00
Delyan Angelov
c16549b6fd
ci: fix VLS compilation after 36dc7fa 2023-02-08 14:04:03 +02:00
Delyan Angelov
6b0b7a9e4f
cgen: fix compilation of vlang/sdl examples 2023-02-08 13:27:59 +02:00
Delyan Angelov
36dc7faf2c
net.openssl: add manual .str() methods for C.SSL and C.SSL_CTX, fix a bug in the V auto str generation as well. 2023-02-08 13:14:12 +02:00
Delyan Angelov
522a9f5908
net.openssl: add V side declaration for C.SSL_CTX too (fix auto .str() method generation for V structs containing references to C.SSL_CTX) 2023-02-08 12:33:21 +02:00
yuyi
6136b62220
cgen: fix method calls to nonarray methods, named first, last or repeat (#17252) 2023-02-08 10:45:17 +02:00
Delyan Angelov
9794a239b1
sokol.sgl: add wrapper for scissor_rectf too 2023-02-07 12:53:59 +02:00
yuyi
a173f2964e
cgen: minor cleanup in stmt() (#17240) 2023-02-07 09:17:10 +02:00
yuyi
223c752460
cgen: fix for in mut array with infix expr (#17233) 2023-02-07 00:10:07 +02:00
MatejMagat305
954843c486
os: fix default result of os.temp_dir() for termux (#17237) 2023-02-07 00:07:35 +02:00
yuyi
e76e93d230
ast: add comments for ast.AssertStmt and ast.IfGuardExpr (#17235) 2023-02-06 16:39:03 +02:00
yuyi
7090e905f7
checker: fix array filter of fn mut argument (#17231) 2023-02-06 16:37:37 +02:00
Mehmet Ali
791ef4b4a6
gg: fix gg.scissor_rect behavior on Android (#17229) 2023-02-06 12:26:20 +02:00
yuyi
242d6fa1ff
checker: disallow for mut letter in 'abc' { (#17234) 2023-02-06 11:58:03 +02:00
yuyi
858ce4e35d
cgen: correct comments for expr_with_tmp_var() (#17227) 2023-02-05 14:16:29 +02:00
yuyi
fc65de9bba
checker: check sumtype in unknown type (#17225) 2023-02-05 12:02:30 +01:00
yuyi
c40e25b028
cgen: fix assigning option of struct fntype field (#17224) 2023-02-05 09:13:19 +02:00