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

10249 Commits

Author SHA1 Message Date
Delyan Angelov
5a2c271bd4
cgen: do not #include signal.h, on -os wasm32 and -d no_segfault_handler 2022-06-01 13:21:22 +03:00
yuyi
fefb9643b2
checker, cgen: fix array index optional with if expr (#14575) 2022-06-01 09:18:59 +03:00
Delyan Angelov
846ddfd728
v: always embed file data of \$embed_file(file) constructs, even without -prod, unless -d embed_only_metadata is given. 2022-06-01 09:08:18 +03:00
Alexander Medvednikov
f40c30c3dc cgen: fix goto label 2022-06-01 06:34:04 +03:00
Alexander Medvednikov
c54c9b817c cgen: c2v infix fix 2022-06-01 06:14:28 +03:00
Larpon
84e375e38a
toml: update readme with value_opt() usage (#14569) 2022-05-31 19:02:33 +03:00
yuyi
80cc88427b
scanner: minor cleanup in scanner.v (#14565) 2022-05-31 11:52:47 +03:00
playX
db34adaec8
builtin.js: fix string.int method (#14564) 2022-05-31 11:52:11 +03:00
Delyan Angelov
dc30089c74 v.util, v.builder: fix util.module_is_builtin on macos with -usecache 2022-05-31 09:30:45 +03:00
Ben
4ffdcf8058
os: add existing_path function (#14536) 2022-05-31 06:32:12 +03:00
Delyan Angelov
928dafeb6d
strconv: make f64_to_str_lnd1 public (fix building vlang/coreutils printf) 2022-05-30 22:14:22 +03:00
Delyan Angelov
fc64f09f0b
crypto.md5: improve performance of md5.blockblock_generic 2022-05-30 21:56:39 +03:00
Delyan Angelov
0f3b2c2ae7
builtin: use C.fwrite (buffered) for _write_buf_to_fd (#14558) 2022-05-30 19:15:05 +03:00
Delyan Angelov
58ebc0680e
builtin: fix sporadic linking failures on v -cc gcc -gc boehm examples/hello_world.v 2022-05-30 15:17:01 +03:00
yuyi
844ba2a177
checker: vfmt overload_return_type.vv (#14557) 2022-05-30 13:49:13 +03:00
Hunam
78d1b7f4ef
net.http: Response.text -> Response.body (#14478) 2022-05-29 20:27:18 +03:00
yuyi
2c5febe25e
scanner: fix string interpolation with inner curly braces (fix #12242) (#14553) 2022-05-29 19:28:23 +03:00
yuyi
79d861ad4f
parser: fix cast or dump arguments ending with comma (#14552) 2022-05-29 09:15:55 +03:00
Delyan Angelov
c006d5c242
cgen: add support for v -cmain SDL_main sdl_example.v 2022-05-28 21:16:48 +03:00
yuyi
c0ef6dbde8
cgen: fix cross assign in closure (#14549) 2022-05-28 20:47:54 +03:00
yuyi
7dcc19df55
ast: fix call_expr.str() with propagate_option or propagate_result (#14550) 2022-05-28 20:47:29 +03:00
Delyan Angelov
c6a6eb9a3c
ci: temporary workaround for cross assignment in a closure leading to cgen error 2022-05-28 13:21:59 +03:00
yuyi
b8e8768928
parser, cgen: fix cross assign with parentheses (#14545) 2022-05-28 12:02:17 +03:00
yuyi
a46cf10e92
checker: fix declare assign literal with closure (#14544) 2022-05-28 11:50:37 +03:00
Delyan Angelov
4894f61998
toml: add pub fn (d Doc) value_opt(key string) ?Any { and some tests for toml.parse_dotted_key/1 2022-05-28 09:18:18 +03:00
yuyi
a971b9a99a
parser: fix match expr case with struct init (#14538) 2022-05-27 18:51:40 +03:00
spaceface
52a3e5e780
cgen: fix a race condition in the closure implementation (#14532) 2022-05-27 17:35:02 +03:00
Delyan Angelov
f7995c8916
checker: fix error position in fn f() int { return 1,2 } 2022-05-27 16:53:24 +03:00
Louis Schmieder
a83ac948a0
orm: document & fix pg (#14533) 2022-05-26 22:53:09 +03:00
yuyi
b97ef09b2d
checker: cleanup checker.v (#14530) 2022-05-26 22:52:42 +03:00
Delyan Angelov
bb6ef8bba8
cgen: fix parallel cgen for json encoding of struct fields that have default values 2022-05-26 16:55:44 +03:00
Delyan Angelov
8c969efe6b
tests: make json_test.v less noisy, to see errors easier 2022-05-26 15:27:54 +03:00
Wertzui123
1017335365
x.ttf: fix typo in README (#14528) 2022-05-26 11:17:15 +03:00
yuyi
3849cdcecc
fmt: fix fn return types list ending with comma (#14529) 2022-05-26 04:20:22 +03:00
Delyan Angelov
410b57b2fa
all: add support for struct field deprecation (#14527) 2022-05-26 00:44:18 +03:00
Larpon
6c08af63ff
embed_file: rename debug_embed_file_in_prod -> force_embed_file (#14523) 2022-05-25 18:26:17 +03:00
yuyi
59e57f0c62
fmt: fix fmt of Ok<[]Token>{[]} (#14522) 2022-05-25 15:17:30 +03:00
kahsa
dd8c96f6bc
net.html: use -d debug_html instead of -g, prevent undesired output, while debugging user programs (#14521) 2022-05-25 11:23:56 +03:00
Delyan Angelov
31c234485a
cgen: split keys and values in generated new_map_init calls into separate lines 2022-05-25 10:26:17 +03:00
yuyi
e19ac0c4a7
checker: check fn call with argument mismatch (#14519) 2022-05-25 09:00:26 +03:00
yuyi
79a75c5ac0
parser: fix fmt error for json decode (#14520) 2022-05-25 08:59:22 +03:00
yuyi
0eb3f8854d
fmt: fix file with just imports (fix #14267) (#14513) 2022-05-24 20:14:08 +03:00
Ben
f431020764
os: minor clean ups on filepath.v (#14506) 2022-05-24 11:29:32 +03:00
yuyi
f35f7fe997
fmt: fix using rand.seed() when import rand and rand.seed (#14511) 2022-05-24 11:21:49 +03:00
yuyi
a5b98cb267
parser: check fn decl multi return types without parentheses (#14508) 2022-05-24 05:15:31 +03:00
yuyi
5ade39f8db
cgen: fix sizeof('str') and sizeof(r'str') (#14507) 2022-05-24 05:14:38 +03:00
Delyan Angelov
953ef1f8c9
pref: add support for -dump-files - and for -dump-modules - 2022-05-23 19:51:21 +03:00
Delyan Angelov
dda49fe735
v.builder: support -dump-c-flags with -cc msvc too 2022-05-23 18:29:39 +03:00
yuyi
a3c0a9b791
checker: minor optimization in fn_call() and method_call() (#14503) 2022-05-23 08:00:57 +03:00
yuyi
4ef9e2c05a
parser: fix sizeof(c'str') (fix #14499) (#14502) 2022-05-23 01:59:39 +03:00
Alexander Medvednikov
863eeca2e0 checker: vfmt checker.v 2022-05-23 00:12:37 +03:00
Daniel Däschle
5e95bdc451
checker: allow but deprecate propagating result as option (#14500) 2022-05-23 00:11:29 +03:00
yuyi
7f03b89611
checker: check method call argument type mismatch (#14496) 2022-05-22 22:16:46 +03:00
spaceface
ba859c584b
builtin: add static GC support on Windows with TCC (#14497) 2022-05-22 21:25:46 +03:00
Delyan Angelov
5328dabad1
time: simplify some very commonly used t.format methods 2022-05-22 21:09:49 +03:00
yuyi
1f3336c9d3
checker: fix map get anon fn value with mut argument (fix #14479) (#14493) 2022-05-22 16:28:53 +03:00
Alexander Medvednikov
245d28d57a checker: c2v infix fix 2022-05-22 14:53:21 +03:00
Daniel Däschle
d3ffd983c8
markused: add _result_ok (#14495) 2022-05-22 14:52:38 +03:00
Subhomoy Haldar
3647fb4def
rand: move dist functions to top module and PRNG interface; minor cleanup (#14481) 2022-05-22 13:21:52 +03:00
yuyi
50ab2cfd1a
fmt: fix 'strings' name variable call generate auto import (fix #9713) (#14485) 2022-05-21 15:01:58 +03:00
Delyan Angelov
0ceb16f285
v.builder: use /NOLOGO, when building cached object files with msvc 2022-05-21 12:56:24 +03:00
Delyan Angelov
c0dcc80e18
cgen: support -profile - for _test.v files too 2022-05-21 10:59:01 +03:00
Delyan Angelov
a7afb2d1eb
time: remove import math dependency, by implementing a simpler version of mceil 2022-05-21 02:04:17 +03:00
Ben
971c55cf30
os: add norm_path and abs_path function (#14435) 2022-05-21 01:16:29 +03:00
Daniel Däschle
efc5cab8c3
checker,cgen: allow result if guard (#14474) 2022-05-20 19:34:53 +03:00
Alexander Medvednikov
53c217fe5e cgen: do not generate _vinit() for translated .o code 2022-05-20 19:28:37 +03:00
Vincenzo Palazzo
17bba712bd
checker: ban unsafe pointer/fn comparison (#14462) 2022-05-20 18:30:16 +03:00
yuyi
28b0cbddad
parser: check error for script mode that define main function (fix #14467) (#14469) 2022-05-20 14:20:18 +03:00
yuyi
913164bc73
builtin: minor cleanup in string_interpolation.v (#14471) 2022-05-20 14:19:27 +03:00
yuyi
bf44572f30
fmt: fix chain calls with comments (#14470) 2022-05-20 11:47:44 +03:00
StunxFS
11bdb04d0c
json: fix struct field default value support (#14304) 2022-05-20 11:22:17 +03:00
Delyan Angelov
ca00b59b3f
tests: make potential failures in urllib_test.v more informative 2022-05-20 08:49:56 +03:00
David 'Epper' Marshall
120f31b4d9
math: update documentation (#14457) 2022-05-20 08:45:54 +03:00
David 'Epper' Marshall
23568f19da
url: fix parse (#14456) 2022-05-20 02:58:58 +03:00
crthpl
95d24e543d
checker, cgen: fix shared non-decl assignment (#14466) 2022-05-20 02:58:11 +03:00
yuyi
55e7daa2f9
cgen: simplify auto_str_methods.v (#14463) 2022-05-19 22:29:15 +03:00
crthpl
46f94e8d68
cgen: fix autostr of shared fields (#14455) 2022-05-19 17:00:27 +03:00
Daniel Däschle
a52fbc5e51
checker: forbid optional variable (#14460) 2022-05-19 16:04:44 +03:00
yuyi
3291c59ebf
cgen: minor cleanup in auto_str_methods.v (#14461) 2022-05-19 14:02:07 +03:00
Delyan Angelov
634e8c3624
vfmt: keep selective imported names used for generic calls 2022-05-19 12:48:43 +03:00
yuyi
15c62bc8e8
parser: improve error messages of 'for val in array' (#14459) 2022-05-19 11:53:27 +03:00
Delyan Angelov
a52590572f
tests: fix the push_work_on_channel.vv output 2022-05-19 11:30:36 +03:00
Delyan Angelov
3d5617c4fa
tests: re-add the disambiguated for (val in [TokenValue(+), TokenValue(-)]) { test 2022-05-19 08:31:03 +03:00
Delyan Angelov
809b1ca3b4
Revert "parser: fix 'val in array' as condition in for stmt (fix #14440) (#14451)"
This reverts commit b482c0512b.
2022-05-19 08:29:30 +03:00
yuyi
b482c0512b
parser: fix 'val in array' as condition in for stmt (fix #14440) (#14451) 2022-05-18 20:38:53 +03:00
Delyan Angelov
805a7d9713 ci: skip more .vv files on specific jobs 2022-05-18 20:04:59 +03:00
yuyi
5b96f7e8fd
checker: split up infix.v from checker.v (#14449) 2022-05-18 14:52:53 +03:00
yuyi
4cbfa884c5
cgen: fix another error for 'in array of sumtype' (#14448) 2022-05-18 14:39:35 +03:00
Delyan Angelov
f2447a4bd8
tests: do not use -prod for compiling .vv files in vlib/v/checker/tests/ and vlib/v/parser/tests/ 2022-05-18 13:39:57 +03:00
Delyan Angelov
2cc3b74e19
tests: cleanup compiler_errors_test.v using language features (chan), instead of raw sync.new_channel and unsafe { ch.push } calls 2022-05-18 13:39:56 +03:00
Larpon
9de0c725f6
checker: add test for empty #flag node, (fix #14291) (#14447) 2022-05-18 13:38:58 +03:00
Adam Oates
a786c58d0a
os: add fn user_names() (#14424) 2022-05-18 13:37:34 +03:00
yuyi
417a6dc506
cgen: fix error for 'in array of sumtype' (#14444) 2022-05-18 08:51:31 +03:00
Delyan Angelov
ed17779434
math.big: fix Integer.bit_len() when there are no digits in the number 2022-05-18 08:29:08 +03:00
Delyan Angelov
ebac3bebb1
pref: pass -v after a command, to the command only, do not set verbose mode on 2022-05-18 07:03:00 +03:00
playX
a608516b82
checker: c2v fixed array fix (#14436) 2022-05-18 02:35:05 +03:00
spaceface
b5fb848508
cgen: reduce the closure memory usage (#14437) 2022-05-18 02:34:51 +03:00
Delyan Angelov
4e56147223 ci: vfmt builtin_d_use_libbacktrace.c.v 2022-05-17 19:41:57 +03:00
Alexander Medvednikov
2a06290ac7 cgen: fix eq generation for translated code 2022-05-17 15:30:05 +03:00
Ned
db4b49a5ca
builtin: print libbacktrace output to stderr, on panics/segfault crash (#14434) 2022-05-17 14:56:34 +03:00
yuyi
020845f6c3
cgen: fix alias of array that has builtin method (#14432) 2022-05-17 12:26:26 +03:00
yuyi
d7b1e57186
v.builder: improve builder error messages (fix #14386) (#14421) 2022-05-17 12:12:20 +03:00
yuyi
60e817ff32
cgen: minor optimization in index_of_array/map() (#14429) 2022-05-17 12:08:44 +03:00
yuyi
d6aa85d059
parser: fix panic for parse invalid map type (#14431) 2022-05-17 12:05:10 +03:00
playX
7c6eaa8204
checker: allow to use [n]anyptr as [n]otherptr in check_types (c2v fix) (#14433) 2022-05-17 11:55:04 +03:00
Delyan Angelov
78ab3296c9
checker: fix orm bug, when a joined table field context replaced the original table field context 2022-05-17 11:45:17 +03:00
WoodyAtHome
02c8a6057c
builtin.string: new fn (s string) is_ascii() bool (#14418) 2022-05-17 08:01:03 +03:00
Alexander Medvednikov
d10f83ce15 cgen: fix c2v struct eq 2022-05-17 03:39:48 +03:00
playX
bc397bb0e1
checker: c2v array fix (#14426) 2022-05-17 00:08:41 +03:00
Delyan Angelov
32dd801201
checker: apply fix for ui suggested by spaceface 2022-05-16 21:33:02 +03:00
Delyan Angelov
9cb8bb2968
Revert "Revert "checker: allow using methods as vars when expecting a ctx arg (#14414)""
This reverts commit e5c7fe3006.
2022-05-16 21:29:47 +03:00
yuyi
c624de8523
cgen: fix struct field array index error (#14417) 2022-05-16 19:37:39 +03:00
Delyan Angelov
e5c7fe3006
Revert "checker: allow using methods as vars when expecting a ctx arg (#14414)"
This reverts commit 36bec823c2.
2022-05-16 14:19:33 +03:00
Delyan Angelov
39874ae168
clipboard: fix v -gc boehm run x.v, where x.v does c.paste() (fix #14281) 2022-05-16 12:54:30 +03:00
yuyi
d59f4e9479
ast, cgen: fix generic method with variadic generic argument (#14404) 2022-05-16 12:26:38 +03:00
yuyi
0ab4133128
cgen: minor cleanup in struct_init() (#14405) 2022-05-16 12:22:51 +03:00
spaceface
36bec823c2
checker: allow using methods as vars when expecting a ctx arg (#14414) 2022-05-16 12:05:08 +03:00
WoodyAtHome
c2b763655d
net.smtp: handle UTF-8 subjects according to RFC 1342 (#14410) 2022-05-16 11:09:36 +03:00
Delyan Angelov
1cf683d482
checker: add a suggestion for misspelled mod.const_name + a test 2022-05-16 10:29:58 +03:00
Ben
cbb24d34c9
os: fix is_abs_path function for Windows systems (#14397) 2022-05-16 09:59:37 +03:00
yuyi
7fe3ef9a6e
fmt: fix fmt error of anon fn with if expr (fix #14393) (#14413) 2022-05-16 09:48:21 +03:00
Larpon
5068b8b293
ftp: document all public methods (#14408) 2022-05-16 08:52:12 +03:00
Jah-On
02e026e298
clipboard: add [heap] tag to the Clipboard structs (#14412) 2022-05-16 08:45:40 +03:00
WoodyAtHome
eeff02a8ee
net.openssl: read doesn't block infinitely (#14406) 2022-05-16 08:44:34 +03:00
spaceface
c01a8a1737
checker,gen: allow using methods as function pointers (#14407) 2022-05-15 18:28:37 +03:00
Delyan Angelov
c2bc9f4960
sync: only run channel_select_test.v when VTEST_RUN_FLAKY=1 2022-05-15 12:43:04 +03:00
crthpl
e4065bd57b
checker,cgen: fix if expressions in lock expression (#14384) 2022-05-15 12:31:07 +03:00
David 'Epper' Marshall
c28051020a
time: fix calculate_date_from_offset (#14399) 2022-05-15 10:55:24 +03:00
Delyan Angelov
c70e18ea8f
ci: add a skip list in compiler_test.v (for tmpl_parse_html.vv) 2022-05-15 10:23:13 +03:00
David 'Epper' Marshall
8d141878ce
math: cbrt fix (#14395) 2022-05-14 21:06:38 +03:00
yuyi
fe9f97074b
cgen: fix appending struct to interface array (#14388) 2022-05-14 17:49:42 +03:00
Alexander Medvednikov
3adad32355 tmpl: fix a test 2022-05-14 17:48:50 +03:00
Alexander Medvednikov
b42c824cdb vweb: simplify @foo by removing V_TEMPLATE rule 2022-05-14 17:46:30 +03:00
j. redhead
441637eeb4
checker: fix optionals in infix expression check (fix #14354) (#14390) 2022-05-14 00:54:49 +03:00
Delyan Angelov
714ce4e7fc
ci: fix .out regression after d407a64 2022-05-13 11:18:17 +03:00
playX
6ec4185017
checker: allow to pass alias to array as a pointer (c2v) (#14389) 2022-05-13 10:17:28 +03:00
Daniel Däschle
d407a6449d
parser: fix dollar (closes #14292) (#14378) 2022-05-13 08:30:10 +03:00
Delyan Angelov
ed12a5c84c
math.big: reduce memory usage of Integer.str() (free intermediary Integers), optimise some operations using [direct_array_access] (#14353) 2022-05-13 08:21:34 +03:00
yuyi
3c95504a35
checker, cgen: fix generic fn with array and fixed array arguments (#14385) 2022-05-13 06:57:48 +03:00
Daniel Däschle
d679146a80
fmt: remove space in front of ? and ! (#14366) 2022-05-13 06:56:21 +03:00
Delyan Angelov
8ef9dc6247
ci: run v fmt -w vlib/v/checker/fn.v (fix CI regression after 4952967) 2022-05-12 21:24:12 +03:00
Delyan Angelov
668d1b04d2
parser: make script mode errors more informative, when a top level declaration is encountered, after script mode had already started 2022-05-12 21:14:00 +03:00
Hunam
20139ad756
checker: fix typo (#14368) 2022-05-12 12:23:32 +03:00
playX
4952967366
checker: alias C2V fix (#14377) 2022-05-12 12:19:31 +03:00
yuyi
f48f7014f0
checker: check error for generic sumtype types (#14374) 2022-05-12 11:57:57 +03:00
penguindark
e93a8766e5
regex: fix #14370, last IST not managed in advance tests (#14372) 2022-05-12 11:49:57 +03:00
Delyan Angelov
b7ca4c1668
checker: fix a compiler panic on fntest()?(&int,&int){return test()?} 2022-05-12 11:36:32 +03:00
yuyi
8830af5c89
rand: minor cleanup in choose() (#14376) 2022-05-12 11:20:38 +03:00
yuyi
5bc4fea9e0
checker: check error for cast function to string (#14375) 2022-05-12 10:04:38 +03:00
CC
901b8f0c24
builtin: add a map.clear() method (#14373) 2022-05-12 09:43:01 +03:00