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

6698 Commits

Author SHA1 Message Date
Lathanao
a0cbe48977
vweb: fix @include (#8535) 2021-02-04 17:07:04 +01:00
yuyi
abde1cd73d
cgen: fix array/map of alias to string (#8549) 2021-02-04 17:52:14 +02:00
Subhomoy Haldar
c6552d7780
rand.util: add sample_r and sample_nr (#8539) 2021-02-04 14:56:53 +02:00
yuyi
a976876211
v.token: correct some comments, and add some missing comments (#8542) 2021-02-04 09:18:38 +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
112c652ace
cgen: auto initialize chan that are struct elements (#8541) 2021-02-04 00:07:20 +01: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
Uwe Krüger
2424e2cb02
cgen: fix for rlock/lock handling (#8536) 2021-02-03 17:33:18 +01:00
Nick Treleaven
de37b52d4b
checker: check goto label exists (#8523) 2021-02-03 15:20:10 +01:00
Nick Treleaven
82482167ce
vlib: replace all goto statements with labelled break (#8531) 2021-02-03 15:19:42 +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
Delyan Angelov
f4b757e47d
examples: add examples/vweb/server_sent_events; implement vweb.sse 2021-02-03 16:03:06 +02:00
Ruofan XU
a73c20916d
checker: refactor and clean up c.check_basic() (#8508) 2021-02-03 11:57:06 +02:00
zakuro
4b99d6af95
cgen: fix bug with duplicate defer generation (#8503) 2021-02-03 11:40:21 +02:00
yuyi
b40252bd97
checker: merge array_filter_fn_err tests (#8506) 2021-02-03 11:27:11 +02:00
yuyi
9bcb57eb1f
checker: merge array_map_fn_err tests (#8507) 2021-02-03 11:26:26 +02:00
Lukas Neubert
ea06966fd4
fmt: hide ´[]Type{} instead of []Type´ and ´(f mut Foo)´ warnings (#8528) 2021-02-03 11:25:08 +02:00
zakuro
e30e794884
checker: add check for using a private const in another module (#8501) 2021-02-03 10:17:13 +02: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
91af2418de
ftp: minor optimization in dir() (#8518) 2021-02-02 18:51:55 +01:00
yuyi
7875164d91
cgen: add gen_alias_equlity_fn (#8514) 2021-02-02 18:37:57 +01:00
Delyan Angelov
02bef1ae2b
vdoc: fix segfault on v doc -m -f html vlib 2021-02-02 17:38:32 +02:00
joe-conigliaro
ffedbe4b81
cgen: move cgen from v.gen to v.gen.c (#8515) 2021-02-02 15:41:51 +01:00
Daniel Däschle
d477e525bb
checker/gen: fix generic struct init (#8322) 2021-02-03 00:42:00 +11:00
Lukas Neubert
58b37519e0
scanner: fix warning for \" after string interpolation (#8510) 2021-02-02 14:14:06 +02:00
Uwe Krüger
1de299ad22
cgen: allow shared initialization from return values of functions (#8512) 2021-02-02 14:13:13 +02:00
Delyan Angelov
17062dc5c8
v.pref: support -obf in addition to -obfuscate, as described in v help build 2021-02-02 12:24:34 +02:00
Lukas Neubert
5aaeac79fa
ci: fix compilation (#8511) 2021-02-02 12:06:54 +02:00
Delyan Angelov
d57a9c419d
examples: add net_udp_server_and_client.v 2021-02-02 10:36:56 +02:00
Alexander Medvednikov
2c4674eb42 cgen: obfuscate functions 2021-02-02 09:14:41 +01:00
yuyi
5ec6f7a781
ftp: fix error in dir() (#8504) 2021-02-02 08:22:52 +01: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
Louis Schmieder
969f19daf4
orm: fix null strings (#8497) 2021-02-01 21:44:09 +01:00
Ruofan XU
51f2eb81f4
checker/cgen: fix mut array of fn as argument (#8469) 2021-02-01 20:10:24 +01:00
Lukas Neubert
cf1084105c
fmt: allow single line ternary if as function argument (#8486) 2021-02-01 20:08:42 +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
yuyi
4d268d1436
cgen: minor cleanup of gen_fn_decl (#8474) 2021-02-01 20:06:34 +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
Lucas Hernán Tarche
7813ecbb75
gg: add draw_convex_poly/2 and draw_empty_poly/2 methods (#8487) 2021-02-01 18:18:23 +02:00
yuyi
1e07173234
cgen: minor cleanup of array_init (#8477) 2021-02-01 15:56:55 +01:00
Nick Treleaven
c537578481
checker: ensure expr is an lvalue with Struct{...expr (#8489) 2021-02-01 15:18:03 +01:00
Lukas Neubert
d660f2cc6f
fmt: insert newline after last HashStmt (#8482) 2021-02-01 14:50:41 +01:00
yuyi
53a5aad855
cgen: fix fixed array of function (#8490) 2021-02-01 14:50:10 +01:00
Lukas Neubert
8755f40430
fmt: keep comments after imports (#8483) 2021-02-01 14:45:08 +01:00
Uwe Krüger
44ec9e3ebc
checker/cgen: put shared struct always on heap (#8492) 2021-02-01 14:39:36 +01:00
Delyan Angelov
5b9a7bf6b3
cgen: support #flag -DWIN32_FULL, when you do NOT want WIN32_FULL 2021-02-01 14:40:51 +02:00
Lukas Neubert
43676330ba
fmt: keep braces around @ escaped fields in string interpolation (#8488) 2021-02-01 11:04:57 +02: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
Larpon
d25825df57
all: support compile time $env('ENV_VAR') (#8456) 2021-01-31 19:22:42 +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
Alexander Medvednikov
9638013203 gg: fix macos C function definitions 2021-01-31 13:57:06 +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
Seven Du
09c65163b4
cgen: add a destructor caller for the generated _vcleanup, when using -shared (#8464) 2021-01-31 12:10:49 +02:00
Delyan Angelov
5746ac4dd4
vfmt: remove tracing println for match branches 2021-01-31 11:05:49 +02:00
Delyan Angelov
978359a6fc
tests: fix some warnings in preparation for -W test-self 2021-01-31 11:05:17 +02:00
Delyan Angelov
e066e83041
stbi: add proper declarations for C.stbi_load etc. 2021-01-31 10:23:43 +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
BigBlack
c5e7956eb5
checker: fix generic_mutable_arrays in functions (#8445) 2021-01-30 18:35:03 +01:00
Nick Treleaven
64d12cdc8d
checker: check number of C function arguments for some cases (#8444) 2021-01-30 18:33:36 +01:00
Daniel Däschle
2cadb3e4d8
gen: panic with correct type names (#8355) 2021-01-30 18:54:05 +02:00
Nick Treleaven
849bc6c3d8
tests: fix weird CI failure with error details (#8449) 2021-01-30 18:53:39 +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
Uwe Krüger
058f3ba013
sync: rename m_lock() -> @lock(), r_lock() -> @rlock(), ... (#8443) 2021-01-30 15:23:55 +01:00
Subhomoy Haldar
7e3b3a9efc
rand: update byte() (#8442) 2021-01-30 14:19:14 +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
yuyi
97cb7687a2
cgen: minor cleanup of consts (#8441) 2021-01-30 13:35:25 +02:00
Enzo
ced7649bf8
gen: fix for ... in array (#8428) 2021-01-30 12:27:11 +01:00
Lukas Neubert
a044441224
fmt: keep {} in string interpolation for chained CallExprs (#8422) 2021-01-30 11:58:19 +01:00
Lukas Neubert
2774db077d
fmt: keep user choice for newlines in match branches (#8418) 2021-01-30 11:57:57 +01:00
yuyi
77b3d40f46
checker: fix map = {} (#8435) 2021-01-30 11:55:10 +01:00
Uwe Krüger
5e9b528a9d
checker/cgen: support return from nested or (#8430) 2021-01-30 12:46:36 +02:00
yuyi
5af16f38fc
cgen: correct minor typo (#8438) 2021-01-30 12:39:44 +02:00
Julia Bogdan Filipchuk
d26ac0f6cb
vfmt: add ability to use vfmt as a filter from stdin to stdout (#8432) 2021-01-30 12:38:54 +02:00
Delyan Angelov
7f5d654c3a
all: cleanup redundant .ends_with(_test.v) calls 2021-01-30 11:08:52 +02:00
Uwe Krüger
6477748e88
sync/waitgroup: use value mutex and semaphore; remove sync.Waiter (#8431) 2021-01-30 11:08:43 +02:00
zakuro
391d62bca5
fmt: remove duplicated imports (#8433) 2021-01-30 11:04:36 +02:00
Delyan Angelov
760b4c37b9
all: support _test.vv files (to test _test.v errors/checks too) 2021-01-30 10:42:18 +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
Delyan Angelov
948f63b507
checker,builder: rename details: to Details: 2021-01-30 10:20:09 +02:00
Delyan Angelov
30e0c478d7
checker: add error for _test.v file without test_ functions 2021-01-30 10:19:29 +02:00
Lukas Neubert
974cac2037
fmt: relocate two methods; minor cleanup (#8423) 2021-01-29 23:15:26 +02:00
Swastik Baranwal
e03ece2a4b
checker: check the fn decl for anon fns too (#7529) 2021-01-29 23:11:05 +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
Lukas Neubert
93acc929f7
fmt: keep lines of comments inside an array (#8420) 2021-01-29 20:19:14 +02:00
zakuro
2a32dac40d
checker: fix panic when calling generic function with too few args (#8416) 2021-01-29 20:14:22 +02:00
Delyan Angelov
8398e2f448
ci: fix -usecache for programs using thirdparty C libs 2021-01-29 19:44:33 +02:00
Delyan Angelov
9f31829e0c ci: fix failing clipboard_test.v on macos 2021-01-29 18:59:44 +02:00
Delyan Angelov
2326a3a1e1
builder: small cleanup, use .dump_c_options in Builder.cc_linux_cross/0 too 2021-01-29 18:30:40 +02:00
Delyan Angelov
4d180171ba
builder: implement -dump-c-flags flags.txt 2021-01-29 18:05:14 +02:00
Delyan Angelov
49b01549da
v.vcache: improve tracing of vcache usage 2021-01-29 18:05:13 +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
Swastik Baranwal
c4758c21c6
cgen: println(none) => <none> (#8404) 2021-01-29 14:50:48 +01:00
Louis Schmieder
4a6642b79e
vweb: fix vweb upload (#8392) 2021-01-29 14:48:52 +01:00
zakuro
f5242890b8
fmt: keep multiline selective import (#8412) 2021-01-29 14:48:28 +01:00
yuyi
ddcbc4440b
cgen: fix array_sort_by_references (fix #8390) (#8403) 2021-01-29 12:20:28 +02:00
Lukas Neubert
e47c13903b
fmt: keep newlines between toplevel stmts (#8383) 2021-01-29 12:17:59 +02:00
Larpon
85c5df23cf
gg: add window_size() function (#8409) 2021-01-29 12:11:03 +02:00
Subhomoy Haldar
c5a18812e2
rand: move constants from rand.util to a new module rand.constants (#8408) 2021-01-29 11:57:30 +02:00
Nick Treleaven
d012f2713b
checker: improve errors with compile-time field access (#8373) 2021-01-29 00:45:00 +01:00
spaceface
4aee997689
checker: make implementing an interface with another interface an error (#8398) 2021-01-29 00:41:59 +01:00
Uwe Krüger
adb646a1d2
sync: update benchmark results for Windows (#8399) 2021-01-29 00:41:46 +01:00
Alexander Medvednikov
608a4ccccd fmt: fix a bug with an empty module in consts 2021-01-29 00:26:57 +01:00
yuyi
1be7cc14d3
checker: check duplicate of a const name (#8396) 2021-01-28 18:34:55 +01:00
yuyi
684d2e6dbf
checker: merge ambiguous_function_call tests (#8388) 2021-01-28 15:53:54 +02:00
Delyan Angelov
4fcd8d8a98
scanner: fix ' "$var", "$another"' where r", was treated as start of a raw string 2021-01-28 15:38:42 +02:00
Delyan Angelov
079fbffaf5
scanner: implement s.trace/2 2021-01-28 15:21:19 +02:00
Uwe Krüger
0afe36e153
checker: fix receiver pos for single letter type error message (#8393) 2021-01-28 15:20:07 +02:00
Delyan Angelov
1a29719f16 fontstash: fix snek on big sur, with -d use_truetype 2021-01-28 12:26:48 +02:00
Lukas Neubert
75d85403a6
fmt: better ternary concat wrapping (#8379) 2021-01-28 11:23:48 +01:00
Alexander Medvednikov
d86cb67eda checker: add a test for the single letter receiver 2021-01-28 11:13:51 +01:00
Alexander Medvednikov
68dab101d9 checker: fix one letter receiver panic 2021-01-28 11:05:37 +01:00
Alexander Medvednikov
36e75e5208 Revert "parser: fix panic when single letter receiver parsed (#8381)"
This reverts commit 93b0d8ca64.
2021-01-28 10:59:04 +01:00
Daniel Däschle
93b0d8ca64
parser: fix panic when single letter receiver parsed (#8381) 2021-01-28 10:56:43 +01:00
Tim Basel
5fc7eadd8b
cgen: fix short struct init with mut (#8384) 2021-01-28 10:05:09 +02:00
Subhomoy Haldar
5a1f3cd394
math.fractions: fix minor typo (#8386) 2021-01-28 10:02:41 +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
Delyan Angelov
242d7d0fc0
tools: improve error diagnostic for v up and v self. Make v self more robust. 2021-01-27 23:58:13 +02:00
zakuro
8162396783
checker: deny multi-value in a singe-value context (#8328) 2021-01-27 23:10:51 +02:00
shadowninja55
f4baa3f39c
gg: add draw_square, draw_empty_square, and set_pixel (#8375) 2021-01-27 22:39:11 +02:00
shadowninja55
fccd4f98d5
fixed offset (#8376) 2021-01-27 19:39:53 +02:00
yuyi
d1ab22d45f
checker: fix array append short struct init (#8362) 2021-01-27 13:55:53 +01:00
Enzo
2b30c48770
checker: fix ctdefine check in non-main modules (#8332) 2021-01-27 13:54:33 +01:00
StunxFS
cb885d30b4
scanner: fix typo (#8345) 2021-01-27 13:53:41 +01:00
Swastik Baranwal
17921f4171
checker: add checks for optional selector_expr (#8330) 2021-01-27 13:53:20 +01:00
Nick Treleaven
58a76344cb
checker: avoid SelectorExpr filter on Ident unless it's a generic type name (#8357) 2021-01-27 13:52:52 +01:00
spaceface
e233911a7b
term.ui: native Windows console implementation (#8359) 2021-01-27 13:52:39 +01:00
Lukas Neubert
2ada7b730e
sqlite: create_table(): rename rows param to columns (#8361) 2021-01-27 13:52:27 +01:00
yuyi
7a5722c885
parser: check assign_stmt of undefined variable (#8366) 2021-01-27 13:52:10 +01:00
Delyan Angelov
2d86c50d49
ci: fix autobahn integration tests job 2021-01-26 20:12:12 +02:00
Delyan Angelov
dd96852515
ci: fix compilation of term.ui examples on windows 2021-01-26 19:26:05 +02:00
Delyan Angelov
4e2b908f21
ci: fix os compilation on windows 2021-01-26 17:41:27 +02:00
Delyan Angelov
e5a84719ca
all: require calling optfn() ? / optfn() or {...} for fn optfn() ? {} 2021-01-26 16:43:17 +02:00
Subhomoy Haldar
97103f680a
rand: separate rand.util and rand.seed submodules (#8353) 2021-01-26 15:55:09 +02:00
spaceface
5f2b2df546
checker: don't disallow defining methods on interfaces (#8335) 2021-01-26 11:56:17 +01:00
zakuro
3959ba5751
checker: make a calling no-body function a checker error (#8265) 2021-01-26 11:19:48 +01:00
Lukas Neubert
2007dbc7b5
fmt: put the opening brace on a new line again for infix (#8336) 2021-01-26 11:19:32 +01:00
Lukas Neubert
3790bd67e3
fmt: minor cleanup of sql_expr (#8340) 2021-01-26 10:36:46 +01:00
zakuro
22847d1ec3
fmt: assert (a == b) -> assert a == b (#8351) 2021-01-26 10:36:21 +01:00
Daniel Däschle
7bb9c0e7b3
checker: fix multi generic args (#8347) 2021-01-26 09:37:48 +02:00
Major Taylor
69c37402d4
backtrace: fix tcc backtrace windows compilation error (#8348) 2021-01-26 08:26:54 +02:00
Lukas Neubert
c6f98afaba
fmt: minor cleanup of return_stmt (#8341) 2021-01-25 23:22:14 +01:00
Delyan Angelov
4d0dab826b
ci: fix vlib/dl/example/use_test.v in windows-tcc 2021-01-25 21:19:15 +02:00
Delyan Angelov
dbaccd4272
vfmt: shorten main.const_name to just const_name 2021-01-25 20:57:33 +02:00
Delyan Angelov
ea11488339
tests: make test more tolerant to windows low precision timer default interval 2021-01-25 20:04:29 +02:00
Delyan Angelov
e0ed224a8d
Revert "net: prevent udp_test.v from running on windows without -d network"
This reverts commit 3526bc3d19.
2021-01-25 19:08:45 +02:00
Delyan Angelov
3526bc3d19
net: prevent udp_test.v from running on windows without -d network 2021-01-25 19:02:19 +02:00
spaceface
daff085033
checker: fix treating C structs with capitalized fields as embeds (#8343) 2021-01-25 18:47:14 +02:00
Delyan Angelov
cb04e6dccc
tests: move is_nodejs_working() to jsgen_test.v 2021-01-25 18:46:28 +02:00
yuyi
3199b982a9
cgen: minor cleanup of comp_for in comptime.v (#8337) 2021-01-25 17:08:48 +01:00
Daniel Däschle
006a11454f
cgen: fix generic type $else $if (#8339) 2021-01-25 17:08:02 +01:00
Swastik Baranwal
21ba0470af
builtin: fix truncating of EOL on windows terminal (#8338) 2021-01-25 17:51:36 +02:00
Delyan Angelov
a5b10b5539
parser: improve the error message for unexpected keywords 2021-01-25 15:29:07 +02:00
yuyi
444d49da75
cgen: minor cleanup of gen_assert_stmt (#8334) 2021-01-25 15:28:34 +02:00
Nick Treleaven
02d8ede94d
cgen: fix $if T !is (#8311) 2021-01-25 14:25:52 +01:00
Lukas Neubert
b2f2f387dc
fmt: cleanup and expand tests for ternary if (#8333) 2021-01-25 14:22:08 +01:00
yuyi
1c9950c84a
cgen: fix map_complex_high_order_fixed_array (#8329) 2021-01-25 14:40:53 +02:00
Delyan Angelov
965ae9cb91
ci: fix formatting in .md files too 2021-01-25 13:20:18 +02:00
Delyan Angelov
728344ff65
ci: fix v test-cleancode 2021-01-25 12:55:01 +02:00
Delyan Angelov
94fd3ff431
checker: remove the 'in module main cannot be declared public' error/warning 2021-01-25 12:55:00 +02:00
Delyan Angelov
d3d301d8ff
gen: use externally_visible too for VV_EXPORTED_SYMBOL when ARM is defined 2021-01-25 12:40:28 +02:00
Adelar da Silva Queiróz
334554ffb9
strconv: fix typo (#8318) 2021-01-24 23:18:40 +01:00
yuyi
d3327ba50f
cgen: fix for_mut_val_in_map_fixed_array (#8314) 2021-01-24 23:18:11 +01:00
Alexander Medvednikov
3dae3f786d gg: Context.resize() 2021-01-24 22:27:27 +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
Lukas Neubert
997f56a3dc
fmt: better newline handling in block comments (#8325) 2021-01-24 22:08:24 +01:00
Daniel Däschle
750738aa12
cgen: fix optional sum types (#8319) 2021-01-24 20:56:44 +01:00
Emily Hudson
2e695a8e8f
cgen: free temporary channel arrays (#8324) 2021-01-24 20:02:17 +01:00
Alexander Medvednikov
29d6e40f29 all: vfmt (new const rule) 2021-01-24 10:54:27 +01:00
Alexander Medvednikov
12ff1c2702 doc: document the new const rule 2021-01-24 10:23:52 +01:00
Alexander Medvednikov
80e6b090ea checker: remove an obsolete const test 2021-01-24 10:17:36 +01:00
Alexander Medvednikov
2238bf9a83 fmt: use new const rule in tests 2021-01-24 10:12:49 +01:00
Alexander Medvednikov
8bcb6c10cc checker: remove duplicate const error; fmt: force full path to consts 2021-01-24 10:01:13 +01:00
fnetX (aka fralix)
69e6ba7a64
math: small typo in math.fractions (#8298) 2021-01-24 09:37:00 +01:00
Lukas Neubert
522eac200f
fmt: keep arr << if x {} else {} on a single line (#8289) 2021-01-24 08:02:35 +01:00
Uwe Krüger
79b4b0e6c8
parser: assure explicit map init contains no parameters (#8299) 2021-01-24 01:06:43 +02:00
Adelar da Silva Queiróz
1f99d1e025
strconv: some corrections of typos (#8302) 2021-01-24 00:00:31 +02: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
Tomas Hellström
39e5f6e9df
x.websocket: websocket server fix and bring back server autobahn (#8291) 2021-01-23 16:56:38 +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
Larpon
bce6a35e8f
crypto: add missing documentation to all pub functions (#8251) 2021-01-23 13:33:49 +01:00
Uwe Krüger
38880b23eb
checker: allow a[i] for shared arrays outside unsafe (#8292) 2021-01-23 13:33:32 +01:00
yuyi
b8857baa98
parser: fix map_init position (#8293) 2021-01-23 13:33:19 +01:00
R cqls
749d6133a1
v.pkgconfig: handle paths to local .pc files too (needed for homebrew) (#8290) 2021-01-23 13:09:53 +02:00
Alexander Medvednikov
ba2a15c9d7 parser: fix const check 2021-01-23 10:46:00 +01:00
yuyi
5ee3fecf60
checker: check for mut val in immutable obj (#8285) 2021-01-23 10:40:17 +01:00
Delyan Angelov
d4f6f5eec4
sokol,fontstash: move f_d_use_freetype.v to vlib/fontstash/a_d_use_freetype.v 2021-01-23 11:39:17 +02:00
Alexander Medvednikov
c21f57ff59 os: vfmt os.v 2021-01-23 10:33:53 +01:00
Alexander Medvednikov
45cc3ec664 sokol: remove an absolute import 2021-01-23 10:32:00 +01:00
Alexander Medvednikov
d991712b3c gg: native rendering mode on macOS 2021-01-23 10:25:43 +01:00
Delyan Angelov
a3908414e4
pref: fix handling of _d_custom.v files, use it in vlib/sokol/f/f_d_use_freetype.v 2021-01-23 11:21:56 +02:00
Lukas Neubert
8b61891348
fmt: smarter if condition wrapping (#8201) 2021-01-23 10:33:22 +02:00
zakuro
9812230847
checker: make the no-body main function a checker error (#8211) 2021-01-23 10:30:26 +02: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
Louis Schmieder
e06e8b10cd
orm: fix empty struct and simplify (#8246) 2021-01-22 23:28:26 +01:00
Daniel Däschle
dbf84520f1
all: update assoc syntax (#8274) 2021-01-22 23:24:48 +01:00
Tomas Hellström
970c03987d
ci: temporarily comment the server tests for autobahn (#8272) 2021-01-22 22:30:53 +02:00
Larpon
981b42125f
encoding: document all of the encoding.base64 module (#8276) 2021-01-22 22:29:05 +02:00
Emeric MARTINEAU
081e3c46b4
cli: allow flag to be set multi time (#8256) 2021-01-22 19:03:02 +02:00
Larpon
f2c6735d92
crypto: make Digest.sum() and Digest.write() private in md5 and sha1 (#8270) 2021-01-22 14:14:31 +01:00
Daniel Däschle
500ebf77e4
all: implement multiple generics (#8231) 2021-01-22 13:49:56 +01:00
Delyan Angelov
b10b76bb0d
parser: remove the 'non-string keys are work in progress' warning 2021-01-22 12:25:17 +02:00
Alexander Medvednikov
46cdf4f1ff 0.2.2 2021-01-22 10:39:44 +01:00
Alexander Medvednikov
43d56cb883 string: update the test 2021-01-22 10:33:06 +01:00
Alexander Medvednikov
216fea1eb3 string: remove left/right (one way!) 2021-01-22 10:26:07 +01:00
Alexander Medvednikov
5815d96418 Revert "builtin: make string.(left|right) pub (#8245)"
This reverts commit 820e684313.
2021-01-22 10:09:31 +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
zakuro
1b09954622
parser: improve the position of mut receiver warning / error (#8240) 2021-01-22 09:38:37 +02:00
Uwe Krüger
925ffd76f4
sync/channels: expose ch.closed as bool pseudo attribute (#8244) 2021-01-22 09:37:29 +02:00
zakuro
820e684313
builtin: make string.(left|right) pub (#8245) 2021-01-22 09:35:32 +02:00
yuyi
d44c632d11
cgen: fix innermost value of map fixed array (fix #8214) (#8247) 2021-01-22 09:32:56 +02:00
zakuro
522d875489
checker: make it an error, to use ident outside of anon fn (#8232) 2021-01-22 09:24:49 +02:00
shadowninja55
a569dc17e8
gg: allow fonts loaded with $embed_file() to be used (#8263) 2021-01-21 23:07:47 +02:00
Daniel Däschle
3ee7bc960f
checker/gen: fix smartcast pointer sumtype (#8260) 2021-01-21 22:31:25 +02:00
Louis Schmieder
6b1956fb60
checker: fix warning at comptime call (#8248) 2021-01-21 21:36:11 +02:00
Louis Schmieder
0d204603d1
gen: fix generic comp time if (#8254) 2021-01-21 21:17:44 +02:00
Louis Schmieder
d8c94cd1fd
vweb: make multipart Content-Type header detection case-insensitive (#8255) 2021-01-21 21:16:25 +02:00
Daniel Däschle
6c24e9ba84
tests: automatically add an .out file if not found, with VAUTOFIX=1 (#8250) 2021-01-21 15:48:57 +02:00
yuyi
f399c17e3d
parser: check for_in mut key (#8235) 2021-01-21 12:46:15 +01:00
Larpon
62c2168b0b
clipboard: document all pub functions, adhere to vdoc style (#8243) 2021-01-21 12:45:59 +01: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
zakuro
29b3077ea1
checker: make negative literal index a checker error (#8242) 2021-01-21 13:27:16 +02:00
zakuro
f413c92f2f
v.util: fix bug of mod_path_to_full_name (#8236) 2021-01-21 13:24:32 +02:00
Louis Schmieder
4045ec1ca8
checker: remove vweb unused vars (#8180) 2021-01-21 11:09:19 +01:00
Louis Schmieder
f7c251f8f3
vweb: add multipart/form-data parser and file upload (#8160) 2021-01-21 11:08:51 +01:00
Louis Schmieder
b44ec4921f
vweb: make vweb async (#8095) 2021-01-21 11:08:38 +01:00
zakuro
0c249fa040
parser: improve anon fn pos (#8210) 2021-01-21 11:01:40 +01:00
Markus F.X.J. Oberhumer
d97543605b
pkgconfig: add support for Fedora and CentOS Linux. (#8237) 2021-01-21 11:41:16 +02:00
yuyi
242c5760f1
array: fix array_clone (fix #8220) (#8238) 2021-01-21 10:17:00 +01:00
spaceface
f059a9e96c
builtin: fix sorting arrays of primitives (#8204) 2021-01-20 23:19:35 +02:00
yuyi
190bb38087
checker: check fixed array size (#8224) 2021-01-20 23:17:49 +02:00
Larpon
c212b4d180
cli: add missing documentation to all pub functionality (#8226) 2021-01-20 23:15:48 +02:00
Enzo
55efd8309a
parser: fix parsing interface methods with varargs (#8229) 2021-01-20 23:15:02 +02:00
Delyan Angelov
94b5e47ba8
ci: fix compilation of projects cloned inside the main repository 2021-01-20 22:44:18 +02:00
Delyan Angelov
071549baae
v.util: fix an out of bounds panic in mod_path_to_full_name/2 2021-01-20 18:22:58 +02:00
Delyan Angelov
d92f5c55ba
net: use mut and refs as receivers consistently (#8205) 2021-01-20 11:11:01 +01:00
Alexander Medvednikov
158aefc37f sqlite: create_table() 2021-01-20 09:30:26 +01: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
Delyan Angelov
b3a4f746a2
clipboard: use a nicer error when X11/Xlib.h is missing 2021-01-19 20:47:09 +02:00
yuyi
985ef52872
cgen: fix child struct's default values not assigned (#8202) 2021-01-19 17:10:22 +01:00
Delyan Angelov
d9532eda30
checker: error on a.slice(x,y) outside builtin 2021-01-19 15:55:52 +02:00
Tim Basel
129eee346b
fmt: keep single empty lines (#8189) 2021-01-19 14:49:40 +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
Lukas Neubert
ca70d815b6
fmt: move StructDecl comments handling into functions (#8191) 2021-01-19 10:43:48 +01:00
Tomas Hellström
da93666cd8
x.websocket: bring back shift operators (#8197) 2021-01-19 10:42:59 +01: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
Delyan Angelov
24d1ec2714
vfmt: support a[i] or { panic(err) } too 2021-01-19 08:42:56 +02:00
Delyan Angelov
7037965973
parser: cleanup unused p.os_from_string 2021-01-19 08:33:03 +02:00
Lukas Neubert
b44c08aff0
fmt: wrap match branch expressions (#8190) 2021-01-19 06:16:42 +01: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
Tomas Hellström
874885c87d
x.websocket: fix weird shift operator bug in clang -prod flag (#8192) 2021-01-19 05:49:37 +01:00
Uwe Krüger
5cc591b2b6
all: support generic chan (#8188) 2021-01-18 18:37:45 +01:00
Swastik Baranwal
6f1ae65811
parser: add a warning for only else branch in match (#8185) 2021-01-18 18:31:36 +02:00
Delyan Angelov
f375418847
parser: remove forgotten eprintln statement 2021-01-18 14:57:10 +02:00
Lukas Neubert
ac2c3847af
all: update copyright to 2019-2021 (#8029) 2021-01-18 13:20:06 +01:00
Louis Schmieder
38881e4b20
vweb: Implement chunked encoding transfer (#8179) 2021-01-18 13:04:21 +01:00
yuyi
5ddb70940e
cgen: fix map_fixed_arrays str error (fix #8170) (#8178) 2021-01-18 10:34:29 +01:00
Delyan Angelov
17266ecb07
tools: support cmd/tools/.disable_autorecompilation in v up and v self too 2021-01-18 09:33:33 +02:00
Delyan Angelov
72790cda83
v.util: support cmd/tools/.disable_autorecompilation 2021-01-18 08:43:20 +02: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
Lukas Neubert
16c9cbce7c
fmt: correctly increase f.line_len for write_indent (#8174) 2021-01-18 06:02:29 +01:00
Delyan Angelov
2677fcdf0c
time: add some tolerance for windows's minimum 1ms sleep resolution 2021-01-17 19:16:08 +02:00
Delyan Angelov
3ee78dc961
term: add term.colorize/2, use it in the tests. Support ConEmuANSI = ON too. 2021-01-17 19:09:29 +02: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
Swastik Baranwal
334b66b311
checker/cgen: add checks and fix cgen for [typedef] for C structs (#8169) 2021-01-17 17:18:07 +02:00
Uwe Krüger
e4850cd6dd
cgen: fix for iteration over fixed array literal (#8159) 2021-01-17 10:44:15 +01:00
Alexander Medvednikov
a008c8254c parser: comptime: update tmpl_path 2021-01-17 06:42:21 +01:00
Alexander Medvednikov
ac8a7ac901 parser: bootstrap the new struct init check 2021-01-17 06:30:30 +01:00
Alexander Medvednikov
2b058edc98 checker: do not require ref field init with update expr 2021-01-17 06:24:03 +01:00
Nick Treleaven
df39e7001c
parser: support module: for immutable private struct fields (#8140) 2021-01-17 05:39:44 +01:00
Tim Basel
d16721e5b8
cli: remove flags.get_*_or variants (#8102) 2021-01-17 05:33:39 +01:00
Larpon
512f62b7a1
android: enable custom (e)println output via android log system (#8135) 2021-01-17 05:32:59 +01:00
yuyi
9376c57a51
cgen: fix for_in_mut_val (fix #8087) (#8129) 2021-01-17 05:32:34 +01:00
Lukas Neubert
3e44816e44
fmt: minor code cleanup (#8147) 2021-01-17 05:32:10 +01:00
Nick Treleaven
5185a59ac7
parser: use Parser.builtin_mod instead of checking p.mod (#8137) 2021-01-17 05:31:41 +01:00
Nick Treleaven
8ee67d1c1c
parser: disallow indexing on next line at top-level (#8128) 2021-01-17 05:30:41 +01:00
Lukas Neubert
371730f8a8
fmt: correct indent for StructDecl multi line default exprs (#8148) 2021-01-17 05:01:55 +01:00
Swastik Baranwal
ef627c9d21
checker: improve message and positioning for operator overloading (#8133) 2021-01-17 03:37:44 +01:00
penguindark
ee9f9c9d81
x.ttf: add README, some improvements (#8157) 2021-01-17 03:11:47 +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
d258733752
pkgconfig: add more .pc sample files. abc,xyz => abc xyz in Requires: 2021-01-16 18:03:01 +02:00
Delyan Angelov
5c3ef588c3
live: move to vlib/v/live 2021-01-16 15:05:01 +02:00
Delyan Angelov
8571d9395b
preludes: move to vlib/v/preludes 2021-01-16 14:43:24 +02:00
Delyan Angelov
80d1aadc50
ci: fix check-markdown for vlib/v/pkgconfig/README.md 2021-01-16 14:34:14 +02:00
Delyan Angelov
1a8a1ceb0a
pkgconfig,flag: add tests to pkgconfig, fix bugs and links, improve flag.usage() 2021-01-16 12:04:31 +02:00
Daniel Däschle
53941c4a0a
fmt: fix if cond break readability (#8132) 2021-01-16 02:12:17 +01:00
Uwe Krüger
2f7a66386e
docs: document go with handle and wait() (#8142) 2021-01-15 23:40:26 +02:00
penguindark
1d1fda9522
x.ttf: fix for the MSVC get_string pointer issue (#8139)
* fix tab and spaces in indentation

* fix for glyph not found error

* fix for get_String in ttf.v pointer problems with MSVC

* avoid second return in get_string

* move from u32 to u64 to byteptr in 64 bit systems
2021-01-15 20:40:56 +02:00
Delyan Angelov
c4c4b9c7b1
gen,checker: implement g.trace/2 and c.trace/2, similar to p.trace/2 2021-01-15 20:28:53 +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
Delyan Angelov
995f27a7c0
builtin,os: use more precise C. declarations for C.fread, C.fwrite and C.qsort 2021-01-15 12:15:31 +02:00
BigBlack
80008a40e2
fix fixed_array slice ommit high_value (#8025) 2021-01-15 10:28:20 +01:00
Lukas Neubert
57dd511c9d
fmt: move all exprs and stmts to their own methods (#8107) 2021-01-15 10:26:33 +01:00
yuyi
0945efebf1
cgen: fix anon_fn_call (#8120) 2021-01-15 10:25:30 +01:00
yuyi
c6099df418
cgen: fix c struct str method (#8117) 2021-01-15 07:51:28 +01:00
Lukas Neubert
20c80db426
fmt: move comments related methods to extra file (#8028) 2021-01-15 07:51:07 +01:00
Swastik Baranwal
0ca36aafe2
cgen: allow assignment operators for type aliases (#8086) 2021-01-15 02:27:19 +01:00
yuyi
aeddd5b559
string: minor optimization (fix #8100) (#8106) 2021-01-15 02:26:06 +01:00
Nick Treleaven
c80cc917c7
checker: check casting struct -> interface; disallow casting struct -> interface pointer (#8110) 2021-01-15 01:20:58 +01:00
zakuro
c39f0a7cb7
ast: add str for AssertStmt (#8021) 2021-01-15 00:17:26 +01:00
Nick Treleaven
127503c77d
checker: disallow indexing a voidptr (#8109) 2021-01-14 20:51:43 +02:00
Nick Treleaven
890fb2d09d
checker: show signature for interface method on error (#8111) 2021-01-14 20:50:06 +02: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
Delyan Angelov
9003ea7ca3
builtin: fix a warning for -d debug_realloc 2021-01-14 12:28:49 +02:00
Delyan Angelov
ca5f88eb7d
builtin: implement -d debug_realloc 2021-01-14 11:41:52 +02:00
Delyan Angelov
adf084eeed
cgen: fix address violations for return error(abc), reduce leaks in os 2021-01-14 04:58:26 +02:00
yuyi
a2efb5319d
all: change [1,2,3]!! to [1,2,3]! (#8101) 2021-01-14 03:51:13 +01:00
zakuro
c8bcee9639
ast: add str for comment (#8019) 2021-01-14 02:21:27 +01:00
zakuro
fdf5f5003b
ast: add str for ArrayInit (#8022) 2021-01-14 02:21:19 +01:00
Nick Treleaven
0f2a770b9c
checker: improve errors for interface method compatibility (#8097) 2021-01-13 23:44:29 +01:00
zakuro
47536df2d0
table: remove nr_dims from Array (#8053) 2021-01-13 23:43:19 +01:00
yuyi
1d28c4de2a
cgen: fix multi fixed arrays with default init (fix #8038) (#8064) 2021-01-13 22:57:33 +02:00
Delyan Angelov
0d25091afd
tests: fix random color mismatches in the CI 2021-01-13 21:27:30 +02:00
Delyan Angelov
349eb95a28
time: comment .local() in time_windows.c.v too 2021-01-13 21:27:30 +02:00
Lukas Neubert
8a8978fb01
fmt: keep same line comments after arr.sort() in vsh files (#8026) 2021-01-13 20:10:17 +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
crthpl
70ad49e186
time: complete doc (#8070) 2021-01-13 16:30:54 +02:00
zakuro
204cc5fb01
ast: add case for Import in fn (node Stmt) str() 2021-01-13 15:56:48 +02:00
zakuro
4923048d95
ast: add case for ConstDecl in fn (node Stmt) str() (#8073) 2021-01-13 15:54:41 +02:00
Ruofan XU
245ed9160a
gen: fix mut arr [3]int as a fn argument (#8085) 2021-01-13 15:52:46 +02:00
Lukas Neubert
219486f0a5
fmt: cleanup ' and " quotes handling (#8082) 2021-01-13 11:09:03 +02:00
Daniel Däschle
a22982d662
tests: colorize failing tests, improve layout (#8066) 2021-01-13 11:07:12 +02:00
zakuro
4cd50ed566
scanner: remove debug_tokens (#8078) 2021-01-13 08:33:37 +01:00
yuyi
ae592299dc
cgen: fix fixed arrays literal eq (#8079) 2021-01-13 08:32:41 +01:00
yuyi
7458b699d0
fmt: change [1,2,3]!! to [1,2,3]! (#8081) 2021-01-13 08:32:17 +01: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
zakuro
254df0ca62
fmt: improve string quotes (#8075) 2021-01-13 06:05:27 +01:00
zakuro
3e3d45b2b1
parser: improve array init warning (#8024) 2021-01-13 06:03:23 +01:00
zakuro
e8ab79205f
ast: add str for Module (#8072) 2021-01-13 06:00:53 +01:00
Swastik Baranwal
1e853b0efc
cgen: implement argument operator overloading (#8067) 2021-01-13 03:31:14 +01:00
Lukas Neubert
0e490766df
fmt: do not move single line block comments to previous line (#8046) 2021-01-13 03:30:24 +01:00
yuyi
03a0534483
all: change fixed array init from [1,2,3]!! to [1,2,3]! (#8068) 2021-01-13 03:28:53 +01:00
Delyan Angelov
ef18fb837c
net.urllib: workaround an autofree bug for if cond && opt() { 2021-01-12 16:29:04 +02:00
Daniel Däschle
3289dff7ff
checker: require explicit return none (#8060) 2021-01-12 11:43:55 +01:00
yuyi
33976246c8
cgen: format the generated c code of arrays map and filter (#8016) 2021-01-12 04:39:09 +01:00
zakuro
33694665f0
fmt: align each contiguous field of struct. not the whole. (#7981) 2021-01-12 04:38:43 +01:00
Swastik Baranwal
82a5300044
cgen: allow sort with< and > op overloading (#8042) 2021-01-12 04:38:12 +01:00
Swastik Baranwal
5a1699dec2
checker: add more checks for operator overloading (#8030) 2021-01-12 04:37:20 +01:00
yuyi
1559e72d0d
cgen: add gen_fixed_array_equality_fn (#8006) 2021-01-12 01:35:18 +01:00
penguindark
55e3e50b9b
ttf: improvement on not found glyphs (#8050) 2021-01-12 00:49:58 +01:00
Uwe Krüger
5f95dd54bd
builtin: rename any_* -> *_literal - 2. part (#8032) 2021-01-11 22:58:15 +01:00
Uwe Krüger
91f87c03cf
all: rename any_* -> *_literal - 1. part (#8031) 2021-01-11 22:20:16 +01:00
Lukas Neubert
5d6e9f7bf9
fmt: fix rare extra tab after a SumType (#8035) 2021-01-11 22:19:42 +01:00
yuyi
72317975fc
cgen: minor cleanup of gen_assert_stmt() (#8018) 2021-01-11 09:05:15 +01:00
Tomas Hellström
cc17f145c5
websocket: make compile with autofree (#8023) 2021-01-11 09:03:10 +01:00
yuyi
a1c67232d0
checker: fix duplicate variable name (fix #265) (#7982) 2021-01-10 21:41:29 +01:00
yuyi
39bb6f0491
array: fix array of multi filter/map in one assignment (fix #7858) (#7976) 2021-01-10 21:08:45 +01:00
zakuro
c1b1ec9005
fmt: keep same line comment in array init (#7980) 2021-01-10 21:06:48 +01:00
zakuro
2103d9a6c4
fmt: keep new line at both ends of block comment (#8003) 2021-01-10 21:06:29 +01:00
Swastik Baranwal
8f4238e76a
time: use operator overloading for >= and <= (#8009) 2021-01-10 21:05:05 +01:00
Lukas Neubert
a8378273a5
fmt: fix too many \n if file has only imports (#8012) 2021-01-10 21:19:31 +02:00
yuyi
a97ed55a09
checker: check for an unknown struct name (fix #8007) (#8010) 2021-01-10 21:16:53 +02:00
Delyan Angelov
692a718428
examples: use os.resource_abs_path, so v run examples/ttf_font/example_ttf.v works 2021-01-10 20:36:50 +02:00
penguindark
c067cc0357
vlib: add a TTF font loader and render in x.ttf (#7995) 2021-01-10 20:14:41 +02:00
Delyan Angelov
a0b8191a94
net: cleanup unused time imports in tests 2021-01-10 18:59:06 +02:00
Larpon
93ad595ffb
vet: add suggestions for function documentation (#7890) 2021-01-10 18:48:39 +02:00
Lukas Neubert
d96a1b8a5f
fmt: intelligent newlines for trailing arg syntax (#7748) 2021-01-10 17:39:37 +01:00
Delyan Angelov
722a603222
cgen: fix os.args initialization, so that const x = os.args[0] works 2021-01-10 15:17:24 +02: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
Lukas Neubert
73bd63d69d
token: remove // from comment kind string (#7992) 2021-01-10 12:19:59 +02:00
Lukas Neubert
31753f581f
ast: remove redundant InfixExpr.str() (#7993) 2021-01-10 12:19:14 +02:00
pancake
0e016baa34
v.pkgconfig: support Requires.private; handle double spaces in pkgconfig files (#7994) 2021-01-10 12:14:41 +02:00
yuyi
704f38d87f
parser: fix multi fixed arrays init (#7996) 2021-01-10 06:58:31 +01:00
Daniel Däschle
a8dd13f086
parser: change array decompose syntax (#7965) 2021-01-09 22:48:23 +01:00
Lukas Neubert
e79695e8fc
fmt: keep comments after call_expr in vscript (#7990) 2021-01-09 22:47:33 +01:00
Delyan Angelov
561d4f84b3
tests: remove tmp files on OK live_test.v run 2021-01-09 20:56:02 +02:00
zakuro
407da09acf
ast: add str for EnumDecl (#7977) 2021-01-09 19:49:27 +01:00
Delyan Angelov
aa37382e8d
tools: let v fmt use VTMP too, stabilise v test-cleancode 2021-01-09 20:41:15 +02:00
Larpon
8f315d226b
vvet: move to own subdir, prepare richer suggestions (#7989) 2021-01-09 16:11:49 +02:00
Delyan Angelov
7545ed4121
ci: fix union field warnings in clipboard module 2021-01-09 11:37:40 +02:00
Don Alfons Nisnoni
d645e45752
mysql: add more documentation (#7846) 2021-01-09 10:40:21 +02:00
Ned Palacios
256ddcee1f
v.ast: add walker submodule for ast walking (#7775) 2021-01-09 05:36:38 +01:00
Uwe Krüger
eff757d0a1
cgen: fix address violations for error propagation (#7972) 2021-01-09 02:43:48 +01:00
Daniel Däschle
bbac95a438
parser: error on recursive struct (#7964) 2021-01-09 01:33:36 +01:00
Nick Treleaven
141b0cb882
checker: fix warning & allow assigning to a union field without unsafe (#7970) 2021-01-09 01:32:33 +01:00
zakuro
8d3069f643
parser: avoid value receiver (#7975) 2021-01-09 01:32:08 +01:00
Delyan Angelov
dff36a9947
cgen: fix small g.is_autofree && [manualfree] problem 2021-01-08 23:24:26 +02:00
Uwe Krüger
29c2240aef
fmt: enable or block for ch <- x (#7969) 2021-01-08 21:39:21 +01:00
Daniel Däschle
687b152318
gen: fix generation of comptime if T is (#7971) 2021-01-08 19:39:58 +02:00
Uwe Krüger
cbe7740d97
fmt: do not generate import statements for auto imports (#7966) 2021-01-08 17:42:40 +01:00
Swastik Baranwal
9291fb5e0c
checker: disallow comparison between enum and int (#7886) 2021-01-08 17:41:52 +01:00
Delyan Angelov
46a5c487c1
parser,fmt: implement [manualfree] module abc for opting out *all* fns in a given .v from autofree 2021-01-08 17:24:42 +02:00
Delyan Angelov
083dc23db8
gen: implement a [manualfree] tag, for functions, that want to do their own memory management 2021-01-08 16:22:27 +02:00
Hitalo de Jesus do Rosário Souza
cad4c5ee37
gx: add .rgba8(), .bgra8(), .abgr8() methods to gx.Color (#7911) 2021-01-08 13:40:03 +02:00
yuyi
a481c1785b
log: fix log_to_file (#7955) 2021-01-08 12:26:37 +02:00
yuyi
828120a918
checker: check unknown generic type (#7954) 2021-01-08 07:04:06 +01:00
Alexander Medvednikov
0998cbaaba vweb: fix routing test 2021-01-08 05:59:23 +01:00
Alexander Medvednikov
1b07710ab3 vweb: make html() return Result 2021-01-08 05:05:29 +01:00
Alexander Medvednikov
352cf91ba2 vweb: remove return vweb.Result{} everywhere 2021-01-08 04:57:02 +01:00
Alexander Medvednikov
e3f8d448c1 all: [noinit] struct attribute 2021-01-08 04:49:16 +01:00
Daniel Däschle
1ce93536d0
checker: fix panic in generic methods (#7944) 2021-01-08 00:50:59 +01:00
Lukas Neubert
653121bad9
fmt: test bin2v output formatting (#7926) 2021-01-07 21:36:59 +01:00
Daniel Däschle
88d18f3303
checker: smartcast in for loops (#7942) 2021-01-07 21:35:32 +01:00
zakuro
226c918bdd
cli: make execute_help pub (#7938) 2021-01-07 20:33:15 +01:00
Nick Treleaven
cbefe6c32f
parser: warn about old use of typeof (#7923) 2021-01-07 20:32:02 +01:00
zakuro
a2add15558
ast: add params info to str of FnDecl (#7933) 2021-01-07 20:25:55 +01:00
Larpon
41e9a769e9
doc: fix README embedding (#7929) 2021-01-07 20:25:29 +01:00
zakuro
af1d28dee7
ast: add str for StructDecl (#7934) 2021-01-07 20:25:04 +01:00
yuyi
ad79d55a5c
ftp: fix an error (#7930) 2021-01-07 20:21:47 +01:00
yuyi
2ad2d68d7c
json: fix decoding of null map/array (#7936) 2021-01-07 20:21:22 +01:00
Daniel Däschle
085085a2b9
parser: fix sumtype match with array type (#7939) 2021-01-07 20:12:35 +01:00
Alexander Medvednikov
15ba53be21 checker: handle different pointer levels 2021-01-07 07:36:11 +01:00
Delyan Angelov
9593ad20f9
v.util: extend launch_tool with auto recompilation of a folder with several .v files too 2021-01-06 23:48:38 +02:00
Uwe Krüger
ffd753abdc
all: implement ch <- x or {...} and ch <- x ? (#7928) 2021-01-06 21:19:40 +01:00
Larpon
30a2f125ef
doc: add comment example support (#7924) 2021-01-06 19:43:43 +01:00
Hitalo de Jesus do Rosário Souza
ea4981df90
vweb.tmpl: update README.md with @js directive (#7791) 2021-01-06 20:05:32 +02:00
Daniel Däschle
a8e4d1df40
cgen: fix match comparing with ident of type string (#7921) 2021-01-06 20:03:50 +02:00
Larpon
dcc8310bd0
builtin: fix comment examples in int.v (#7902) 2021-01-06 20:02:04 +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
yuyi
f751271e4e
ftp: fix error of ftp.connect() (fix parts of #7914) (#7915) 2021-01-06 19:53:25 +02:00
Daniel Däschle
8a0fc2e3c2
parser: proper error when declaring struct embedding at the wrong pos (#7920) 2021-01-06 15:46:36 +01:00
Tomas Hellström
f9a873736e
x.websocket: server broadcast plus examples (#7922) 2021-01-06 15:43:54 +01:00
Daniel Däschle
42e60b8e27
vweb: fix array.last usage (#7905) 2021-01-06 01:24:36 +01:00
Larpon
e219f954d8
builtin: document all functions in float.v (#7904) 2021-01-05 23:01:10 +01:00
Alexander Medvednikov
5c4c4354b1 byte: more tests 2021-01-05 19:34:42 +01:00
Alexander Medvednikov
3722e16073 builtin: fix byte.str() (part 2) 2021-01-05 19:26:50 +01:00
Nick Treleaven
7a6b160d63
checker: fix indexing a type alias instance (#7889) 2021-01-05 19:17:18 +01:00
Alexander Medvednikov
5a70eba8e1 all: byte.str() => byte.ascii_str() 2021-01-05 19:14:37 +01:00
Larpon
fdb6f1ab50
builtin: int.v workaround vfmt bug (#7899) 2021-01-05 20:09:20 +02:00
Nick Treleaven
8fc33bc27d
checker: warn when casting number or a voidptr to reference type outside unsafe (#7900) 2021-01-05 20:07:45 +02:00
Alexander Medvednikov
3e04dfc79f builtin: fix byte.str() (part 1) 2021-01-05 18:59:51 +01:00
Delyan Angelov
95431cf6b0
builtin: fix the comment example in byte.str_escaped() 2021-01-05 18:22:17 +02:00
yuyi
10e7045bee
cgen: fix array/fixed_array_rune_str (#7881) 2021-01-05 18:16:55 +02:00
Daniel Däschle
c137a79666
checker: check if $if left is selector expr (#7897) 2021-01-05 18:14:55 +02:00
Larpon
9b9cab92f0
builtin: document all functions in int.v (#7896) 2021-01-05 17:45:36 +02:00
yuyi
9d9ca0ab5e
builder: auto cleanup xxx.def generated by tcc on windows (#7878) 2021-01-05 17:07:07 +02:00
Nick Treleaven
3203a124b2
checker: warn when casting between reference types outside of unsafe (#7892) 2021-01-05 17:02:04 +02:00
Lukas Neubert
eaba21d81a
fmt: keep the shebang header in vsh files (#7893) 2021-01-05 16:14:16 +02:00
Daniel Däschle
5841d5d8e1
all: implement basic comptime field selector (#7888) 2021-01-05 16:11:43 +02:00
zakuro
e19277352b
cli: add Command.setup() (#7850) 2021-01-05 13:25:25 +02:00
Swastik Baranwal
7c290a7fe8
time: use operator overloading (#7882) 2021-01-05 12:43:34 +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
Nick Treleaven
2fc50a4045
cgen: fix 32-bit voidptr for map key (#7759) 2021-01-05 02:59:01 +01:00
zakuro
3dae44db73
checker: do not allow empty enums (#7848) 2021-01-05 01:46:32 +01:00
Nick Treleaven
c0e56d10c3
parser: add errors for invalid anonymous function (#7786) 2021-01-05 01:32:24 +01:00
Daniel Däschle
9f74be4cf6
vweb: route to index dynamically (#7782) 2021-01-05 01:30:27 +01:00
zakuro
a7a8e659f6
fmt: keep generic type in method call (#7874) 2021-01-05 01:29:58 +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
Nick Treleaven
040b923665
checker: warn when accessing union fields outside unsafe (#7869) 2021-01-04 21:44:37 +02:00
Daniel Däschle
7c9fb73b3f
vfmt: fix comments before ...f in Abc{...f} (#7870) 2021-01-04 21:01:35 +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
clubby789
0ab6a8cd01
os: add a posix_set_permission_bit function (#7754) 2021-01-04 19:57:17 +02:00
yuyi
46d311dcc4
generic: fix return multi array generic (fix #7727 #7753) (#7855) 2021-01-04 18:40:53 +02:00
Don Alfons Nisnoni
7533ffa48f
mysql: add README.md (#7824) 2021-01-04 18:37:10 +02:00
yuyi
52521554ce
time: fix parse_iso8601 on windows (#7853) 2021-01-04 18:26:21 +02:00
Nick Treleaven
b9c6011602
parser: support casting to a pointer to array (#7861) 2021-01-04 18:22:04 +02:00
Delyan Angelov
22085041f1
strconv: implement strconv.format_int(n, radix) and strconv.format_uint(n,radix) 2021-01-04 16:02:13 +02:00
Delyan Angelov
3a357d9718
gg: add examples/gg/stars.v 2021-01-04 12:19:05 +02:00
Swastik Baranwal
21d5db43af
cgen: do not generate != and == for C types (#7856) 2021-01-04 08:57:31 +01:00
Daniel Däschle
43adbf4b66
cgen: fix filter in map (#7844) 2021-01-04 01:04:53 +01:00
Alexander Medvednikov
baae302894 cc: use -g instead of -g3 2021-01-04 00:15:27 +01:00
Delyan Angelov
f2bfda4989
ci: skip test_utf8_wide_char on windows with msvc 2021-01-04 00:16:31 +02:00
Uwe Krüger
4a25c2bb6f
types: rename any_*, untyped * -> * literal (#7845) 2021-01-04 00:11:09 +02:00
Delyan Angelov
9b43b6833b
ci: fix clipboard_test.v on windows 2021-01-03 23:46:08 +02:00
Delyan Angelov
760de7c811
ci: use more reliable asserts for test_utf8_wide_char 2021-01-03 22:15:18 +02:00
Delyan Angelov
d86304b7d0
v.table: use the user readable names inside type_to_str_using_aliases for any_int and any_float 2021-01-03 22:15:18 +02:00
zakuro
dd516858d4
fmt: align struct field comments (#7632) 2021-01-03 21:10:25 +01:00
Delyan Angelov
ff1156cddd
ci: run VAUTOFIX=1 ./v vlib/v/compiler_errors_test.v to fix ci failures 2021-01-03 19:03:20 +02:00
Delyan Angelov
745a7f8d8f
ci: run vfmt over checker.v and types.v 2021-01-03 19:02:33 +02:00
Delyan Angelov
c84d1841ea
tests: implement VAUTOFIX=1 ./v vlib/v/compiler_errors_test.v 2021-01-03 19:00:34 +02:00
Joe Conigliaro
70b921c49d
all: change any_int & any_flt display name 2021-01-04 03:20:52 +11:00
Alexander Medvednikov
89bbbe0ec0 vweb: vfmt vweb.v 2021-01-03 17:03:18 +01:00
penguindark
443ae1d76e
regex: fix a bug in find and find_all (#7839) 2021-01-03 16:59:00 +01:00
Enzo
9332f7cac2
checker: allow map method name (#7834) 2021-01-03 16:57:29 +01:00
yuyi
443bf44031
tests: fix ci error in vtest-fixed (fix #7827) (#7830) 2021-01-03 16:38:28 +01:00
Enzo
22e54e6703
fmt: fix formatting array decomposition (#7835) 2021-01-03 16:19:43 +01:00
Swastik Baranwal
9033099676
cgen: implement overriding of != and == (#7837) 2021-01-03 16:19:02 +01:00