Delyan Angelov
efca21e988
math: cleanup math.v, document math.aprox_cos and math.aprox_sin
2021-02-27 11:18:43 +02:00
Nick Treleaven
a1244a9f5f
checker: check that the module `init` fn, should have no params, and no return type ( #8988 )
2021-02-27 11:11:20 +02:00
zakuro
d0a64f2da7
net/openssl/websocket: implement io.Writer ( #8980 )
2021-02-27 10:29:18 +02:00
Uwe Krüger
f67bff1696
all: support `thread` handles and `wait()` for functions returning optionals ( #8990 )
2021-02-27 10:16:55 +02:00
Nick Treleaven
aed348fb80
os: tag some File methods that take voidptr as unsafe - write_bytes, write_bytes_at ( #8985 )
2021-02-27 10:11:17 +02:00
zakuro
1fd0aceb42
parser: imporve generics detection ( #8992 )
2021-02-27 10:07:18 +02:00
Delyan Angelov
a9e9079e48
gg: make .set_cfg public
2021-02-27 09:15:39 +02:00
Nick Treleaven
23f231ee61
builtin: tag array methods unsafe: *_many, grow_len, pointers ( #8983 )
2021-02-26 22:55:09 +01:00
Nick Treleaven
8874379c48
checker: check left selector expression in `$if left is right` ( #8987 )
2021-02-26 21:51:35 +01:00
spaceface
51fae95339
cgen: move the condition of an iterator to a temp var ( #8989 )
2021-02-26 21:51:01 +01:00
Nick Treleaven
4ad95cfeaf
checker: check types with $for/$if introspection ( #8984 )
2021-02-26 15:26:50 +01:00
Delyan Angelov
1a8ff9d7dd
v.gen.c: ensure that @continue is escaped in the generated C code
2021-02-26 10:22:35 +02:00
zakuro
995bd66970
encoding.utf8.east_asian: add support for East_Asian_Width ( #8978 )
...
See https://www.unicode.org/reports/tr11/
2021-02-26 09:52:07 +02:00
yuyi
524372d49c
parser: fix incorrect comments of expr() ( #8979 )
2021-02-26 09:21:58 +02:00
zakuro
89c82ff8e2
parser: treat f<mod.Type> as generic call not `<` operator ( #8938 )
2021-02-26 09:05:00 +02:00
Lukas Neubert
5aebd646bb
fmt: keep some line comments in multi line arrays ( #8969 )
2021-02-26 09:01:03 +02:00
Lukas Neubert
2c609411dd
fmt: do not write single line or blocks with multi line stmts ( #8952 )
2021-02-26 08:41:24 +02:00
Ned Palacios
8dff168e01
x.json2: create custom scanner for scanning JSON ( #8716 )
2021-02-26 08:36:02 +02:00
Nick Treleaven
59d4d0ef1d
checker: detect unknown type to iterate with $for ( #8971 )
2021-02-26 08:28:19 +02:00
Nick Treleaven
3a082621c9
checker: add a check for casting to an unknown type ( #8968 )
2021-02-26 08:26:36 +02:00
zakuro
bc0507590e
crypto: make digest implement io.Writer ( #8975 )
2021-02-26 08:24:47 +02:00
Miccah
d81b6e7805
encoding.base64: change base64 function signatures to use `[]byte` ( #8970 )
2021-02-26 08:22:12 +02:00
Nick Treleaven
c03798e390
checker: disallow implicit conversion from fixed array to fooptr ( #8823 )
2021-02-26 00:28:47 +01:00
Delyan Angelov
639061be6c
examples: fix left/right arrows in examples/term.ui/text_editor.v
2021-02-25 21:01:27 +02:00
yuyi
c7587c0760
cgen: minor cleanup in for_in_stmt() ( #8962 )
2021-02-25 13:24:42 +01:00
StunxFS
2e381f427a
net.html: use `or {}` in .writeln() method calls ( fix #8942 ) ( #8953 )
2021-02-25 13:24:30 +01:00
Ruofan XU
1a8e502e2c
ci: add tcc32 CI on windows ( #8922 )
2021-02-25 12:52:12 +01:00
yuyi
c762d150c6
cgen: fix anon_fn redefinition ( #8961 )
2021-02-25 12:16:35 +01:00
Delyan Angelov
fdc60817d3
sync: fix compilation on latest linux distros (having only gcc-10) with tcc
2021-02-25 12:35:27 +02:00
Lukas Neubert
e4beea4268
fmt: restructure comment line break logic inside arrays ( #8963 )
2021-02-25 11:10:54 +01:00
Delyan Angelov
77b3440e44
builder: make C compilation retrying more uniform
2021-02-25 11:56:54 +02:00
Lukas Neubert
7e27920cf7
fmt: fix inserted empty line before go stmt with anonymus function ( #8951 )
2021-02-25 01:30:04 +01:00
Uwe Krüger
12a4e7ad90
cgen: fix `type_to_fmt()` for `i64` and `u32` ( #8954 )
2021-02-25 01:29:44 +01:00
Nick Treleaven
57d1b5b74d
checker: show position for variadic/shared/method argument errors ( #8939 )
2021-02-24 19:35:32 +01:00
yuyi
3c94a79375
cgen: minor cleanup in gen_assert_xxx() ( #8943 )
2021-02-24 19:35:11 +01:00
Lukas Neubert
8e69d3629f
parser,fmt: refactor array comment handling to fully rely on the ecmnts field ( #8929 )
2021-02-24 19:33:59 +01:00
Lukas Neubert
b18d091e18
fmt: fix pos of added imports ( #8931 )
2021-02-24 19:33:17 +01:00
Lukas Neubert
e53476d5e1
fmt: do not remove chan type of struct fields ( #8948 )
2021-02-24 20:26:12 +02:00
Delyan Angelov
1c0eefae38
parser/scanner: replace p.peek_tok2/3 with p.peek_token(2/3) ( #8946 )
2021-02-24 21:03:53 +03:00
yuyi
1dd1be4400
cgen: fix if_expr with array.map ( fix #8925 ) ( #8937 )
2021-02-24 15:06:29 +02:00
yuyi
05a08530ff
cgen: implement for_stmt of multi_init_vars or multi_assign_vars ( #8917 )
2021-02-24 14:58:45 +02:00
StunxFS
0fa2f6d52c
dl: make vdoc ignore submodule "example" ( #8927 )
2021-02-23 18:32:48 +02:00
Delyan Angelov
ecef42832a
tests: make profile_test.v more robust
2021-02-23 18:30:53 +02:00
yuyi
302baaa7b4
cgen: fix error of match in fn_call ( #8900 )
2021-02-23 09:53:07 +02:00
Lukas Neubert
51125541c7
parser: fix weird minus after comment parse error in arrays ( #8912 )
2021-02-23 09:51:00 +02:00
StunxFS
fcc2094719
dl: add `get_libname` function ( #8909 )
2021-02-23 09:46:28 +02:00
StunxFS
fd59182659
szip: fix doc-comments ( #8911 )
2021-02-23 09:43:19 +02:00
zakuro
c113abe1a4
strings: make builder implement io.Writer ( #8914 )
2021-02-23 09:42:48 +02:00
Uwe Krüger
5674d46965
table,cgen: fix bug preventing `t := []thread{}` to compile ( #8913 )
2021-02-23 09:37:29 +02:00
spaceface
b4dc6c83cd
gg: handle Android's own native dpi scaling factor ( #8908 )
2021-02-22 21:24:18 +02:00
Emily Hudson
79edff5c6c
gen: correct indirection difference between reciever and object ( #8903 )
2021-02-22 20:41:25 +02:00
StunxFS
d78c9476e9
szip: use enums instead of constants ( #8905 )
2021-02-22 20:02:45 +02:00
R cqls
68972fcec6
gg: ensure window_size does not do / 0 ( #8907 )
2021-02-22 19:00:10 +02:00
spaceface
8033203ef6
builtin: add an Option2 struct ( #8890 )
2021-02-22 18:44:15 +02:00
Lukas Neubert
18aecde9e5
fmt: cleanup comments code ( #8901 )
2021-02-22 18:43:54 +02:00
Lukas Neubert
7f6c4caa01
fmt: fix missing space after single line array pre comments ( #8904 )
2021-02-22 17:53:55 +02:00
Delyan Angelov
fb028abc71
net.unix: make unix_test.v more robust
2021-02-22 17:48:31 +02:00
Delyan Angelov
fba28d2dcc
ci: increase the timeout for test_os_process (false positives on macos)
2021-02-22 17:24:52 +02:00
Delyan Angelov
b01a302a4e
net.http: fix compilation of trivial examples with `v -cflags -Werror`
2021-02-22 17:11:02 +02:00
Delyan Angelov
7c97b0b24d
gitly: fix compilation with -autofree
2021-02-22 17:00:48 +02:00
Delyan Angelov
467dce6be6
v.table: minimize re-allocations on << to table.types
2021-02-22 16:24:57 +02:00
yuyi
7a6fd359d0
checker: check fn_variadic with array_decompose ( #8894 )
2021-02-22 14:26:54 +01:00
Delyan Angelov
0029d3ca76
ci: fix test-cleancode
2021-02-22 15:22:51 +02:00
Uwe Krüger
5306b2788c
all: extend `wait()` method to array of `thread` handles ( #8840 )
2021-02-22 15:08:52 +02:00
StunxFS
ac1c4932e7
szip: change documentation style ( #8883 )
2021-02-22 14:59:36 +02:00
Swastik Baranwal
b2cdd2cac0
net.http: use .filter in sanitize/2 ( #8899 )
2021-02-22 14:58:48 +02:00
spaceface
1658c4789f
cgen: fix `match`ing interface types ( #8889 )
2021-02-22 14:55:43 +02:00
Nick Treleaven
15daeaeafa
cgen: add fixed array bounds checking for non-literal index ( #8832 )
2021-02-22 14:54:24 +02:00
Nick Treleaven
59446d7051
cgen: use `(void)` parameter list instead of `()` for type safety ( #8898 )
2021-02-22 14:48:32 +02:00
zakuro
f54c1a5cc2
all: add strings.Builder.write_string and use write_string instead of write ( #8892 )
2021-02-22 13:18:11 +02:00
Lukas Neubert
9dc770e29c
fmt: do not struggle with comments inside maps ( #8897 )
2021-02-22 13:04:48 +02:00
Delyan Angelov
5d653a37b6
os: make process_test.v more portable (prepare for windows)
2021-02-22 09:42:00 +02:00
Delyan Angelov
c37daba41d
ci: fix the remaining obsolete reference to time.sleep and time.usleep
2021-02-22 09:12:23 +02:00
Delyan Angelov
da05c7ed1a
ci: fix a deprecation time.sleep warning in `clipboard`
2021-02-22 09:00:30 +02:00
Delyan Angelov
9ab291319c
builder: fix thirdparty object files compilation with tcc (no -lxyz with -c)
2021-02-22 08:18:24 +02:00
Lukas Neubert
f18adf7759
parser,fmt: handle array pre-comments separately from exprs ( #8884 )
2021-02-21 20:18:19 +02:00
Lukas Neubert
18e88d2fc8
test-cleancode: add more of vlib/v ( #8882 )
2021-02-21 20:17:12 +02:00
Louis Schmieder
7a35131721
vweb: add handle static root & documentation ( #8865 )
2021-02-21 20:01:29 +02:00
yuyi
1a838b1f43
checker: fix error of match in map_init ( fix #8579 ) ( #8879 )
2021-02-21 17:09:42 +02:00
zakuro
ac4791045f
time: consolidate the different sleep functions into time.wait(Duration) ( #8853 )
2021-02-21 17:05:03 +02:00
Delyan Angelov
b1209aac1b
ci: fix building of vlib/x/websocket/websocket_test.v
2021-02-21 17:03:25 +02:00
Delyan Angelov
f2ce72c2bf
ci: split the websockets tests into their own CI .yml file
2021-02-21 16:35:27 +02:00
zakuro
95e5f68b64
cli: don't sort flags / commands by default ( #8813 )
2021-02-21 16:17:50 +02:00
spaceface
260f677469
term.ui: use the new `[flag]` enums ( #8881 )
2021-02-21 16:07:49 +02:00
Joe Conigliaro
0470baafa6
cgen: fix duplicate optional generation for struct field
2021-02-22 00:00:39 +11:00
Delyan Angelov
514cabd7c8
strings: cleanup strings builder, allow reusing it
2021-02-21 13:34:29 +02:00
yuyi
6e46f3850c
ast: change `expr.is_mut_ident()` to `expr.is_auto_deref_var()` ( #8869 )
2021-02-21 12:15:36 +02:00
zakuro
7928689ee2
parser: set is_public when registering enum type symbols ( #8875 )
2021-02-21 12:13:52 +02:00
yuyi
9a744b6750
cgen: fix in map_literal ( fix #8868 ) ( #8871 )
2021-02-21 11:54:30 +02:00
yuyi
e106dc3ad5
cgen: fix match_return with complex expr stmts ( #8876 )
2021-02-21 11:47:46 +02:00
Stanislav Ershov
44177c4e7c
builder: use stable MSVC version instead preview ( #8867 )
2021-02-21 00:00:44 +02:00
Nicolas Sauzede
f67a4c3ee0
checker, cgen: allow | between bitfield enum values, autogenerate a more specific .str method for them too ( #8856 )
2021-02-20 21:51:54 +02:00
penguindark
cc565b22a9
regex: remove [deprecated] functions/methods, code clean, add test for regex_base ( #8862 )
2021-02-20 21:39:08 +02:00
yuyi
8f486cb8cf
ast: minor cleanup of ast.v ( #8859 )
2021-02-20 20:50:43 +02:00
Stanislav Ershov
c190b6a131
vlib: remove older deprecated functions ( #8864 )
2021-02-20 20:42:55 +02:00
Stanislav Ershov
30ed201600
cgen: cleanup header for MSVC ( #8863 )
2021-02-20 20:39:46 +02:00
Delyan Angelov
746dfe6317
ci: make vweb and websocket tests more robust to transient errors
2021-02-20 20:24:21 +02:00
Nick Treleaven
28088cc494
checker: check fixed array index when it's a literal ( #8831 )
2021-02-20 20:18:47 +02:00
Delyan Angelov
5a333b0fdc
gen,parser: allow enums as map keys
2021-02-20 19:39:25 +02:00
Nick Treleaven
1e71c0eaca
checker: warn for deprecated methods too ( #8861 )
2021-02-20 19:25:54 +02:00
spaceface
adf2aa8760
pref: add a `-debug-tcc` alias option ( #8834 )
2021-02-20 18:53:22 +02:00
spaceface
cc3fd5333b
builder: print tcc output, when the system C compiler also failed ( #8835 )
2021-02-20 18:52:54 +02:00
yuyi
c704a49283
parser: fix error of $tmpl in anon_fn ( fix #8847 ) ( #8849 )
2021-02-20 18:51:08 +02:00
Delyan Angelov
8327c9afc1
checker: support a custom `[deprecated: 'message']`
2021-02-20 17:35:44 +02:00
Stanislav Ershov
44cb0426f4
cli: fix checking callbacks ( #8858 )
2021-02-20 17:30:39 +02:00
Lukas Neubert
a86bf3254a
fmt: keep empty line between if statement and comment ( #8846 )
2021-02-20 16:05:05 +02:00
Lukas Neubert
329e3938d9
fmt: respect user choice of newlines between functions without body ( #8838 )
2021-02-20 16:00:30 +02:00
yuyi
783cee98d9
table/parser: minor optimization of anon_fn names ( #8851 )
2021-02-20 15:54:47 +02:00
yuyi
e8abda189a
cgen: minor optimization in match_expr() ( #8848 )
2021-02-20 15:51:40 +02:00
Nick Treleaven
2be852e461
arrays: use for/in instead of unsafe `[direct_array_access]` ( #8857 )
2021-02-20 15:27:36 +02:00
zakuro
f381836f9e
fmt: sort names in selective imports ( #8827 )
2021-02-20 12:22:09 +01:00
yuyi
5e1159e4c3
checker: change non-const size of fixed array error message ( #8850 )
2021-02-20 12:14:44 +01:00
Lukas Neubert
859d382c6e
fmt: remove a few obsolete comments ( #8837 )
2021-02-20 09:54:55 +01:00
Nick Treleaven
bcb35e15f9
checker: only allow passing integer *literal* to non-integer pointer method parameter ( #8825 )
2021-02-19 14:14:40 +02:00
Miccah
a153ec5951
cli: ensure that required flags are set ( #8826 )
2021-02-19 12:43:18 +02:00
kristof de spiegeleer
3f3bec45fa
examples: add a template example, update the regex examples ( #8829 )
2021-02-19 12:39:15 +02:00
zakuro
6e262b5d84
checker: improve error position of infix expr ( #8828 )
2021-02-19 12:38:41 +02:00
Swastik Baranwal
ad162cd6fc
checker: stricter `unknown type` checks, show better suggestions ( #8816 )
2021-02-19 11:23:13 +02:00
Stanislav Ershov
6a752512b2
os: fix os.real_path on Windows ( #8822 )
2021-02-19 11:20:06 +02:00
Subhomoy Haldar
745b40c0a3
rand: refactor string sampling functions to remove redundancy ( #8830 )
2021-02-19 11:16:02 +02:00
yuyi
4878077c62
gen/c: fix gen_str_for_struct with custom ref str ( fix #7179 ) ( #8820 )
2021-02-18 18:19:42 +02:00
Alexander Medvednikov
0dbc9417e7
builder: vfmt msvc.v
2021-02-18 17:00:07 +03:00
Stanislav Ershov
51dd22bcc0
builder: support -m32/-m64 flags for msvc ( #8819 )
2021-02-18 14:58:47 +01:00
zakuro
1891ebf22d
scanner: print multibyte char for invalid char error ( #8804 )
2021-02-18 15:43:39 +02:00
Delyan Angelov
0142d58aa6
v.pref: prevent `Too many targets.` from triggering when the command is an external one
2021-02-18 12:13:28 +02:00
zakuro
0d69d97143
fmt: mark imports as used, when types from them are used in struct declarations ( #8810 )
2021-02-18 11:32:45 +02:00
zakuro
a34a1ab864
checker/table: minor cleanup by removing unnecessary `_` variable ( #8801 )
2021-02-18 11:30:43 +02:00
zakuro
b3a26ca0ce
v.pref: make passing multiple target .v files an error ( #8814 )
2021-02-18 09:42:00 +02:00
yuyi
a119affeba
cgen: check unknown sizeof type ( #8815 )
2021-02-18 09:38:57 +02:00
Delyan Angelov
bf6e9ff95a
Revert "parser: make duplicated functions an error ( #8792 )"
...
This reverts commit 21bf8fe14e
.
2021-02-18 09:02:56 +02:00
zakuro
21bf8fe14e
parser: make duplicated functions an error ( #8792 )
2021-02-17 20:50:10 +01:00
Nick Treleaven
33d8074846
crypto.rand: use byteptr.vbytes instead of c_array_to_bytes_tmp ( #8786 )
2021-02-17 21:47:19 +02:00
Nick Treleaven
4ccf991f61
checker: warn when casting a fixed array (use `&arr[0]` instead) ( #8787 )
2021-02-17 20:45:11 +01:00
yuyi
177c8bfc78
builtin/array: merge array_eq_test.v into array_test.v ( #8796 )
2021-02-17 20:44:44 +01:00
yuyi
4fa315edc2
checker: fix for _, mut j in array ( #8785 )
2021-02-17 20:44:28 +01:00
zakuro
600f6ad2a0
fmt: do not prepend mod to selectively imported types from nested module ( #8805 )
2021-02-17 20:42:26 +01:00
Delyan Angelov
ab6517c5fc
gg: support passing down the state of pressed mouse buttons in mouse moves events
2021-02-17 20:14:37 +02:00
Delyan Angelov
aa3d0ea345
vfmt: cleanup spurious printlns, remove obsolete code
2021-02-17 14:59:42 +02:00
Alexander Medvednikov
d4a05bebde
gg: use gg types for Events instead of sapp
2021-02-17 06:44:01 +01:00
zakuro
3341c17202
fmt: keep one empty line in struct decl ( #8782 )
2021-02-17 05:45:09 +01:00
Lukas Neubert
55b69a76a6
fmt: minor cleanup of or_expr ( #8789 )
2021-02-17 05:43:29 +01:00
Nick Treleaven
0f8edd918a
checker: disallow `unsafe` map copy ( #8720 )
2021-02-17 05:19:25 +01:00
Lukas Neubert
e4a67dea37
json2: wrap Builder.free() calls inside unsafe ( #8790 )
2021-02-17 02:19:26 +02:00
Delyan Angelov
2002d20249
io: remove unused Zzz_CoerceInterfaceTableGeneration struct; add test for `x := Enum{}`
2021-02-17 01:37:05 +02:00
Delyan Angelov
995e1c84a2
ci: fix `./v -cc gcc -cflags "-Werror" vlib/io/os_file_reader_test.v`
2021-02-17 01:08:28 +02:00
Delyan Angelov
fb09333a73
ci: fix interface table generation for vlib/io/os_file_reader_test.v with -cflags "-Werror"
2021-02-16 23:36:44 +02:00
Delyan Angelov
4961d3ea17
io: fix detection of end_of_stream, when reading files through io.new_buffered_reader(reader: io.make_reader(f))
2021-02-16 23:22:17 +02:00
Delyan Angelov
843de10442
parser,gen: fix `arr << map[key] using map_get_and_set_1, leading to double free
2021-02-16 16:39:31 +02:00
yuyi
982e35909d
cgen: fix `mut` var in `for` loop reads as address ( fix #8548 ) ( #8745 )
2021-02-16 13:24:19 +01:00
Nick Treleaven
01aa09d515
checker: do not allow copying any map lvalue ( #8662 )
2021-02-16 12:46:12 +01:00
zakuro
51c286df5a
fmt: fix bug that vfmt removes emmbeded struct in struct decl ( #8775 )
2021-02-16 12:45:56 +01:00
Christopher Dieringer
94429c8fd8
gg: window_size: normalize dpi scaling ( #8738 )
2021-02-16 12:41:21 +01:00
Uwe Krüger
0520b755f4
checker/cgen: support `print*()`, `.str()` and '$x' for `shared` ( #8771 )
2021-02-16 12:40:13 +01:00
zakuro
6813866141
fmt: fix bug of disappearing `pub` in struct decl ( #8777 )
2021-02-16 12:39:50 +01:00
Delyan Angelov
0bbc5a5c6a
fmt: add a small comment about f.line_len
2021-02-16 10:22:39 +02:00
Lukas Neubert
ad20b3806f
fmt: fix possible code corruption by unwrapped single line if ( #8780 )
2021-02-16 10:13:48 +02:00
Delyan Angelov
230372df09
clipboard: fix unsafe warning on windows (affects v-ui)
2021-02-15 20:09:02 +02:00
Nick Treleaven
c057b45bb1
checker: check argument count for C fn with attribute ( #8728 )
2021-02-15 18:56:26 +02:00
zakuro
2911f03627
checker: reject method that have multi-value type receiver ( #8696 )
2021-02-15 17:55:54 +02:00
zakuro
70a30374b9
parser: cleanup fn_decl ( #8700 )
2021-02-15 17:55:08 +02:00
Lukas Neubert
848295cdea
scanner: do not warn on \' after string interpolation ( #8729 )
2021-02-15 17:54:30 +02:00
Quix
486bf8517f
builtin: fix typo ( #8747 )
2021-02-15 17:54:07 +02:00
Quix
6a21b8cc8b
pg: fix typo ( #8750 )
2021-02-15 17:53:38 +02:00
Quix
35f45b8e5e
glm: fix typo ( #8748 )
2021-02-15 17:53:07 +02:00
Quix
49505d4090
hash.crc32: fix typo ( #8749 )
2021-02-15 17:52:45 +02:00
Quix
64018e6f14
encoding.utf8: fix 'length' typo in two spots ( #8746 )
2021-02-15 17:52:00 +02:00
zakuro
d08a0b5a7c
parser: check not used expression for all exprs in multi-expr ( #8733 )
2021-02-15 17:41:04 +02:00
spaceface
fe007f9b16
gen: fix type_name for sumtype/interface pointers ( #8769 )
2021-02-15 17:35:31 +02:00
AAAA
4213851e22
cli: fix typo ( #8742 )
2021-02-15 17:25:30 +02:00
Nick Treleaven
4a0367a63c
vlib: add [unsafe] tag to more functions: tos, string_from_wide, strings.Builder: write_bytes, free ( #8766 )
2021-02-15 17:15:52 +02:00
Louis Schmieder
4bdbb0cfa8
orm: add type detection of db ( #8756 )
2021-02-15 17:14:39 +02:00
yuyi
a9c2045dbd
cgen: fix var name clash of array/map ( fix #1994 ) ( #8765 )
2021-02-15 15:51:57 +02:00
Nick Treleaven
629d43caf5
checker: warn when using `goto` outside of `unsafe` ( #8741 )
2021-02-15 15:48:24 +02:00
Peter Badida
6781f732f4
gen: fix infinite loop when struct's ref field is pointing to self ( #8632 ) ( #8641 )
2021-02-15 15:43:10 +02:00
penguindark
325aef6d41
gg: add gg.m4, use it in the sokol GLSL examples ( #8755 )
2021-02-15 15:40:28 +02:00
spaceface
e3649ec4d3
all: implement `type_name()` for interfaces too ( #8767 )
2021-02-15 15:29:44 +02:00
zakuro
4e2418e9cf
os: add test for os.file_name ( #8757 )
2021-02-15 07:37:35 +01:00
Nick Treleaven
b07f373433
builtin: make 5 C functions trusted, tweak signatures ( #8730 )
2021-02-14 19:37:32 +01:00
Nick Treleaven
ea803113c3
checker: check `unsafe` V function calls ( #8752 )
2021-02-14 19:31:42 +01:00
zakuro
d3bcd5d305
fmt: keep single line if in struct init ( #8734 )
2021-02-14 19:22:24 +01:00
zakuro
e534b4397d
checker: report correct position for non-bool cond error ( #8735 )
2021-02-14 19:19:41 +01:00
Nick Treleaven
82650ee813
parser: fix parsing attribute after fn prototype with no return type ( #8727 )
2021-02-14 08:05:20 +01:00
zakuro
e4f15605c0
checker: reject void type condition ( #8737 )
2021-02-14 07:33:24 +01:00
Delyan Angelov
3d29f819cf
builder: add markused.mark_used calls to js.v and x64.v
2021-02-13 18:09:04 +02:00
Delyan Angelov
e809264f12
builder,checker: split the unused marking into a new `v.markused` module
2021-02-13 18:02:31 +02:00
Uwe Krüger
374739b804
all: rename `[ref_only]` -> `[heap]` ( #8718 )
2021-02-13 16:52:01 +02:00
Delyan Angelov
2a8d0ddaf5
checker: add os.init_os_args_wide to the -skip-unused whitelist too
2021-02-13 16:33:35 +02:00
Delyan Angelov
60c16313f3
checker: enable `./v -skip-unused self`
2021-02-13 16:08:44 +02:00
Delyan Angelov
eaaac220be
checker: make -skip-unused more conservative to make `v test vlib/builtin` pass
2021-02-13 15:47:17 +02:00
Uwe Krüger
835b3b2b81
sync: simplify `WaitGroup` and `PoolProcessor` and use atomic counters ( #8715 )
2021-02-13 13:52:27 +01:00
Nick Treleaven
d03c1d615a
os: improve `rm` error message ( #8719 )
2021-02-13 13:51:38 +01:00
Delyan Angelov
0b60510c9c
cgen: cleanup generating helper comments with -skip-unused
2021-02-13 10:31:48 +02:00
Ned Palacios
db609a0784
checker: skip checking for invalid fn return type ( #8703 )
2021-02-13 01:21:05 +01:00
Uwe Krüger
40066a5daa
checker: obey [ref_only] tag, allow embedding in other ref struct ( #8707 )
2021-02-13 00:47:37 +01:00
glebbash
aa548f45ea
docs: fix functions in array/map example ( #8695 )
2021-02-12 21:10:54 +02:00
bettafish04
0b777c68c3
net: fix unix sockets ( #8697 )
2021-02-12 20:10:06 +02:00
StunxFS
6b431b18f5
vweb.tmpl: fix a little typo ( #8704 )
2021-02-12 20:06:37 +02:00
Joe Conigliaro
c904c9178d
checker: support ParExpr for trying to take address errors & simplify messages
2021-02-13 02:49:22 +11:00
Delyan Angelov
1675b6f3e0
ci: fix code-formatting job
2021-02-12 15:44:12 +02:00
Joe Conigliaro
5d36a59dd8
checker: fix returning [] from fn which retuns optional array
2021-02-12 22:30:30 +11:00
Alexander Medvednikov
0a03856c83
parser: small c2v fixes
2021-02-12 09:12:26 +01:00
yuyi
67c6f24c84
cgen: format match_expr ( #8692 )
2021-02-12 03:37:31 +01:00
yuyi
3164e29651
all: fix fn_or_for_in mut value (part 1) ( #8671 )
2021-02-12 02:03:11 +02:00
Nick Treleaven
84a16d8684
map: add `move` method ( #8660 )
2021-02-12 02:02:33 +02:00
Larpon
65f2420516
os: fix cp_all mkdir panic ( #8680 )
2021-02-12 01:55:36 +02:00
Nick Treleaven
375efb0953
checker: improve errors for `return` count mismatch ( #8686 )
2021-02-12 01:47:11 +02:00
Joe Conigliaro
317d450723
checker: add error when trying to take address of call expr
2021-02-12 10:39:02 +11:00
Delyan Angelov
8f6fec4364
ci: fix building examples/concurrency/concurrency.v on macos
2021-02-12 01:18:40 +02:00
Delyan Angelov
58393bd3f9
ci: fix unix_test.v on unix != macos
2021-02-12 01:12:42 +02:00
Delyan Angelov
89521584a2
ci: fix unix sockets test on macos
2021-02-11 22:34:38 +02:00
bettafish04
9b4f2edbfa
net: move unix socket code to net.unix and skip net/unix/unix_test.v … ( #8681 )
2021-02-11 18:51:12 +02:00
Delyan Angelov
ea401b1192
ci: `#include <afunix.h>` in vlib/net/net_windows.c.v
2021-02-11 12:45:25 +02:00
Delyan Angelov
578de634fe
sync: move pool related code to `sync.pool`, cleanup, add a README.md
2021-02-11 10:55:23 +02:00
Delyan Angelov
93c1c1cec3
builder: add generated C lines with -stats too
2021-02-11 08:38:09 +02:00
cbracketdash
c636a7080d
rand: add rand.ascii ( #8675 )
2021-02-11 08:32:40 +02:00
bettafish04
d4f6488afd
net: add better unix socket support ( #8651 )
2021-02-11 01:24:15 +01:00
zakuro
f371803a32
cgen: move comp_if_to_ifdef to comptime.v ( #8668 )
2021-02-11 01:22:49 +01:00
Delyan Angelov
de287c0add
builder: add C source code size info on -stats
2021-02-10 19:12:12 +02:00
zakuro
4305ce1493
checker: extract long match branches in c.stmt(), into separate checker functions ( #8666 )
2021-02-10 18:51:41 +02:00
SurmanPP
f2ad6dd4d9
os: fix os.walk, when passing paths ending with path_separator ( #8672 )
2021-02-10 18:48:01 +02:00
Delyan Angelov
4646c414d8
checker: fix -skip-unused with struct inits with default expressions
2021-02-10 18:25:57 +02:00
cbracketdash
eb7009b60a
rand: generate hexadecimal numbers ( #8664 )
2021-02-10 11:01:25 +01:00
yuyi
f2e74bce7a
checker: fix sumtype assign error ( fix #7988 ) ( #8655 )
2021-02-10 10:59:56 +01:00
Alexander Medvednikov
035a163454
json: encode_pretty (p. 2) + tests
2021-02-10 10:17:29 +01:00
Alexander Medvednikov
f67e4ab57c
json: encode_pretty (p. 1)
2021-02-10 10:13:06 +01:00
yuyi
95c3ef3a6a
cgen: minor cleanup in stmt() ( #8659 )
2021-02-09 23:00:43 +01:00
Uwe Krüger
f3c5f24c17
allow `lock` expression to return multiple objects ( #8657 )
2021-02-09 17:09:10 +02:00
Nick Treleaven
d37fb5641f
parser: improve printing of unexpected tokens ( #8654 )
2021-02-09 17:07:30 +02:00
Bobitsmagic
0f92485698
builtin: fix typo in builtin/array.v ( #8658 )
2021-02-09 17:04:47 +02:00
Swastik Baranwal
6de78ecb59
term: implement term.clear() for windows ( #8650 )
2021-02-09 14:25:31 +02:00
Delyan Angelov
5308b63a01
ci: fix the `-cflags "-Werror"` job, by explicit casting to `void**`
2021-02-09 14:22:51 +02:00
Delyan Angelov
d110f0de74
tests: add a regression test for 3d2afcf
2021-02-09 14:11:09 +02:00
Delyan Angelov
3d2afcf02e
cgen: fix gohandle_name generation (use .cname)
2021-02-09 12:55:05 +02:00
spaceface
1bb4be17d8
cgen: remove srwlock definition workaround for tcc on windows ( #8652 )
2021-02-09 12:44:18 +02:00
spaceface
4152c704f3
sokol: remove `.lib` extensions in `#pragma` directives ( #8639 )
...
fixes tcc on windows - this kind of fix has been done several times in the past, and should probably be upstreamed to sokol soon to prevent things from breaking every time we update the headers.
2021-02-09 11:36:01 +02:00
Mohammad Ali Chraghi
86e6b4f926
examples: improve the pg and vweb output ( #8640 )
2021-02-09 11:31:25 +02:00
Alexander Medvednikov
bfee8a528c
cgen: add "case" to c_reserved
2021-02-09 03:49:19 +01:00
bettafish04
1a2ae0aead
net: add basic unix socket support ( #8642 )
2021-02-08 23:48:23 +01:00
Swastik Baranwal
09cff69919
all: allow using aliases as keys in map ( #8589 )
2021-02-08 18:51:05 +01:00
Lukas Neubert
8cb01ba8db
fmt: keep comments between and after imports ( #8637 )
2021-02-08 19:48:48 +02:00
Lukas Neubert
cb1f63f765
parser: replace eat_line_end_comments() with configurable eat_comments() ( #8636 )
2021-02-08 18:16:02 +02:00
Lukas Neubert
5abd49d9bc
cgen: cast default struct field value to correct SumType/interface ( #8619 )
2021-02-08 17:33:05 +02:00
Swastik Baranwal
e2ff26a066
cgen: fix gen of .sort method for `>` operator and improve grammar of error ( #8615 )
2021-02-08 17:19:54 +02:00
Nick Treleaven
e2ff2a5405
parser: deprecate `{var |` struct update ( #8618 )
2021-02-08 17:03:05 +02:00
yuyi
f2100166c7
cgen: minor cleanup in gen_str_for_option ( #8622 )
2021-02-08 17:00:51 +02:00
Nick Treleaven
9e751f72c4
doc, fmt: use `map{key: value}` syntax for map literals ( #8623 )
2021-02-08 16:57:42 +02:00
zakuro
8ae23cd89e
parser: make `v := f(v)' an undefined variable error ( #8634 )
2021-02-08 16:55:01 +02:00
zakuro
e5839effbc
checker/cgen: allow `<<` operator for aliases ( #8561 )
2021-02-08 01:41:47 +01:00
Lukas Neubert
473cd1d416
fmt: single line ternary return ( #8605 )
2021-02-08 00:28:46 +01:00
Uwe Krüger
118ca1240e
all: allow `shared` element types for `struct` and arrays ( #8631 )
2021-02-08 00:28:29 +01:00
Lukas Neubert
7f4c582f1a
fmt: unwrap long infix exprs inside parenthesis if necessary ( #8609 )
2021-02-07 23:10:39 +01:00
Nick Treleaven
ff1aa06455
parser: require ++/-- to be on the same line as the previous token ( #8621 )
2021-02-07 23:10:16 +01:00
yuyi
81e8c3bc1b
cgen: minor optimization in infix_expr ( #8625 )
2021-02-07 17:22:54 +01:00
Larpon
bfd0bd1fb4
builtin: doc chan.v channel stub ( #8577 )
2021-02-07 12:42:24 +02:00
kristof de spiegeleer
2d875260e8
examples: Process examples ( #8598 )
2021-02-07 05:19:05 +01:00
Alexander Medvednikov
a81ee0e94e
tools/fast: measure v.c size and parse/check/cgen steps
2021-02-07 04:48:54 +01:00
zakuro
9f59b04e86
fmt: remove unused selective imports ( #8595 )
2021-02-07 03:58:43 +01:00
Nick Treleaven
cd4f7101f7
parser: support short struct update syntax `{...ident,` ( #8613 )
2021-02-07 03:43:51 +01:00
Nick Treleaven
b92f980274
token: fix Token.str() for punctuation and operators ( #8610 )
2021-02-07 03:40:00 +01:00
Delyan Angelov
d77bb2f606
all: improve -skip-unused, track consts, walk all AST nodes, support tests
2021-02-07 02:51:45 +02:00
Nick Treleaven
f5f65f929f
parser: parse `map{key_expr: val_expr}` ( #8608 )
2021-02-06 22:13:24 +01:00
Lukas Neubert
db0fc8fbc9
fmt: better function call wrapping inside ternary if branches ( #8604 )
...
* fmt: better funcation call wrap in singel line ifs
* tests
* format files
2021-02-06 21:46:52 +01:00
Uwe Krüger
cf230644b6
fmt: enable shared return types ( #8614 )
2021-02-06 21:25:06 +01:00
Uwe Krüger
5343f1374b
all: allow functions to return `shared` object ( #8606 )
2021-02-06 19:41:52 +01:00
zakuro
fe9d062b41
gen: fix bug where unreached defer is executed ( #8594 )
2021-02-06 18:40:39 +02:00
Larpon
de9813233f
gg: support getting system font on Android ( #8611 )
2021-02-06 18:36:43 +02:00
Delyan Angelov
e57b73bcfc
ci: fix the using_comptime_env.vv test (execute only on ubuntu-tcc again)
2021-02-06 13:07:21 +02:00
Swastik Baranwal
9b839b3b7d
cgen: fix gen of `>` operator overloading ( #8600 )
2021-02-06 12:59:20 +02:00
Delyan Angelov
1fcac4098b
tests: use a serial task runner for -skip-unused too
2021-02-06 10:08:59 +02:00
Delyan Angelov
167773dd1c
checker: make -skip-unused process a list of root functions, not just main.main
2021-02-06 09:41:24 +02:00
Larpon
e83c39c81a
builtin: document rest of map.v ( #8578 )
2021-02-06 03:07:42 +01:00
Uwe Krüger
ab279dace7
cgen: support `shared` initialization from call returning optional ( #8593 )
2021-02-06 03:07:05 +01:00
yuyi
1b6efebac7
all: fix map = map2 assignment ( #8581 )
2021-02-06 03:06:34 +01:00
Larpon
57258c2988
builtin: document remaining pub structs in builtin.v ( #8576 )
2021-02-05 21:02:29 +01:00
Larpon
1101533dea
crypto: document rest of rand submodule ( #8580 )
2021-02-05 20:26:34 +02:00
Subhomoy Haldar
9a1da1a97b
rand: move the shuffle function from `arrays` to `rand.util` ( #8587 )
2021-02-05 20:24:38 +02:00
Delyan Angelov
ed6fc79fbe
ci: run the -skip-unused tests on linux (so local testing is easier)
2021-02-05 20:03:24 +02:00
Delyan Angelov
99822e51de
ci: force println_os_executable.vv to have a stable output on all OSes
2021-02-05 20:01:02 +02:00
Larpon
e1052a5ec7
semver: document all pub functions ( #8586 )
2021-02-05 19:57:42 +02:00
Lukas Neubert
58b3a30b47
docs/readmes: format almost all remaining code blocks ( #8590 )
2021-02-05 19:50:28 +02:00
Delyan Angelov
9a7ecf2807
ci: limit the -skip-unused testing to the ubuntu CI jobs for now
2021-02-05 18:41:46 +02:00
Delyan Angelov
a6ecc19040
ci: fix -skip-unused compiler test on windows, using -d no_backtrace
2021-02-05 18:36:57 +02:00
zakuro
6b776e686e
parser: display correct position on boolean expression error ( #8563 )
2021-02-05 16:52:35 +01:00
Larpon
44ab0154b2
builtin: document last of array.v ( #8575 )
2021-02-05 16:51:45 +01:00
zakuro
a94228bb16
checker: make `[] == ArrayAlias([])` an error ( #8562 )
2021-02-05 16:49:40 +01:00
Larpon
e78c30d181
clipboard: add android variant ( #8585 )
2021-02-05 16:49:04 +01:00
Lukas Neubert
9ab1d17cbc
fmt: keep __global in struct declarations ( #8584 )
2021-02-05 16:46:43 +01:00
Delyan Angelov
81789ee106
tests: add vlib/v/tests/skip_unused/
2021-02-05 17:27:00 +02:00
Delyan Angelov
867d96a077
checker: use @METHOD for util.timing_start in Checker.mark_used/1
2021-02-05 16:41:55 +02:00
Delyan Angelov
16dffc7c1d
compiler: move timing_start/timing_measure to util.timing_start/util.timing_measure
2021-02-05 16:34:56 +02:00
Delyan Angelov
25a3873019
parser,checker: support @METHOD, replaced by 'ReceiverType.MethodName'
2021-02-05 16:32:43 +02:00
Delyan Angelov
d30f94507c
checker: enable -skip-unused for more examples
2021-02-05 11:55:40 +02:00
Delyan Angelov
8f160ee3ed
ci: run vfmt over vlib/v/gen/c/fn.v
2021-02-05 11:18:29 +02:00
Delyan Angelov
40fff7b56a
v.pref: support `v -skip-unused run examples/hello_world.v`
2021-02-05 11:12:28 +02:00
Delyan Angelov
80697ec7f3
table: .is_used => .usages (a counter, instead of a boolean flag)
2021-02-05 10:03:17 +02:00
Delyan Angelov
e5c9fcb7e9
ci: fix building vdoc, vls, etc
2021-02-05 09:27:14 +02:00
Alexander Medvednikov
5a183d23a9
cgen: disable the new [if xxx] logic for now
2021-02-05 08:16:16 +01:00
Alexander Medvednikov
1084b43ffb
all: ast walker for marking unused fns
2021-02-05 08:05:35 +01:00
Delyan Angelov
119dfc0bb0
all: support map[f32]string and map[f64]string (float map keys) too ( #8556 )
2021-02-04 23:59:49 +01:00
Alexander Medvednikov
97e36cd97a
parser: fix method name test
2021-02-04 22:25:58 +01:00
Alexander Medvednikov
fdd8c86fdb
parser: make sure methods have names
2021-02-04 22:15:16 +01:00
Ekopalypse
5eef730290
builder: make msvc build if v path contains spaces ( #8552 )
2021-02-04 20:45:59 +01:00
Delyan Angelov
48892a52fa
strings: make valgrind reports for strings builders more usefull ( #8553 )
2021-02-04 20:45:35 +01:00
Louis Schmieder
97c0ef3505
orm: struct field support ( #8517 )
2021-02-04 20:28:33 +01:00
Ekopalypse
856246c858
builder: make repl work if path contains spaces ( #8550 )
2021-02-04 18:18:18 +01:00
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
StunxFS
b7f83e2f50
checker: more errors for illegal referencing ( #7755 )
2021-01-03 15:56:15 +01:00
Nick Treleaven
38e0aa350d
checker: support non-string map.keys method ( #7760 )
2021-01-03 15:55:06 +01:00
Enzo
529f46d808
checker: don't panic on non-array decomposition ( #7836 )
2021-01-03 15:45:39 +01:00
zakuro
91a1a2877b
fmt: add a test for struct embed ( #7831 )
2021-01-03 15:41:19 +01:00
yuyi
60b3658e6f
gen: fix str_gen_test.v ( #7826 )
2021-01-03 15:40:47 +01:00
penguindark
681ff3cc0d
regex: bug fix on .* cases ( #7823 )
2021-01-03 01:33:34 +01:00
Swastik Baranwal
dee3bbffe9
cgen: support .str() for maps with non string keys ( #7806 )
2021-01-02 20:25:46 +02:00
Alexander Medvednikov
fc6d45b2d7
fmt: fix mut_pos in structs with embeds
2021-01-02 19:24:12 +01:00
zakuro
b3de003302
fmt: fix broken formatting in fn struct fields ( #7794 )
2021-01-02 16:36:31 +01:00
zakuro
6bd35505a2
parser: fix error when using imported types in short fn signature ( #7795 )
2021-01-02 15:09:54 +02:00
Don Alfons Nisnoni
e943d03298
mysql: migrate connection flags to enum instead of const, fix example ( #7803 )
2021-01-02 15:09:20 +02:00
yuyi
7f776bfd29
utf8: fix utf8_test ( #7804 )
2021-01-02 14:55:21 +02:00
Delyan Angelov
c1e0e01f8f
vweb: simplify the `[post] pub fn` no routing fix check
2021-01-02 13:47:54 +02:00
Delyan Angelov
d912ff165b
ci: fix failing vweb test, increase timeout for vweb_test_server.v, add VWEB_LOGFILE
2021-01-02 13:33:26 +02:00
yuyi
01e098aa77
vrepl: fix v repl on Windows ( #7798 )
2021-01-02 12:17:39 +01:00
Louis Schmieder
f7135979f5
vweb: fixed req type without path ( #7792 )
2021-01-01 21:57:45 +01:00
Alexander Medvednikov
7496c74f7e
vweb: add [post] test
2021-01-01 21:29:17 +01:00
Nick Treleaven
0a069dee79
gen: support non-string map equality and speed it up ( #7682 )
2021-01-01 20:54:49 +01:00
Alexander Medvednikov
0c77bdf8f6
tutorials: fix blog code
2021-01-01 20:38:22 +01:00
Ned Palacios
40b8d9ca3d
checker: fix infer_fn_type for generic methods ( #7767 )
2021-01-01 17:33:23 +01:00
Daniel Däschle
ac22fe998a
vweb: default init methods ( #7779 )
2021-01-01 17:24:54 +01:00
Nick Treleaven
9243e06dba
parser: allow integer and rune keys for map literal ( #7756 )
2021-01-01 17:23:32 +01:00
Swastik Baranwal
24b18f05c4
cgen: implement > and < for structs ( #7774 )
2021-01-01 14:54:32 +01:00
Nick Treleaven
d15d13674c
parser: parse non-identifier expressions for sizeof too ( #7781 )
2021-01-01 15:38:11 +02:00
Daniel Däschle
5ae3637d27
checker: revert embedded methods fix ( #7780 )
2021-01-01 14:36:07 +01:00
clubby789
9ac237d9c0
match: implement exhaustive match for bool values ( #7761 )
2021-01-01 13:28:23 +02:00
zakuro
73f41f9a2a
scanner: remove unicode operator ( #7766 )
2021-01-01 13:05:28 +02:00
spaceface
480d78de2e
examples/2048: make tiles have rounded corners ( #7763 )
2021-01-01 13:04:51 +02:00
yuyi
b6136f9f8f
clipboard: fix `to_wide()` in clipboard_windows.c.v ( #7768 )
2021-01-01 11:07:58 +02:00
clubby789
bf7da14ba1
cgen: make char literals wide ( #7769 )
2021-01-01 11:06:09 +02:00
Joe Conigliaro
8700080c4a
checker: fix struct embed with overriden method
2021-01-01 09:50:00 +11:00
Joe Conigliaro
e9f9f27e49
checker: fix formatting in tests/web_routing_checks.out
2021-01-01 08:01:00 +11:00
Joe Conigliaro
63afd26c8c
cgen: merge method to write multi return types
2021-01-01 07:45:03 +11:00
yuyi
c3dafad7ef
generics: implement method generics ( fix #7638 ) ( #7732 )
2020-12-31 18:00:22 +01:00
Alexander Medvednikov
2bc9ee4d88
vweb: more updates
2020-12-31 17:47:20 +01:00
Alexander Medvednikov
2533c706ae
vweb: migrate all tests and examples to the new syntax
2020-12-31 17:22:47 +01:00
Alexander Medvednikov
3ffdcd8910
vweb: embed context
2020-12-31 17:07:27 +01:00
zakuro
1fb6710c89
build: remove `v build file.v` ( #7695 )
2020-12-31 15:24:55 +01:00
Alexander Medvednikov
f7b3ed2f4a
cc: hide a print behind -v
2020-12-31 14:24:34 +01:00
Uwe Krüger
74ea5ac99f
checker: check reference return to be really reference ( #7739 )
2020-12-31 12:42:22 +01:00
Swastik Baranwal
a9ab79d301
checker: ban any_int/any_float outside buitlin ( #7675 )
2020-12-31 12:41:30 +01:00
clubby789
3e44393152
x64: optimize mov <reg>, 0 ( #7733 )
2020-12-31 12:40:09 +01:00
Emily Hudson
bf9b0c6345
compiler: add `[console]` attribute for main function to force console subsystem on windows ( #7721 )
2020-12-31 12:38:55 +01:00
Swastik Baranwal
a834f33661
checker: add checks for operator overloading ( #7737 )
2020-12-31 12:38:10 +01:00
Ned Palacios
5597925d58
parser: separate SelectorExpr if name is on another line ( #7700 )
2020-12-31 12:37:11 +01:00
Joe Conigliaro
b2bd2c9337
cgen: make multi return decl order consistant & use typedefs. closes #7728
2020-12-31 21:55:21 +11:00
lydiandy
20f507651e
v.ast: remove unused path and expr fields in Module ( #7625 )
2020-12-31 12:17:59 +02:00
Bakul Shah
45495c3ebb
clipboard: fix test on freebsd ( #7735 )
2020-12-31 11:34:46 +02:00
yuyi
7ce3c5e206
os: change os.mv/2 return type to `?` ( #7738 )
2020-12-31 11:33:39 +02:00
Ryan Prior
64e7c54884
v.util: accomodate reproducible build environments like guix, by not recompiling cmd/tools when mtime < 1024 ( #7702 )
2020-12-31 10:31:38 +02:00
Alicia Woitte
9f3dd6e18f
cli: fix unused callback in test_if_subcommands_parse_args ( #7731 )
2020-12-31 10:16:05 +02:00
Joe Conigliaro
3e655d6bf6
cgen: fix multi return auto str methods. closes #7726
2020-12-31 10:21:02 +11:00
Daniel Däschle
9a31744255
cgen: fix embed generic field access & method call ( #7725 )
2020-12-30 23:49:02 +01:00
Daniel Däschle
b4c5fa8ca0
cgen: fix embed field access from reference ( #7724 )
2020-12-30 21:50:58 +01:00
Daniel Däschle
3ee3c8b3ed
parser: proper error on fn decl in script mode ( #7680 )
2020-12-30 21:18:36 +02:00
Daniel Däschle
e4edc5925a
parser: embed always public and mutable ( #7722 )
2020-12-30 21:17:48 +02:00
Daniel Däschle
b8af81240a
cgen: fix struct embedding method when receiver is ptr ( #7710 )
2020-12-30 20:44:01 +02:00
StunxFS
13cd7e88ef
checker: error taking the address of a boolean literal ( #7716 )
2020-12-30 17:21:15 +01:00
Delyan Angelov
b4f02adc32
os: add os.execve/3 (extracted from unix_spawn_process); use os.execvp/2 in v.util.launch_tool/3
2020-12-30 18:14:03 +02:00
Larpon
c943c8a16e
readline: move get_prompt_offset back to _linux.c.v ( #7714 )
2020-12-30 17:09:07 +01:00
Larpon
7872b8d911
semver: add input information in error and panic output ( #7712 )
2020-12-30 17:07:21 +01:00
Larpon
b1f16533b1
readline: add missing documentation, fix documentation format, add README.md ( #7683 )
2020-12-30 15:09:13 +02:00
Alexander Medvednikov
9976641be0
fmt: fix a space in const decl
2020-12-30 02:24:38 +01:00
Alexander Medvednikov
ad78875a8c
parser: allow `const x = 0` consts outside of const blocks
2020-12-30 02:15:44 +01:00
Alexander Medvednikov
e26a690975
0.2.1
2020-12-29 21:24:33 +01:00
zakuro
b28b41d069
v run: pass all args after file.v only to script args, do not process them as v flags ( #7672 )
2020-12-29 21:16:20 +02:00
yuyi
f6d64c74c2
cgen: fix minor typos in map_fn_ptrs ( #7679 )
2020-12-29 21:02:28 +02:00
yuyi
27db4b4c23
cgen: minor cleanup of cgen.v ( #7688 )
2020-12-29 20:57:34 +02:00
ka-weihe
2c65c5c61a
ci: sanitize compiler for tests ( #7685 )
2020-12-29 20:27:57 +02:00
Delyan Angelov
81fd49642a
net: restore back the blocking TcpConn.read_line() method for simplicity
2020-12-29 17:51:16 +02:00
joe-conigliaro
02965e753e
all: re-implement variadics using arrays & implement array decomposition to varg ( #7689 )
2020-12-29 16:14:08 +01:00
Delyan Angelov
6cf3b96a37
ci: fix .out files after 40ce18f
2020-12-29 16:10:55 +02:00
Delyan Angelov
17e0a65611
net: add support for `-d trace_tcp` to ease debugging
2020-12-29 15:41:46 +02:00
Alexander Medvednikov
40ce18fa3c
checker: handle unwrapped optionals in infix exprs
2020-12-29 13:49:43 +01:00
yuyi
34c89258a4
cgen: fix array of array/map init ( fix #7597 ) ( #7671 )
2020-12-29 11:50:25 +01:00
Joe Conigliaro
d094baf107
cgen: add temp (TODO) auto str for interfaces
2020-12-29 20:25:38 +11:00
Delyan Angelov
84fc9cec4b
builtin: add string.split_by_whitespace()
2020-12-29 08:46:46 +02:00
yuyi
b87283e970
cgen: minor optimization of auto_eq_methods.v ( #7668 )
2020-12-29 07:48:37 +02:00
Lukas Neubert
cf441091f1
fmt: AnonFn with body is not single line ( #7659 )
2020-12-28 20:27:27 +02:00
Lukas Neubert
2360762a42
fmt: fix unexpected `comment`, expecting struct key for trailing arg syntax ( #7658 )
2020-12-28 20:26:24 +02:00
Delyan Angelov
fe7fa7077e
ci: fix for os.execvp on macos (cargs << charptr(cmdpath.str) too)
2020-12-28 20:20:56 +02:00
Delyan Angelov
8fe85bcc33
ci: fix for os.execvp on macos (<<charptr())
2020-12-28 20:15:30 +02:00
Delyan Angelov
4c40891d5e
ci: fix for os.execvp on macos (<<)
2020-12-28 20:10:57 +02:00
Delyan Angelov
a8b2745019
ci: fix for os.execvp on macos
2020-12-28 20:01:19 +02:00
Delyan Angelov
ef786f9a75
os: add os.execvp/2
2020-12-28 19:35:52 +02:00
Swastik Baranwal
2795f929fa
checker: update check for arr=arr1 ( #7651 )
2020-12-28 18:35:34 +01:00
yuyi
9631eac9c5
cgen: fix `array.index()` of ref struct ( #7652 )
2020-12-28 18:33:57 +01:00
ka-weihe
93262353d6
cgen: fix map exists bug ( #7647 ) ( #7655 )
2020-12-28 18:32:51 +01:00
yuyi
32091dd90e
cgen: fix struct equality ( #7649 )
2020-12-28 18:22:47 +02:00
Lukas Neubert
4783503185
fmt: keep interface comments between methods ( #7650 )
2020-12-28 18:14:55 +02:00
Lukas Neubert
97bfabf194
fmt: heavily refactor and improve/fix logic for structs that use short args syntax ( #7653 )
2020-12-28 18:14:08 +02:00
Lukas Neubert
ef6011b94c
fmt: keep comments after struct decl default value ( #7648 )
2020-12-28 15:38:21 +02:00
lydiandy
ecc7c27c9c
v.ast: document vlib/v/ast/ast.v ( #7624 )
2020-12-28 13:52:04 +02:00
Delyan Angelov
3f3ae67b55
Revert "cgen: fix struct_eq ( #7639 )"
...
This reverts commit 164dd3000b
.
2020-12-28 13:16:00 +02:00
penguindark
a98adbb3a4
regex: fix a bug, update docs, explain the assumptions of the `regex` module ( #7629 )
2020-12-28 12:43:03 +02:00
Ned Palacios
2946673bc2
parser: fix StructInitField pos, when value expr is empty ( #7643 )
2020-12-28 12:39:02 +02:00
yuyi
d46b930c71
cgen: fix `in array_of_ref_structs` ( fix #7623 ) ( #7640 )
2020-12-28 12:29:56 +02:00
yuyi
07459a77e3
cgen: fix gen_array_equality_fn() ( #7633 )
2020-12-28 12:26:50 +02:00
yuyi
164dd3000b
cgen: fix struct_eq ( #7639 )
2020-12-28 12:25:22 +02:00
yuyi
547df57316
cgen: fix gen_map_equality_fn() ( #7636 )
2020-12-28 12:22:14 +02:00
yuyi
dea3d0431d
parser: minor cleanup of `parse_block_no_scope()` ( #7644 )
2020-12-28 11:58:44 +02:00
Joe Conigliaro
64c0645bcb
checker: error when trying to propagate optional call in return stmt with ?
2020-12-28 20:09:43 +11:00
Delyan Angelov
100b3704cd
v.pref: fix `-nocache`, add `-no-retry-compilation`, add `-d trace_use_cache`
2020-12-28 09:42:43 +02:00
Delyan Angelov
b7a5dbf7b4
test-cleancode: add the rest of vlib/x/websocket/
2020-12-28 07:25:46 +02:00
Delyan Angelov
b65353794c
ci: run vfmt over websocket_client.v and websocket_server.v
2020-12-28 07:14:06 +02:00
Alexander Medvednikov
bd67b647f2
websocket: vfmt
2020-12-28 01:06:57 +01:00
Joe Conigliaro
dbad60acbf
net: use non versioned paths for openssl on mac arm64
2020-12-28 10:32:35 +11:00
ka-weihe
1d339cff16
map: remove unused code ( #7622 )
2020-12-27 19:16:45 +01:00
Larpon
9e6575eaab
runtime: document all functions ( #7612 )
2020-12-27 20:14:43 +02:00
Swastik Baranwal
d87011ab78
cgen: fix generic contains method ( #7618 )
2020-12-27 20:07:53 +02:00
Larpon
ed6ba0a2b8
rand: document all functions, document range notation form, fix copy-pasta ( #7619 )
2020-12-27 20:06:17 +02:00
ka-weihe
b9df7aae4d
map: cleanup ( #7621 )
2020-12-27 18:31:50 +01:00
Delyan Angelov
df61cf246b
cgen: fix `x.interface_field = value_implementing_interface` ( closes #7620 )
2020-12-27 19:12:39 +02:00
Delyan Angelov
8872b0a23b
v.util: fix launch_tool for the vdoc (folder) case
2020-12-27 17:43:44 +02:00
Lukas Neubert
6f194f2fa9
test-cleancode: add `benchmark` and `bitfield` ( #7613 )
2020-12-27 15:51:55 +02:00
Lukas Neubert
06fdf34214
fmt: unwrap long single line ifs ( #7608 )
2020-12-27 14:20:30 +01:00
Nick Treleaven
e813583bc1
checker: support integer and voidptr key types for maps ( #7503 )
2020-12-27 14:18:46 +01:00
Daniel Däschle
929a002229
vdoc: move to it's own directory cmd/tools/vdoc/ ( #7606 )
2020-12-27 14:43:23 +02:00
Lukas Neubert
c9081a8df8
fmt: improve conditions for single line if
2020-12-27 12:59:28 +01:00
cbracketdash
0210d1bf24
vrepl, term: return cursor to the top-left corner in vrepl after `clear` ( #7600 )
2020-12-27 13:43:36 +02:00
Alexander Medvednikov
06e9951224
Revert "map: fix map.clone, refactor, fix map_get_1, map_set_1 non-string keys ( #7538 )"
...
This reverts commit bcdf3ca0cf
.
2020-12-27 12:04:08 +01:00
Alexander Medvednikov
0d43ff2453
parser: fix `for i, mut val in vals {; examples: vfmt flappybird
2020-12-27 12:02:18 +01:00
Nick Treleaven
bcdf3ca0cf
map: fix map.clone, refactor, fix map_get_1, map_set_1 non-string keys ( #7538 )
2020-12-27 11:54:12 +01:00
yuyi
79117f5581
cgen: move logic from cgen.v to auto_eq_methods.v and array.v ( #7572 )
2020-12-27 11:24:35 +01:00
zakuro
21805ea2a5
all: make eprint[ln] behave same as print[ln] ( #7595 )
2020-12-27 11:22:16 +01:00
Delyan Angelov
d563261e58
vweb: run vfmt, add it to `v test-cleancode`
2020-12-27 11:38:12 +02:00
penguindark
1b9d514275
regex: fix a bug #7559 ( #7601 )
2020-12-27 09:16:00 +02:00
Nick Treleaven
1383771423
cgen: fix return type for MapEqFn and add MapCloneFn, MapFreeFn ( #7578 )
2020-12-26 22:14:31 +02:00
penguindark
b7f4e824df
regex: remove undocumented deprecated calls, optimize speed and memory usage ( #7582 )
2020-12-26 22:08:56 +02:00
Lukas Neubert
13b14ecead
test-cleancode: add the `arrays` module too ( #7583 )
2020-12-26 20:21:52 +02:00
Swastik Baranwal
e27252bef5
parser: fix the position of the multi variable += assign error ( #7584 )
2020-12-26 19:48:58 +02:00
Lukas Neubert
9a5bbc3101
fmt: use single quotes around fixed string arr default expr ( #7581 )
2020-12-26 15:12:25 +02:00
Delyan Angelov
e26e0c3f72
os: restore some of the deprecated os.File methods
2020-12-26 14:57:51 +02:00
Lukas Neubert
6969300f8a
test-cleancode: add vlib/orm ( #7577 )
2020-12-26 14:40:22 +02:00
Lukas Neubert
693e5137eb
fmt: cleanup copy pasta for array_init ( #7579 )
2020-12-26 14:22:50 +02:00
Lukas Neubert
f707e13b3f
fmt: keep order by in orm blocks ( #7576 )
2020-12-26 14:18:09 +02:00
Ned Palacios
dfcbf31f65
parser: return node on incomplete module selector ( #7574 )
2020-12-26 12:23:51 +02:00
yuyi
1558bd1658
parser: minor optimization of `expr()` ( #7575 )
2020-12-26 12:22:06 +02:00
Bakul Shah
80a9d08505
sokol: fix for freebsd ( #7466 )
2020-12-26 10:08:16 +02:00
Daniel Däschle
6842c3c1a4
vdoc: add a node type prefix ( #7563 )
2020-12-26 08:55:35 +02:00
yuyi
d66ed46486
parser: minor cleanup of `stmt()` ( #7573 )
2020-12-26 08:54:13 +02:00
Alexander Medvednikov
13f16b4a82
time: rename to_local_time() to local(); time.offset()
2020-12-26 02:10:47 +01:00
Daniel Däschle
7507403118
cgen: fix zero init bug of embedded structs ( #7567 )
2020-12-25 22:46:42 +02:00
Lukas Neubert
e7ca5dd17a
fmt: update expr_is_single_line for MatchExpr, StructInit and CallExpr with or block ( #7564 )
2020-12-25 21:43:50 +02:00
Lukas Neubert
2c0fba5480
fmt: keep comment between enum fields ( #7566 )
2020-12-25 21:41:59 +02:00
Delyan Angelov
270ba07e83
clipboard: add a `clipboard.x11` submodule, use it by default; add a `clipboard.dummy` for solaris
2020-12-25 19:34:21 +02:00
Nick Treleaven
17cccc7b36
gen: add MapHashFn typedef before map struct is declared ( #7541 )
2020-12-25 19:05:53 +02:00
Lukas Neubert
e9affe33ce
ast: fix C error for scope's .str() method ( #7561 )
2020-12-25 19:03:03 +02:00
yuyi
775d16cce3
array: remove redundant index method in array.v ( #7523 )
2020-12-25 17:21:23 +02:00
yuyi
3345925883
parser: minor simplification of `stmt` ( #7550 )
2020-12-25 16:59:13 +02:00
Lukas Neubert
8cd74df2f3
vfmt: keep UnsafeExpr linebreacks as set by developer ( #7558 )
2020-12-25 16:52:16 +02:00
Daniel Däschle
1605c3b5f8
parser: fix error when accessing module without name after dot ( #7530 )
2020-12-25 16:50:08 +02:00
Delyan Angelov
c6b0ce2a07
ci: disable socket error assertion in profile_test.v
2020-12-25 16:10:18 +02:00
Delyan Angelov
a631078d8a
tests: add vlib/v/tests/profile/profile_test.v regression test
2020-12-25 14:30:22 +02:00
Delyan Angelov
2c1e545d24
cgen: fix -profile for code outside builtin, that returns options
2020-12-25 14:11:21 +02:00
Lukas Neubert
0caf668e73
parser: error if operators are used as function names ( #7532 )
2020-12-24 13:38:11 +02:00
Lukas Neubert
691e6f9d3f
fmt: keep any langauge prefix variations in struct fields ( #7534 )
2020-12-24 13:36:54 +02:00
Delyan Angelov
e5d3aa916d
ci: fix windows jobs by restoring vlib/readline/readline_windows.c.v
2020-12-24 13:10:39 +02:00
zakuro
fec9f1324c
fmt: trim space in embedded comments ( #7521 )
2020-12-24 11:57:48 +01:00
Delyan Angelov
9d1365ec67
readline: put duplicated code in readline_default.c.v
2020-12-24 12:39:11 +02:00
Delyan Angelov
d1223851a2
pref: support _default.c.v , overridable by _platform.c.v
2020-12-24 12:16:20 +02:00
penguindark
2824e07baa
regex: add a find_all_str function ( #7517 )
2020-12-24 07:27:46 +02:00
Delyan Angelov
36dcace0a7
cgen: fix compiling call expressions with no varargs (tcc bug)
2020-12-23 21:15:00 +02:00
spaceface
214290d55b
fmt: add a space around single-line `unsafe` expressions ( #7505 )
2020-12-23 19:13:42 +01:00
Daniel Däschle
b27f5c378c
all: reimplement struct embedding with methods ( #7506 )
2020-12-23 19:12:49 +01:00
yuyi
132807d5d1
cgen: implement generic `array.index` ( #7501 )
2020-12-23 19:10:16 +01:00
yuyi
7b9756be72
parser: check for builtin function redefinitions ( fix #7499 ) ( #7507 )
2020-12-23 18:17:09 +02:00
zakuro
a6e6c48c36
fmt: keep _ separator in number literals ( #7495 )
2020-12-23 14:48:43 +02:00
Delyan Angelov
2c4a51a596
parser: use `v fmt -w "$p.scanner.file_path"` in warns, easing fixing
2020-12-23 14:17:20 +02:00
yuyi
8f4281b790
checker: merge minus_op_wrong_type_err tests to just one ( #7489 )
2020-12-23 10:16:04 +02:00
yuyi
b08fe73614
checker: merge mod_op_wrong_type_err tests to just one ( #7490 )
2020-12-23 10:15:25 +02:00
yuyi
0dd385d480
checker: merge mul_op_wrong_type_err tests to just one ( #7491 )
2020-12-23 10:14:32 +02:00
yuyi
36cc70983e
checker: merge div_op_wrong_type_err tests to just one ( #7493 )
2020-12-23 10:14:08 +02:00
yuyi
5283811055
checker: merge add_op_wrong_type_err tests to just one ( #7488 )
2020-12-23 10:13:46 +02:00
yuyi
1c64635d61
checker: fix multi_array type mismatch check ( #7486 )
2020-12-23 08:05:44 +02:00
yuyi
d964dedbb2
cgen: use more uniform format for automatic code generation ( #7487 )
2020-12-23 08:01:41 +02:00
yuyi
70c136441b
cgen: fix in array of struct error ( fix #7452 ) ( #7463 )
2020-12-23 02:32:19 +01:00
Lukas Neubert
a2cd1b163c
fmt: keep empty curlies and parenthesis as they are ( #7329 )
2020-12-22 23:43:48 +01:00
Lukas Neubert
c4aae2b55f
vfmt: do not replace module aliases in fn param and return types ( #7472 )
2020-12-22 22:38:13 +02:00
penguindark
4069a4c55d
regex: speed optimization 2 ( #7473 )
2020-12-22 22:34:46 +02:00
Alexander Medvednikov
e4f94b6ad5
V 0.2
2020-12-22 20:48:45 +01:00
penguindark
b16052db95
regex: speed optimization ( #7471 )
2020-12-22 18:42:32 +02:00
Delyan Angelov
97855eca93
ci: fix the failing build-module-docs job
2020-12-22 17:25:57 +02:00
joe-conigliaro
5f90192970
math: use full import module name in tests
2020-12-23 01:38:17 +11:00
Lukas Neubert
d1fc65c260
parser: add information about the ending line for a few elements ( #7414 )
2020-12-22 14:45:12 +01:00
zakuro
fb0c4556fd
vfmt: keep JS object name ( #7462 )
2020-12-22 15:32:49 +02:00
Ned Palacios
06369a27c2
parser: return incomplete selector expr stmt ( #7465 )
2020-12-22 13:00:23 +01:00
joe-conigliaro
d5b03d16e0
builder: if fpath is a descendant of modules folder add it as a search path
2020-12-22 22:32:02 +11:00
joe-conigliaro
7224cd667c
rand: use full import in tests (fix -usecache)
2020-12-22 22:04:51 +11:00
yuyi
c11928260d
scanner: minor cleanup of scanner.v ( #7467 )
2020-12-22 10:56:29 +01:00
Alexander Medvednikov
a8447398f5
io: remove obsolete OutputStream
2020-12-22 10:44:45 +01:00
joe-conigliaro
dd27d0a2a3
cgen/builder: make unused-command-line-argument a warning & cgen module_built fix
2020-12-22 19:21:05 +11:00
Delyan Angelov
28b1be3e6e
cgen: enable `./v -os windows -stats vlib/math/big/big_test.v`
2020-12-22 10:09:29 +02:00
Delyan Angelov
93c0f503a2
math.big: make big.from_string take a decimal, add big.from_hex_string
2020-12-22 09:45:56 +02:00
yuyi
b47daad40d
all: remove redundant array.contains definitions ( #7464 )
2020-12-22 08:32:32 +01:00
Alexander Medvednikov
939e10cb28
math.big: minor clean up
2020-12-22 08:27:50 +01:00
Alexander Medvednikov
b3e0926601
json: decode/encode time.Time
2020-12-22 07:24:44 +01:00
Delyan Angelov
9eb6c4ef87
flag: run vfmt over vlib/flag, add it to vtest-cleancode.v
2020-12-21 22:24:10 +02:00
Lukas Neubert
5cd2dffafb
checker: error, when same type is used multiple times in a sum type ( #7432 )
2020-12-21 22:05:50 +02:00
Major Taylor
c831711a0e
sqlite: add `close` method, and an `is_open` field ( #7382 )
2020-12-21 22:02:29 +02:00
zakuro
6c341a77f5
strings: run v fmt ( #7438 )
2020-12-21 22:00:32 +02:00
zakuro
fade162471
semver: run v fmt ( #7439 )
2020-12-21 21:25:19 +02:00
zakuro
805ec8e177
cli: run v fmt ( #7440 )
2020-12-21 21:23:40 +02:00
Lukas Neubert
304aafdc50
fmt: add a space after + operator/method overload ( #7453 )
2020-12-21 21:20:00 +02:00
spaceface
c544cc508b
pref: fix cross-compiling graphical apps to Windows ( #7449 )
2020-12-21 19:45:12 +02:00
Delyan Angelov
dc3a6bb169
builder: use the same compilation mode for thirdparty object files ( #7450 )
2020-12-21 17:46:26 +01:00
yuyi
21cd765eaa
cgen: fix `in` multi_array, generate `.contains()` ( fix #7427 ) ( #7448 )
2020-12-21 16:59:43 +01:00
Nick Treleaven
0edec06eac
gen: use new_map, new_map_init_1 functions ( #7444 )
2020-12-21 14:37:19 +01:00
Alexander Medvednikov
8eac658ed1
cgen: make use_cache less noisy
2020-12-21 11:01:14 +01:00
zakuro
c639dd03d0
time: move - operator to operator.v ( #7433 )
2020-12-21 09:28:00 +01:00
zakuro
c69947160b
time: change type of duration constants from i64 to Duration ( #7435 )
2020-12-21 09:27:06 +01:00
Alexander Medvednikov
fc965b7d92
strconv: make atoi return ?int
2020-12-21 08:35:24 +01:00
Nick Treleaven
2147d8785b
map: add functions new_map/new_map_init_1 with key_bytes parameter ( #7424 )
2020-12-21 06:03:59 +01:00
joe-conigliaro
f0391f7a8f
cgen: fix assignment of fixed array var to another var ( #7429 )
2020-12-21 06:03:09 +01:00
penguindark
c9171ebe9a
regex: fixes and optimizations ( #7431 )
2020-12-21 05:36:14 +01:00
Nick Treleaven
82d1b6a5b7
map: fix wrong use of map.cap and rename field ( #7412 )
2020-12-21 05:34:35 +01:00
Delyan Angelov
5f5c53348b
ci: fix vlib/v/tests/project_with_c_code_2/modc/wrapper.v
2020-12-20 18:33:31 +02:00
joe-conigliaro
23bfbf1665
cmd/pref: disable -usecache on windows & enable by default (commented)
2020-12-21 03:31:57 +11:00
Delyan Angelov
dd5b25a9f2
ci: fix sha1.v, sha1block_generic.v and szip.v
2020-12-20 18:28:40 +02:00
Delyan Angelov
969f8f1a75
ci: fix compilation of the test infrastructure
2020-12-20 18:27:42 +02:00
Alexander Medvednikov
50a6976b5e
all: minor array fixes
2020-12-20 16:08:56 +01:00
Alexander Medvednikov
3c210a57f9
all: minor array fixes
2020-12-20 15:40:49 +01:00
Alexander Medvednikov
6bf21c300a
checker: do not allow arr1=arr2 without cloning
2020-12-20 15:33:55 +01:00
Alexander Medvednikov
583c02316a
checker: more arr1=arr2 fixes
2020-12-20 15:21:32 +01:00
joe-conigliaro
628021a7cf
cgen: v fmt fn.v
2020-12-20 22:21:46 +11:00
joe-conigliaro
3b2083801b
cgen: fix module builds when -usecache is on by default
2020-12-20 22:03:27 +11:00
Delyan Angelov
4b45f2eaab
builder: do not remove executables after run when -keepc is passed; add `-d trace_thirdparty_obj_files`
2020-12-20 12:22:17 +02:00
Delyan Angelov
b1f6ff8871
ci: fix failing vweb_routing_checks.vv
2020-12-20 11:59:38 +02:00
Alexander Medvednikov
875f7a77a9
checker: arr1=arr2 warning
2020-12-20 10:42:46 +01:00
Alexander Medvednikov
4a5fb854e0
array: vfmt array_test.v
2020-12-20 10:34:19 +01:00
joe-conigliaro
12d5720841
builder: don't pass -usecache linker flags when building modules
2020-12-20 18:23:54 +11:00
Alexander Medvednikov
60c936a688
tests: remove map reference test
2020-12-20 07:59:39 +01:00
Alexander Medvednikov
4fc5e83771
checker: never allow taking the address of map values
2020-12-20 07:55:23 +01:00
joe-conigliaro
bbcaaa1232
cgen: use gen.expr for default fixed array init expr. closes #7411
2020-12-20 15:50:43 +11:00
yuyi
829334890b
table: minor optimization of types.v ( #7419 )
2020-12-20 04:54:49 +01:00
Uwe Krüger
af9766a7d6
sync: support concurrent `select`s on same channel(s) ( #7415 )
2020-12-20 04:52:40 +01:00
penguindark
b29bcb3fbe
regex: refactoring, documentation, examples ( #7418 )
2020-12-20 04:52:02 +01:00
Uwe Krüger
8278af4ee8
parser: hot fix to handle `x = <-ch[i] or { }` ( #7416 )
2020-12-19 22:44:16 +02:00
Delyan Angelov
cd30dcc287
builtin: make array.ensure_cap/1 more robust
2020-12-19 21:36:08 +02:00
joe-conigliaro
d782db8878
util: add clipboard & ui to bundle_modules (fix dupe symbols)
2020-12-20 03:38:11 +11:00
Delyan Angelov
19bfd5ffb5
ci: fix building
2020-12-19 13:16:18 +02:00
Delyan Angelov
2f1cc2bd08
v.util: simplify the sorting of v's timing output
2020-12-19 12:55:42 +02:00
Delyan Angelov
a1c81aa49d
v,gen,checker: implement `-d time_checking -d time_cgening -d time_v`
2020-12-19 12:36:08 +02:00
Alexander Medvednikov
10168d307e
pref: remove duplicate flag "build"
2020-12-19 10:34:59 +01:00
Alexander Medvednikov
1f74f83bc6
parser: map or block; checker: require ref field init
2020-12-19 10:28:17 +01:00
Ned Palacios
3a86f27b9f
cgen: fix optional struct const field access ( #7405 )
2020-12-19 09:43:50 +01:00
yuyi
e4973782b1
cgen: fix multi_array prepend/insert ( #7381 )
2020-12-19 07:28:15 +01:00
yuyi
598d18cbd9
cgen: fix default zero in map fields ( fix #7328 ) ( #7394 )
2020-12-19 06:55:13 +01:00
Delyan Angelov
adaffd0d8e
pref: pass custom -d options down to `v build-module` (fix for -usecache)
2020-12-19 01:54:18 +02:00
penguindark
1e4b3a7b27
regex: code cleaning, add more tests ( #7402 )
...
* added carsywulf tests to the suite, removed deprecated repeat for init arrays
* some clean in the code, fix typo in README.md
2020-12-19 01:32:57 +02:00
yuyi
ff2cfd4f38
checker: fix fn_array types check ( #7376 )
2020-12-19 01:10:11 +02:00
Nick Treleaven
042449cd3d
cgen: use voidptr key methods: map_get_1, map_set_1, map_get_and_set_1 ( #7390 )
2020-12-19 01:05:16 +02:00
Larpon
6854ba27e2
builtin: add missing fn documentation to option.v, fix naming of arguments. ( #7386 )
2020-12-19 00:27:35 +02:00
Uwe Krüger
bcda0eeadc
sync: fix rare freeze on `select` ( #7398 )
2020-12-19 00:02:29 +02:00
ka-weihe
5788d6d768
cc: enable more C warnings ( #7401 )
2020-12-18 23:33:51 +02:00
Delyan Angelov
8e6d2df131
bitfield: document all functions
2020-12-18 22:10:51 +02:00
Delyan Angelov
f74ab3a52d
bitfield: add bf.from_bytes_lowest_bits_first/1 and a test for it
2020-12-18 21:58:42 +02:00
Delyan Angelov
c5c310280f
bitfield: fix bf.from_bytes/1 ( now, bf.from_bytes(b) == bf.from_str(bf.from_bytes(b).str()) )
2020-12-18 21:47:24 +02:00
Delyan Angelov
05f6e8b5aa
dl: add comments for the dl/example
2020-12-18 19:41:01 +02:00
Larpon
c32547f382
builtin: document all functions in builtin.c.v ( #7387 )
2020-12-18 19:31:00 +02:00
Larpon
a9aee1ce97
benchmark: document all functions ( #7393 )
2020-12-18 19:21:20 +02:00
Larpon
4e73741673
log: document all functions, add missing copyright header ( #7391 )
2020-12-18 19:04:49 +02:00
Delyan Angelov
6f7889a3ca
parser: support for `-d time_parsing`
2020-12-18 17:23:57 +02:00
Delyan Angelov
7e1e247f56
builder: implement b.timing_start/1 and b.timing_measure/1
2020-12-18 13:21:17 +02:00
Delyan Angelov
04757a4853
vfmt: fix `struct Abc { field fn() ? }`
2020-12-18 11:32:04 +02:00
Nick Treleaven
3976228ae0
map: add voidptr key methods ( #7377 )
2020-12-18 07:37:59 +01:00
Louis Schmieder
d96dcefb06
vweb: http methods check ( #7371 )
2020-12-18 07:34:06 +01:00
penguindark
a6baffcb8c
regex: lots of fixes ( #7380 )
2020-12-18 05:57:31 +01:00
joe-conigliaro
05e15bdd59
builder/cgen: fix -usecache using absolute mod paths (ui examples ~/.vmodules)
2020-12-18 11:21:40 +11:00
yuyi
b10f692c43
gen: fix errors of string interpolation of fn values in struct/array/map ( #7367 )
2020-12-17 11:16:27 +02:00
Delyan Angelov
c4c0b5eb06
flag: add fp.limit_free_args(0,0) to the readme example too
2020-12-17 10:17:46 +02:00
Delyan Angelov
9bd14e8421
flag: update vlib/flag/README.md
2020-12-17 10:11:09 +02:00
Ned Palacios
c164586fd5
cgen: fix map clone ( #7366 )
2020-12-17 08:44:50 +01:00
Delyan Angelov
8addb31440
os: fix typo in AAssetManager
2020-12-17 09:08:23 +02:00
joe-conigliaro
05e101bd95
builder: v fmt cc.v
2020-12-17 16:51:13 +11:00
joe-conigliaro
40bad75a8f
builder: temp macos self -usecache fix (will break -usecache with ~/.vmodules/ui)
2020-12-17 16:46:20 +11:00
joe-conigliaro
f2f32626bc
all: get -usecache working with mods in ~/.vmodules (ui examples)
2020-12-17 16:08:28 +11:00
Daniel Däschle
7022456c9d
Alias string compare ( #7364 )
2020-12-16 21:40:56 +02:00
Emily Hudson
553ecf63e7
vlib/io: fix reader bugs, make read_all take a config struct ( #7361 )
2020-12-16 18:22:26 +01:00
Swastik Baranwal
1a2c7cd336
checker: add more casts checks ( #7355 )
2020-12-16 17:50:39 +01:00
Delyan Angelov
1ee57649b9
os: vfmt all of `os` .v files, add it to `v test-cleancode` with no exceptions
2020-12-16 14:15:11 +02:00
zakuro
6a74058190
time: make parse_iso8601 support a date only format ( #7277 )
2020-12-16 13:10:02 +02:00
Delyan Angelov
88a8507dd8
os: vfmt most of `os`, add it to `v test-cleancode`
2020-12-16 11:08:23 +02:00
yuyi
525b521b4a
cgen: impliment gen_str_for_fn_type() ( #7353 )
2020-12-16 11:07:58 +02:00
Ned Palacios
604eab7742
cgen: fix interface struct field initialization ( #7340 )
2020-12-16 11:03:28 +02:00
joe-conigliaro
7426544610
parser: vfmt parser.v
2020-12-16 18:09:02 +11:00
joe-conigliaro
a7879ce77e
parser: differentiate recursive alias & existing type err + rune fix
2020-12-16 18:03:49 +11:00
Nick Treleaven
7c8fa62cc2
map: encapsulate key clone operation on voidptr ( #7327 )
2020-12-16 02:23:59 +01:00
LilEnvy
665e6cc957
math.big: fix big.from_string #7313 ( #7351 )
2020-12-16 02:23:02 +01:00
Swastik Baranwal
52f908839e
parser: add error for self aliasing ( #7347 )
2020-12-15 21:49:04 +02:00
Delyan Angelov
3fdff93c3f
dl: run vfmt over all .v files
2020-12-15 18:55:04 +02:00
Delyan Angelov
50c09e074a
dl: always use dl.get_shared_library_extension() for dl.dl_ext
2020-12-15 18:53:27 +02:00
Delyan Angelov
3e85c759aa
net: fix udp default timeouts
2020-12-15 18:31:39 +02:00
Delyan Angelov
3a9034a0d0
dl: add a complete tested shared library generation/usage example
2020-12-15 18:22:07 +02:00
Delyan Angelov
e3a1756b11
net: add tcp_default_read_timeout and tcp_default_write_timeout and use them consistently
2020-12-15 17:54:51 +02:00
Delyan Angelov
a4d3a0575a
vdoc: add http connection read/write timeouts ( fix #7343 )
2020-12-15 17:12:39 +02:00
yuyi
e40e1500a8
cgen: fix map['xxx']() error ( #7342 )
2020-12-15 16:07:24 +01:00
joe-conigliaro
239a8c8aa3
cgen: cached modules fixes ( #7345 )
2020-12-15 16:07:06 +01:00
penguindark
9f190b82ad
regex: added rounded squares to backslash chars list, bug fix #7339 ( #7346 )
2020-12-15 16:04:06 +01:00
Delyan Angelov
5684ed5a8a
ci: fix windows jobs
2020-12-15 11:01:51 +02:00
Delyan Angelov
058258bc72
ci: fix atoi.v's max_u64
2020-12-15 10:56:56 +02:00
Delyan Angelov
d91634985f
ci: fix math.bits.max_u64/math.bits.max_u32
2020-12-15 10:52:57 +02:00
Delyan Angelov
8067fcee57
builder: change the tcc recompilation failed message
2020-12-15 10:47:41 +02:00
Swastik Baranwal
b2685c6060
builtin: add more docs to array.v ( #7194 )
2020-12-15 10:31:35 +02:00
Delyan Angelov
d155d8d3f0
vlib: prepare atoi.v and utf8.v for -Wimpure-v
2020-12-15 10:17:46 +02:00
Delyan Angelov
bd07177ef0
vlib: prepare os for -Wimpure-v
2020-12-15 09:58:33 +02:00
Delyan Angelov
14d55d26a3
vlib: extract C. calls from builtin.v to builtin.c.v
2020-12-15 09:41:06 +02:00
yuyi
947ceb1595
os: format os.v ( #7334 )
2020-12-15 09:33:31 +02:00
Delyan Angelov
3064fff95b
vlib: prepare modules `hash` and `term` for -Wimpure-v
2020-12-15 09:11:17 +02:00
Delyan Angelov
ed50e22e18
parser: support _js.v and _c.v for `-Wimpure-v`
2020-12-15 08:24:26 +02:00
Delyan Angelov
0da1d757cb
builtin: support '-d no_backtrace' directly in panic(), to ease creating .so files with tcc
2020-12-15 06:35:21 +02:00
yuyi
bfa8e4bf86
parser: minor cleanup of `check()` ( #7333 )
2020-12-15 04:31:34 +01:00
Swastik Baranwal
da9588c1a5
checker: fix struct cast ( #7308 )
2020-12-15 04:30:51 +01:00
Lukas Neubert
c922565525
fmt: only insert a space after // if the 3rd char is alphanumeric ( #7330 )
2020-12-15 04:26:28 +01:00
yuyi
8ab59c5f0f
parser: implement a direct call to an array of functions ( fix #6908 ) ( #7322 )
2020-12-15 04:24:57 +01:00
Swastik Baranwal
a3c3fd4d20
cgen: fix generation of array names in generic structs ( #7324 )
2020-12-15 02:52:20 +11:00
penguindark
4f986ccac4
regex: refactoring of continuous capturing groups ( #7310 )
2020-12-14 14:02:13 +01:00
Nick Treleaven
89ef316db3
map: use voidptr-based key equality and meta index methods ( #7320 )
2020-12-14 14:57:53 +02:00
Nick Treleaven
999fe846e5
vtest-cleancode: add builtin/map.v to fmt list ( #7285 )
2020-12-14 12:31:24 +02:00
Enzo
78fb84c4dd
gen: fix comparing signed int to u32/u64 ( #7312 )
2020-12-14 12:01:11 +02:00
LilEnvy
069d77d1c5
math.big: implement decimal .str() for big numbers ( #7314 )
2020-12-14 11:53:18 +02:00
ka-weihe
f57c7032b4
ci: fix sanitizers and add -fsanitize=undefined ( #7306 )
2020-12-14 06:34:47 +01:00
Lukas Neubert
9b139c58ca
fmt: keep module alias in struct decl field types ( #7305 )
2020-12-14 05:03:43 +01:00
Lukas Neubert
d59c5b01e1
fmt: intelligent line wrap for trailing struct syntax ( #7309 )
2020-12-14 05:03:17 +01:00
Uwe Krüger
591e523cf3
time: fix date parsing tests in winter for regions using DST ( #7304 )
2020-12-14 05:01:58 +01:00
Delyan Angelov
ecfd124390
builtin: call C.tcc_backtrace() directly in the panic() fns
2020-12-13 11:01:04 +02:00
LilEnvy
0aacc9a80a
array: [].map(fn...) return type can be different than original type ( #7300 )
2020-12-13 03:29:48 +01:00
Nick Treleaven
ae460a2208
map: make DenseArray.has_index not assume string keys ( #7284 )
2020-12-13 02:05:56 +01:00
penguindark
4324be9bd8
regex: fix for issue #7227 , more tests ( #7296 )
2020-12-13 02:04:53 +01:00
Alexander Medvednikov
576396cf20
gg: fix cached images loaded from memory
2020-12-12 23:30:41 +01:00
Daniel Däschle
fb9db11a00
cgen: fix line number generation on match ( #7292 )
2020-12-12 23:08:45 +01:00
ka-weihe
4d025582c0
cgen: fix shadowing warning ( #7289 )
2020-12-12 23:06:02 +01:00
Dialga
4500aade95
vweb: fix scan_static_directory ( #7275 )
2020-12-12 19:13:43 +02:00
Delyan Angelov
03f644e099
builtin: change V's panic() to not segfault; use `-d panics_break_into_debugger` to override
2020-12-12 16:05:22 +02:00
Daniel Däschle
7e3e30aa9c
ci: add a parser fuzzer step too ( #7288 )
2020-12-12 15:20:38 +02:00
Daniel Däschle
b76c91ec05
parser: silent mode fixes ( #7286 )
2020-12-12 13:52:22 +01:00
Larpon
1ff6230062
builtin: document all functions in string.v ( #7273 )
2020-12-12 12:10:29 +02:00
zakuro
df27a2b8d2
time: add test_parse_is8601_invalid ( #7278 )
2020-12-12 11:00:07 +01:00
yuyi
095327134e
os: fix trailing slash in dir() ( #7283 )
2020-12-12 10:59:43 +01:00
Nick Treleaven
d785e22a6e
checker: disallow assigning number to pointer ( #7267 )
2020-12-12 10:42:07 +01:00
zakuro
5fec0d785a
time: fix timezone problems of parse_iso8601 ( #7272 )
2020-12-12 09:19:03 +01:00
joe-conigliaro
0aa9f5a007
all: optimize scope usage in checker & parser. store scope in ast nodes ( #7281 )
2020-12-12 19:01:12 +11:00
Takahiro Yaota
eb48208599
time: Time.add ( #7262 )
2020-12-12 04:22:30 +01:00
Daniel Däschle
11808f9fa3
parser: fix silent errors ( #7271 )
2020-12-12 04:06:09 +01:00
Denis
a26e1e6e13
time: fix typo ( #7274 )
2020-12-11 19:30:34 +01:00
Daniel Däschle
597c2249e0
parser: fix expected type enum error pos ( #7265 )
2020-12-11 19:23:29 +02:00
Lukas Neubert
25153490e1
fmt: keep comments after assign on same line ( #7269 )
2020-12-11 19:20:24 +02:00
yuyi
2a731e1c8e
scanner: fix interpolation with more embedded string args ( #7258 )
2020-12-11 19:15:59 +02:00
Daniel Däschle
9c1a5c5117
parser: fix silent parsing examples/vmod.v ( #7264 )
2020-12-11 19:14:07 +02:00
Delyan Angelov
f2ea21b571
vfmt: run over vlib/v/checker/checker.v
2020-12-11 15:16:26 +02:00
Delyan Angelov
df4ec89a03
checker: fix `L1: for{ for{} }` incorrectly setting c.loop_label to '' after the inner loop
2020-12-11 13:14:15 +02:00
joe-conigliaro
90b5f6f4e0
checker: add tests for assign sum type to non sum type error
2020-12-11 21:52:25 +11:00
joe-conigliaro
5c213de003
checker: fix assign error assigning sum type to non sum type. closes #7233
2020-12-11 21:38:53 +11:00
joe-conigliaro
d7ff342ab3
fmt: fix formatting in anon_fn_as_param_keep.vv
2020-12-11 21:13:18 +11:00
joe-conigliaro
1626aa5500
fmt: make test clearer
2020-12-11 21:09:36 +11:00
joe-conigliaro
d1224ffb5a
parser: error on non local array/map methods & add tests
2020-12-11 20:50:26 +11:00
joe-conigliaro
a0d10a6606
parser: enum_decl - remove redundant position variable
2020-12-11 19:36:39 +11:00
joe-conigliaro
14c4ba6dd9
parser: error on duplicate enum declaration
2020-12-11 19:30:47 +11:00
Delyan Angelov
668483ee56
pref: fix -prof, to behave exactly the same as -profile
2020-12-11 09:28:34 +02:00
joe-conigliaro
6f474913cf
table: properly detect duplicate types
2020-12-11 17:39:51 +11:00
Daniel Däschle
8823430c71
parser: small fixes to make silent mod work with example/json ( #7246 )
2020-12-11 06:55:39 +01:00
Takahiro Yaota
a2f7e0636d
time: `-` operator overloading ( #7259 )
2020-12-11 06:54:23 +01:00
Alexander Medvednikov
d319fe14f0
string: fix a one byte leak in .substr()
2020-12-11 05:12:18 +01:00
Alexander Medvednikov
a297cf8676
string: fix one byte leak in clone()
2020-12-11 05:03:37 +01:00
Andréas Livet
18ec24dd53
gen: fix mutable map generation ( #7251 )
2020-12-11 04:48:55 +01:00
Enzo
04346e7ba5
checker: allow void,char,byteptr to be mut args ( #7239 )
2020-12-11 04:47:10 +01:00
spaceface777
ca2c082a5e
checker: initial support for evaluating expressions at compile time ( #7248 )
2020-12-11 04:46:06 +01:00
yuyi
c4e76e6a59
checker: check div/mod by zero ( #7256 )
2020-12-11 04:44:07 +01:00
Tomas Hellström
3eb1550b43
x.websocket: Fixes wss connection failures to certain addresses ( #7247 )
2020-12-11 02:04:12 +02:00
Daniel Däschle
aedd1d17b8
parser: fix `v test-parser examples/cli.v` ( #7243 )
2020-12-10 19:32:15 +02:00
Daniel Däschle
1c56ff7faf
parser: fix fibonacci in silent mode ( #7240 )
2020-12-10 18:17:25 +02:00
Daniel Däschle
916a64935a
checker: fix sumtype matching test ( #7235 )
2020-12-10 17:22:54 +02:00
Daniel Däschle
8b3ffb9be2
scanner: fix when string literal ends after } ( #7237 )
2020-12-10 17:04:12 +02:00
Daniel Däschle
f6a2dba7ff
parser: refactor args count error ( #7238 )
2020-12-10 16:42:30 +02:00
Daniel Däschle
1f952330c4
parser: fix fn args eol errors ( #7222 )
2020-12-10 11:56:08 +02:00
Daniel Däschle
0bf679a7aa
checker: correct underline for unknown type in method type ( #7223 )
2020-12-10 11:51:22 +02:00
yuyi
e6d162ad65
parser: minor cleanup of `parser.v` ( #7226 )
2020-12-10 11:25:57 +02:00
yuyi
ca39a9a1a9
test: add more embed string interpolation tests ( #7229 )
2020-12-10 11:20:42 +02:00
Daniel Däschle
a38fe4fca9
checker: fix smartcast inside smartcast ( #7215 )
2020-12-10 00:59:39 +01:00
Seven Du
4a35a75b64
json: fix raw json string decoding crash when expected key is missing ( #7206 )
2020-12-09 20:10:41 +01:00
Daniel Däschle
032ea0f4f8
scanner: fix silent mode string parsing ( #7220 )
2020-12-09 20:09:07 +01:00
Ned Palacios
b952bf2e6b
net.html: polish module, update docs ( #7193 )
2020-12-09 20:08:15 +01:00
yuyi
5fa1e403ec
scanner: fix interpolation with string args ( #7214 )
2020-12-09 19:58:27 +01:00
Nick Treleaven
cf755d40b7
checker: allow ++, -- on byteptr, charptr ( #7218 )
2020-12-09 19:58:02 +01:00
Nick Treleaven
92a8db5b2b
checker: remove duplicated unsafe tests ( #7216 )
2020-12-09 19:57:15 +01:00
Delyan Angelov
aa0ddec638
cgen: unify _name_table[0]{} generation (fix a bootstrapping problem with v_win.c and msvc)
2020-12-09 20:18:48 +02:00
Delyan Angelov
23f5cecbd0
ci: run vfmt over vlib/v/gen/cgen.v
2020-12-09 20:12:47 +02:00
Delyan Angelov
c7bea03ce3
ci: fix msvc _name_table [0]{} generation
2020-12-09 20:08:51 +02:00
Delyan Angelov
9451233c34
cgen: force CI rebuild with newer vc/
2020-12-09 19:49:37 +02:00
Delyan Angelov
6115db4820
cgen: fix msvc CI failure on `static struct _name_table[] = {}`, by skipping static for now
2020-12-09 19:25:36 +02:00
Delyan Angelov
80d12f6795
cgen: add static for the generated _name_table (fixes `./v -cc clang -o v2 -usecache cmd/v` on macos)
2020-12-09 19:03:48 +02:00
Delyan Angelov
8caf3829d7
checker: fix interface checking of array arguments; closes #2377
2020-12-09 18:51:37 +02:00
Delyan Angelov
3b94a2b77a
cgen: fix interface _name_table generation; closes issue #73
2020-12-09 17:07:11 +02:00
Lukas Neubert
0e7192c9b7
fmt: keep comments in struct init without fields ( #7212 )
2020-12-09 16:35:03 +02:00
Delyan Angelov
ada02d4498
time: fix failing test_iso8601_parse_utc
2020-12-09 15:48:21 +02:00
Delyan Angelov
338f3afd31
vfmt: fix `type MyFn = fn (int) int mut arr := []MyFn{}`
2020-12-09 15:18:45 +02:00
Lukas Neubert
3b6b5b8090
vfmt: properly parse comments on lines after init fields ( #7202 )
2020-12-09 11:11:22 +02:00
yuyi
05a217aaf0
scanner: minor cleanup and optimization in scanner.v ( #7204 )
2020-12-09 02:09:46 +01:00
Alexander Medvednikov
1abb40dc46
cgen: use `cur_mode ast.Module` instead of a string
2020-12-08 19:52:33 +01:00
penguindark
2bc1076921
regex: bug fixes, improved tests
2020-12-08 19:38:25 +01:00
Alexander Medvednikov
a1c0bb3585
os: File.write_string()
2020-12-08 19:37:33 +01:00
Takahiro Yaota
036e762446
time: make parse_iso8601 support format without microseconds ( #7176 )
2020-12-08 17:53:54 +01:00
Delyan Angelov
d5915bde7c
parser: implement support for -Wimpure-v ( #7195 )
2020-12-08 17:52:24 +01:00
Leah Lundqvist
90c1c639fe
js: types ( #7108 )
2020-12-08 17:49:20 +01:00
Andréas Livet
a2ec52b8c4
builtin: rewrite string.split_nth and fix some bugs ( #7189 )
2020-12-08 10:51:47 +02:00
joe-conigliaro
8931d3d39c
checker: include built-in pointer types when checking fn expects non reference. closes #7133
2020-12-08 17:11:15 +11:00
joe-conigliaro
44b9ea4a75
cgen: selector expr / method call on sumtype pointer #7191
2020-12-08 16:08:10 +11:00
joe-conigliaro
805da2325f
cgen: defer was broken in presence of anon fn. fixed #7171
2020-12-08 14:21:19 +11:00
Delyan Angelov
3386526610
builder: improve support for -g in cross compilation to windows
2020-12-07 23:38:21 +02:00
Nick Treleaven
63557d0d02
checker: disallow op= and infix on a voidptr ( #7175 )
2020-12-07 22:43:38 +02:00
Delyan Angelov
ed9aa873c1
gg: use gg.system_font_path() as a fallback when a font can not be found
2020-12-07 21:40:24 +02:00
Delyan Angelov
0efdc7bbe8
gg: print a diagnostic message when a requested font file is not found
2020-12-07 21:28:41 +02:00
Delyan Angelov
1914bc790b
builder: add comment about the goal of cflags.c_options_only_object_files() in cross compilation
2020-12-07 20:35:04 +02:00
Delyan Angelov
4b4733d6b4
builder: fix cross compilation of examples from linux->windows
2020-12-07 19:57:12 +02:00
Nick Treleaven
a100b05647
checker: improve 'operator not defined on right operand type' error ( #7185 )
2020-12-07 18:37:17 +01:00
spaceface777
744a36ed71
js: restructure namespaces ( #7170 )
2020-12-07 18:36:22 +01:00
Delyan Angelov
d38bca5958
checker: tweak the import private function message a little
2020-12-07 19:22:37 +02:00
joe-conigliaro
78a6795319
all: change the way import symbols work & support consts ( #7182 )
2020-12-07 19:13:03 +02:00
Lukas Neubert
f30faf2627
scanner: allow \e escape used for ANSI colors ( #7177 )
2020-12-07 17:21:34 +01:00
Takahiro Yaota
b5982b638a
time: fix typo in test ( #7174 )
2020-12-07 17:21:12 +01:00
Uwe Krüger
fd689f5fdd
cgen: optimize array op assign ( #7178 )
2020-12-07 17:13:19 +01:00
Delyan Angelov
91e18b039c
net: fix cross compilation with mingw, Ws2tcpip.h => ws2tcpip.h
2020-12-07 10:41:42 +02:00
yuyi
f377710c0b
scanner: minor optimization in `text_scan()` ( #7172 )
2020-12-07 06:33:41 +01:00
joe-conigliaro
14887304d8
sokol: allow submodules to be built by themselves (add required imports)
2020-12-07 16:16:21 +11:00
Ned Palacios
2ba8d31118
vdoc: fix sorting; fix missing symbols; document functions ( #7161 )
2020-12-07 02:43:25 +01:00
joe-conigliaro
dcca821000
cgen: autofree - set/reset g.branch_parent_pos for all for loops
2020-12-07 12:08:09 +11:00
yuyi
bac6be2273
token: minor clean up ( #7163 )
2020-12-06 16:48:23 +01:00
Uwe Krüger
853dcc33c7
cgen: optimize map op_assign ( #7162 )
2020-12-06 15:20:31 +01:00
Takahiro Yaota
0c50f0c9dc
time: v fmt ( #7160 )
2020-12-06 15:19:39 +01:00
Delyan Angelov
2be0c6af47
builtin: implement -d exit_after_panic_message (speeds up `v test-parser` with gcc/clang)
2020-12-06 14:21:37 +02:00
joe-conigliaro
5931b26737
cgen: remove extraneous call to util.no_dots
2020-12-06 22:12:23 +11:00
Daniel Däschle
334d605d90
tools,vls: add `v test-parser examples/hello_world.v` ( #7145 )
2020-12-06 12:42:56 +02:00
Alexander Medvednikov
8eff8b0eff
autofree: fix `for` args
2020-12-06 08:38:21 +01:00
Alexander Medvednikov
b6ae81032f
ast: Var.is_tmp field
2020-12-06 08:19:17 +01:00
joe-conigliaro
cd72c25edb
cgen: vfmt cgen.v after changes from previous commit
2020-12-06 18:05:17 +11:00
joe-conigliaro
7733834751
parser/cgen: autofree - move branch_parent_pos to cgen.
2020-12-06 18:02:36 +11:00
joe-conigliaro
d7c057840a
parser: autofree - reset p.branch_parent_pos to previous pos on return
2020-12-06 17:00:44 +11:00
joe-conigliaro
aeb467e038
cgen: fix typo from previous commit
2020-12-06 15:18:24 +11:00
joe-conigliaro
d779510616
cgen: remove debugging comments added in a05408b
2020-12-06 15:16:45 +11:00
João Victor Oliveira Couto
cb5f75c7bf
net.html: change license in readme ( #7157 )
2020-12-06 05:11:43 +01:00
joe-conigliaro
a05408b49a
all: make type system use source name & cleanup storing name in fields
2020-12-06 14:55:08 +11:00
Roland Lammel
028c82e255
fmt: improve map value alignment ( #7105 ) ( #7151 )
2020-12-06 02:04:45 +01:00
Lukas Neubert
79a20c338b
regex: format readme examples ( #7154 )
2020-12-06 02:04:07 +01:00
ka-weihe
96d28b4485
map: more tests ( #7153 )
2020-12-06 01:28:11 +01:00
ka-weihe
5a7fdb0610
map: optimize free() and keys() ( #7152 )
2020-12-06 00:24:24 +01:00
Lukas Neubert
8adb1acf31
check-md: verify code example formatting ( #7143 )
2020-12-05 22:54:41 +01:00
Nick Treleaven
0d28f12c54
map: use untyped keys for DenseArray and interleave keys and values ( #7142 )
2020-12-05 22:53:50 +01:00
penguindark
6b7d7cee0c
regex: new examples, new utility functions ( #7150 )
2020-12-05 22:24:08 +01:00
Delyan Angelov
1739b08e73
builtin: add a test for the sorting of []u64 too
2020-12-05 23:21:20 +02:00
Delyan Angelov
b99ea332f0
cgen,builtin: fix sort for []u64
2020-12-05 23:14:19 +02:00
yuyi
29857cb9d6
checker: fix interpolation recursive str ( fix #1905 ) ( #7141 )
2020-12-05 21:41:54 +01:00
Alexander Medvednikov
22ebbab462
autofree: set tmp var pos
2020-12-05 21:27:49 +01:00
Delyan Angelov
946a1418fe
Revert "autofree: handle tmp vars in for loops"
...
This reverts commit 1d6c604664
.
2020-12-05 21:52:50 +02:00
Alexander Medvednikov
e2e0c625f1
net: add openssl header dir on arm64 macs
2020-12-05 20:27:16 +01:00
Alexander Medvednikov
1d6c604664
autofree: handle tmp vars in for loops
2020-12-05 20:11:31 +01:00
Delyan Angelov
6e76d5d1db
cgen: fix double escaping \n in @VMOD_FILE expansion
2020-12-05 20:13:36 +02:00
joe-conigliaro
7212b2eff2
parser: vfmt parser.v which was modified in previous commit
2020-12-06 02:39:56 +11:00
joe-conigliaro
83f651c29a
cgen: autofree - know where to stop freeing parent scops on continue/break
2020-12-06 02:36:27 +11:00
Xavier B
fafe30b6aa
json: add support for aliased struct fields ( #6556 )
2020-12-05 16:13:18 +01:00
joe-conigliaro
865c30118f
checker: add fix & better comment for previous commit
2020-12-06 01:37:00 +11:00
joe-conigliaro
3172f324d1
checker: infer array_init type from call with in return of or block. closes #7135
2020-12-06 01:26:28 +11:00
Delyan Angelov
daa659e1fd
builder: allow for `-os windows -cc msvc -o x.c` on any platform
2020-12-05 15:35:39 +02:00
Delyan Angelov
fbf6910ab9
builder: remove executables after `v run file.v`
2020-12-05 13:03:12 +02:00
Delyan Angelov
7d9d42b2e2
math.fractions: document the remaining functions in math.fractions
2020-12-05 12:23:18 +02:00
Delyan Angelov
0dfcacd26b
cgen: fix `fn f(mut a []int) { a << [1,2] }`
2020-12-05 10:12:17 +02:00
Delyan Angelov
b18915df62
tests: cleanup long running repl tests (replaced by faster ordinary tests in vlib/v/tests/)
2020-12-05 08:52:08 +02:00
yuyi
595efbac5b
checker: fix or_block return &type mismatch ( #7138 )
2020-12-05 08:06:51 +02:00
Alexander Medvednikov
d1281ac6c1
autofree: handle` break`
2020-12-05 05:06:52 +01:00
penguindark
4fb37e81b2
regex: bug fixes ( #7137 )
2020-12-05 01:51:48 +01:00
Alexander Medvednikov
89952edd25
gg: remove unnecessary copy in draw_text
2020-12-05 00:03:46 +01:00
Alexander Medvednikov
5180013aef
autofree: fix array re-assignment with struct fields
2020-12-04 23:30:30 +01:00
spaceface777
76ed8e3750
checker: don't disallow method call chains ( #7128 )
2020-12-04 21:27:38 +01:00
Alexander Medvednikov
f14bd10c00
autofree: more `return` fixes
2020-12-04 20:44:33 +01:00
spaceface777
6a47deb3f8
checker: ensure array init matches the array's type ( #7118 )
2020-12-04 20:39:32 +02:00
yuyi
215a76a715
string: make `tos_lit` deprecated ( #7129 )
2020-12-04 20:34:58 +02:00
Daniel Däschle
47d0ed308d
parser: prepare for better VLS integration, more accurate parser errors ( #7119 )
2020-12-04 20:34:05 +02:00
spaceface777
52fb7033c3
gen: fix evaluating the receiver of array methods (.map(), .filter(), etc) more than once ( #7130 )
2020-12-04 20:29:34 +02:00
Nick Treleaven
f21b2b41ac
gen: make _SLIT macro determine `len` at compile-time ( #7131 )
2020-12-04 20:14:39 +02:00
Alexander Medvednikov
0ea2fa228f
autofree: fix `or {}`; ci: bring back gitly -autofree
2020-12-04 18:06:53 +01:00
Delyan Angelov
7a8d6a7c7b
scanner: treat warnings as errors on -W too, simillar to the parser
2020-12-04 15:11:35 +02:00
spaceface777
50a3009113
fmt: make single-stmt `or` blocks single-line ( #7126 )
2020-12-04 13:25:23 +02:00
spaceface777
9345d489f8
ci: fix self compilation with cached modules on macos ( #7127 )
2020-12-04 13:25:02 +02:00
Delyan Angelov
52ccdd747f
cgen: allow for `const ( x = opt() ? )`
2020-12-04 13:11:12 +02:00
Delyan Angelov
d0a2992335
regex: align query/regex err pos in optional err messages/panics
2020-12-04 12:43:25 +02:00
Lukas Neubert
02ba923ba7
fmt: do not add braces for trailing struct arg ( #7072 )
2020-12-04 11:22:26 +02:00
Alexander Medvednikov
b64945a6c0
autofree: lots of fixes in `return_statement()`
2020-12-04 10:10:40 +01:00
joe-conigliaro
b578e60dd5
tests: add test for fix #cf7b45b
2020-12-04 15:43:28 +11:00
joe-conigliaro
cf7b45b074
checker: correctly check arrays with element that is an alias. fixes #6735
2020-12-04 14:26:25 +11:00
Tomas Hellström
d12f5f7ba0
x.websocket: vdoc ( #7091 )
2020-12-04 01:52:26 +01:00
Alexander Medvednikov
cae3bd7f32
gg: vfmt gg.v
2020-12-04 01:27:40 +01:00
Alexander Medvednikov
e160f6e7d2
gg: screen_size()
2020-12-03 23:17:00 +01:00
yuyi
9b6a1552e9
checker: check match return mismatch type ( fix #6826 ) ( #7109 )
2020-12-03 21:14:23 +02:00
Nick Treleaven
d590ce7675
map: add 3 DenseArray methods for bootstrapping ( #7113 )
2020-12-03 21:12:53 +02:00
Daniel Däschle
6c100a0bc3
vls,parser: fix an eof error in parsing invalid const declarations ( #7115 )
2020-12-03 21:11:43 +02:00
penguindark
15ffce1317
regex: fix compilation issues with gcc under ubuntu ( #7112 )
2020-12-03 19:33:53 +01:00
yuyi
06eaded6ea
string: change `tos_lit` to `_SLIT` ( #7079 )
2020-12-03 16:02:48 +01:00
Delyan Angelov
eefdf4baa6
scanner: do not warn for \x07 in strings
2020-12-03 14:11:32 +02:00
Daniel Däschle
558a756431
parser: fix position offset by 1 ( #7099 )
2020-12-03 11:25:06 +02:00
Swastik Baranwal
c5a7c51dfd
parser: add a check for known vars in or block ( #7094 )
2020-12-03 04:46:04 +01:00
yuyi
30da85a4d5
checker: fix optional or_block {none} ( #7095 )
2020-12-03 01:03:17 +01:00
Uwe Krüger
c1b25dd61d
cgen: fix map value op-assign modification ( #7101 )
2020-12-03 00:40:11 +01:00
Alexander Medvednikov
1037d3a383
checker: make missing `mut` before an argument a warning
2020-12-02 23:58:06 +01:00
joe-conigliaro
ce1fa1194d
parser: fix not used parent warning for selective imports. closes #6916
2020-12-03 01:14:49 +11:00
Lukas Neubert
2691163a7e
scope: remove redundant name arg from register() ( #7077 )
2020-12-02 14:40:25 +01:00
heronwr
f8af866f76
builtin: make v_realloc use int parameter instead of u32 ( #7080 )
2020-12-02 15:35:11 +02:00
joe-conigliaro
cd46eb42d7
checker: fix generic os.fn call (script) without mod prefix. fixes #7073
2020-12-02 21:40:44 +11:00
joe-conigliaro
ca7692c839
error on unknown generic struct init. closes #7085
2020-12-02 20:53:40 +11:00
Enzo
d8b8aca51e
gen: fix `arr.last().field` ( #7076 )
2020-12-02 04:35:00 +01:00
Lukas Neubert
dedb8f7e41
fmt: smarter wrap of orm lines ( #7070 )
2020-12-02 04:06:20 +01:00
Tomas Hellström
7c394b9d58
x.websocket: docs and cleanup ( #7078 )
2020-12-02 04:02:53 +01:00
Alexander Medvednikov
953a51bec8
autofree: fix an off by 1 error
2020-12-02 03:45:08 +01:00
Lukas Neubert
8adc8ed103
parser: do not fail on comment direct after import ( #7071 )
2020-12-01 22:32:34 +02:00
Delyan Angelov
394e9c4c56
builder: replace single `goto start` usage, with `for { ... continue ... break}`
2020-12-01 22:11:44 +02:00
Alexander Medvednikov
c5cd53ca79
parser: bring back old $if position calculation
2020-12-01 18:59:33 +01:00
Alexander Medvednikov
0ff541375d
autofree: fix a bug with $if and add a test
2020-12-01 18:58:16 +01:00
Alexander Medvednikov
3612bd58ef
fmt: revert the fn \n change
2020-12-01 17:00:06 +01:00
Alexander Medvednikov
0ddf0a4b92
gg: custom bold font path
2020-12-01 16:30:25 +01:00
yuyi
d3deaa1f59
cgen: fix typeof variadic type ( #7063 )
2020-12-01 16:11:37 +01:00
Daniel Däschle
5b6eb7b2c9
cgen: simplify .str() generation ( #7038 )
2020-12-01 16:09:03 +01:00
Ned Palacios
54e03f60b9
x.json2: remove builder methods ( #7008 )
2020-12-01 16:23:59 +02:00
yuyi
6a1e0322bd
gen: fix interpolation variadic ( #7059 )
2020-12-01 12:40:38 +02:00
joe-conigliaro
f1965c0510
ast: fmt ast.v
2020-12-01 21:20:27 +11:00
joe-conigliaro
88835a0456
cgen: remove some nasty replacements
2020-12-01 21:17:19 +11:00
joe-conigliaro
9b583f51f1
ast: remove field which should have been removed in #34e124d
2020-12-01 20:15:35 +11:00
joe-conigliaro
34e124d5f7
cgen: auto cast sum type in array init. fixes #6907
2020-12-01 20:03:45 +11:00
Delyan Angelov
fe0ded9a91
tests: add a regression test for the inter module generics inference
2020-12-01 08:07:07 +02:00
joe-conigliaro
a7d917474d
checker: simplify generic fn post processing
2020-12-01 16:43:10 +11:00
joe-conigliaro
0e54b9acb5
checker: remove debug println introduced in 4f658ec
2020-12-01 15:14:30 +11:00
joe-conigliaro
4f658ec292
fix auto inferred generic call of mod.func(). closes #6263
2020-12-01 15:10:06 +11:00
Alexander Medvednikov
f4bd953771
pref: vfmt
2020-12-01 04:16:36 +01:00
Alexander Medvednikov
f26f7ebc9d
pref: nocache option
2020-12-01 04:05:44 +01:00
Leah Lundqvist
ab225ff154
jsgen: fix JS.@typeof ( #7055 )
2020-12-01 04:02:10 +01:00
Lukas Neubert
552de94da6
sqlite: add Windows instructions to readme ( #7041 )
2020-12-01 04:00:41 +01:00
Daniel Däschle
879d238887
cgen: initial option auto str support ( #7004 )
2020-12-01 04:00:23 +01:00
Daniel Däschle
6af082e70e
doc: detailed documentation of the compiler pipeline ( #7043 )
2020-12-01 03:58:39 +01:00
spaceface777
83137cbe84
pref: don't use tcc by default in -prod mode ( #7053 )
2020-12-01 03:58:02 +01:00
spaceface777
0248e4955d
gen: fix `undef`ing __has_include on macos tcc ( #7057 )
2020-11-30 21:56:17 +02:00
Delyan Angelov
7511d6e4e8
builder: fix building thirdparty C files with tcc, when run outside vroot
2020-11-30 21:48:21 +02:00
Delyan Angelov
5bca6a4bfe
cgen: undef *earlier* __has_include for tcc
2020-11-30 21:29:48 +02:00
Delyan Angelov
ff42572e93
builder: show the C compiler output on -show-c-output, NOT on -showcc
2020-11-30 20:30:47 +02:00
Larpon
ed08d96932
builtin: remove old type prefixes, add a few missing documentations, add missing punctuation ( #7037 )
2020-11-30 18:51:00 +01:00
Delyan Angelov
b11d285680
v: support multiple paths in VMODULES env variable ( #7048 )
2020-11-30 18:31:37 +01:00
Alexander Medvednikov
376833aea7
builder: show tcc compiler error with -v and -showcc
2020-11-30 17:47:38 +01:00
Lukas Neubert
a98162118b
fmt: orm delete ( #7035 )
2020-11-30 14:02:36 +01:00
Uwe Krüger
a128ab4313
cgen: add support for shared maps ( #7042 )
2020-11-30 13:25:14 +01:00
Swastik Baranwal
e3fab7e076
parser: add an error for an invalid string prefix ( #7019 )
2020-11-30 10:58:00 +02:00
yuyi
39b46e95a0
gen: minor optimization in `type_to_fmt()` ( #7028 )
2020-11-30 09:35:55 +02:00
yuyi
f7cc3d3718
gen: minor cleanup in gen_expr_to_string() ( #7026 )
2020-11-30 09:16:50 +02:00
Delyan Angelov
aae5812337
os: cleanup os.find_abs_path_of_executable/1
2020-11-30 08:40:39 +02:00
Alexander Medvednikov
05eeb8aa53
token: remove old keyword "embed"
2020-11-30 03:11:40 +01:00
joe-conigliaro
ff63fb74d9
dont allow method on non-local types & no mod for arrays. closes #6971
2020-11-30 11:43:22 +11:00
ka-weihe
9367dcda10
all: fix remaining c warnings and add -Werror to CI ( #7021 )
2020-11-29 21:23:37 +02:00
spaceface777
4e6bc27b30
compiler: fix self compilation with cached modules on macOS ( #7023 )
2020-11-29 19:30:35 +01:00
Alexander Medvednikov
c7cefa9ce6
json: fix encoding pointers
2020-11-29 17:45:22 +01:00
Delyan Angelov
adeebad2a6
compiler: use thirdparty/tcc/tcc.exe by default, when no explicit -cc is given ( #6598 )
2020-11-29 16:18:49 +01:00
yuyi
0b96cd50e1
scanner: fix escape `\u` ( fix #6849 ) ( #7012 )
2020-11-29 17:01:40 +02:00
Ned Palacios
6c634086b0
json2: decode fn returns `?T`; add new tests ( #6933 )
2020-11-29 14:54:45 +01:00
Nick Treleaven
8f15af6adc
pref: add -m32, -m64 command-line options ( #7011 )
2020-11-29 14:53:49 +01:00
joe-conigliaro
91eca539d0
all: -usecache fixes and self compilation & some type cname optimisation ( #7015 )
2020-11-29 14:10:45 +01:00
Swastik Baranwal
3afa606154
vfmt: fix eating `c` in `c'foo'` ( #7009 )
...
* fmt: add formatting for cstrs
* fmt
2020-11-29 10:39:50 +02:00
Takahiro Yaota
49a083fe79
time: improve parse_iso8601 ( #7006 )
2020-11-29 10:38:14 +02:00
Larpon
1192dfdc8a
term.ui: document functions ( #6979 )
2020-11-29 08:32:04 +02:00
Delyan Angelov
a6f1667bce
checker: make `sym == typ` an error
2020-11-29 00:43:06 +02:00
yuyi
f336c2c5cc
scanner: fix error of backslash escaping x in ident_string( fix #6850 ) ( #6994 )
2020-11-29 00:39:45 +02:00
Daniel Däschle
32c027a0bf
parser: disallow ptr type as sum type variant ( #6996 )
2020-11-28 23:40:40 +02:00
Nick Treleaven
6da6a082c7
parser: fix showing error position for pratt.v ( #6997 )
2020-11-28 23:39:45 +02:00
Alexander Medvednikov
159abd4727
autofree: fix unused var error
2020-11-28 20:33:32 +01:00
Alexander Medvednikov
91007e87d2
autofree: remove old code
2020-11-28 20:26:32 +01:00
Alexander Medvednikov
cb3367d734
autofree: free_before_break() test
2020-11-28 20:23:54 +01:00
Delyan Angelov
321daede1d
cgen: fix a buggy comparison, add ability to do println(sym.debug())
2020-11-28 19:48:53 +02:00
Alexander Medvednikov
0114333d34
autofree: fix _
2020-11-28 16:45:08 +01:00
Swastik Baranwal
aadeb62bbf
cgen: add a _T_ prefix in the C names for generic fn instances; fixes #6927 ( #6999 )
2020-11-28 17:07:07 +02:00
Daniel Däschle
6e4dad9acf
parser: fix position of array init ( #6998 )
2020-11-28 17:05:14 +02:00
Alexander Medvednikov
ea04d23e1d
tests: valgrind: use -autofree without -experimental
2020-11-28 15:53:08 +01:00
Alexander Medvednikov
57ad943b92
autofree: free arrays on re-assignment
2020-11-28 15:21:53 +01:00
Alexander Medvednikov
ed39d151b7
V 0.1.30
2020-11-28 04:43:11 +01:00
Alexander Medvednikov
86b5f7ef5d
string: fix ustring.free()
2020-11-28 03:41:43 +01:00
Alexander Medvednikov
c3ed8bb5da
autofree: remove old code
2020-11-28 02:28:43 +01:00
Delyan Angelov
ac27a3ccee
parser,cgen: improve `[flag]enum Abc{ a b }`, allow `x := Abc.a | Abc.b`
2020-11-27 23:09:14 +02:00
Daniel Däschle
18cf36a22c
parser: remove unnecessary match as code ( #6972 )
2020-11-27 22:25:08 +02:00
yuyi
64fa5e6383
szip: fix szip_test ( #6980 )
2020-11-27 21:20:43 +01:00
Alexander Medvednikov
fcd127ed87
autofree: make -experimental the default
2020-11-27 20:49:48 +01:00
Alexander Medvednikov
13948152b6
cmd/v: rename reuse-tmpc to keepc
2020-11-27 20:16:24 +01:00
Delyan Angelov
1891f55c72
builtin: add voidptr.vbytes(len) and byteptr.vbytes(len)
2020-11-27 18:18:46 +02:00
Swastik Baranwal
2473f65278
cgen: minor cleanup (use replace_each) ( #6978 )
2020-11-27 16:13:30 +01:00
spaceface777
bbea7fb91f
docs: document the `[required]` struct attribute ( #6956 )
2020-11-27 15:37:12 +02:00
Delyan Angelov
7cd9530006
docs: fix most of the examples (ensure they at least have a valid syntax)
2020-11-27 13:03:32 +02:00
Delyan Angelov
e6116c47be
scanner: guarantee an early exit when the parser/scanner is stuck
2020-11-27 12:44:39 +02:00
yuyi
636efb3c20
cgen: fix windows escape errors for comptime @ pseudo vars ( #6977 )
2020-11-27 11:16:57 +02:00
Daniel Däschle
ee2a5727fb
gen: fix assigning an anon fn to a struct field ( #6965 )
2020-11-27 11:15:48 +02:00
Delyan Angelov
cbe607baf2
vfmt: fix compilation warning
2020-11-27 10:40:56 +02:00
Alexander Medvednikov
9b0c96d792
scanner: allow \r after $
2020-11-27 03:27:34 +01:00
Alexander Medvednikov
c27818e247
all: remove remaining broken escape sequences
2020-11-27 03:17:19 +01:00
Daniel Däschle
966b95ca4e
parser: move mut in if/match to expr ( #6973 )
2020-11-27 03:08:42 +01:00
Alexander Medvednikov
62ee436944
all: remove broken escape sequences after $ in strings
2020-11-27 03:07:37 +01:00
Daniel Däschle
d71d9ad7c0
сgen: print generic structs ( #6967 )
2020-11-26 23:57:03 +01:00
spaceface777
6563535a3d
term.ui: simplify/fix the truecolor feature test ( #6963 )
2020-11-26 23:52:20 +01:00
Nick Treleaven
ea8adfdbf9
gen: more efficient `for in` with a map ( #6961 )
2020-11-26 23:22:14 +01:00
Alexander Medvednikov
5e59718970
fmt: handle $tmpl
2020-11-26 18:53:38 +01:00
Alexander Medvednikov
5efd393af2
all: make comptime templates usable outside of vweb via $tmpl
2020-11-26 18:40:35 +01:00
Ruofan XU
c6a8c3cad5
cgen: remove unneeded sumtype logic and add more tests ( #6959 )
2020-11-26 15:29:23 +01:00
Daniel Däschle
52b627feb3
checker: check filter, map and sort left type ( #6952 )
2020-11-26 11:28:54 +01:00
spaceface777
e03ae19372
term.ui: approximate colors into ansi if rgb isn't supported ( #6951 )
2020-11-26 00:28:57 +01:00
Takahiro Yaota
258f8f6af9
parser: report unused expression error in if and or blocks ( #6953 )
2020-11-26 00:28:41 +01:00
Larpon
2957541e48
pref: fix message on inferred run ( #6947 )
2020-11-25 21:44:26 +02:00
Daniel Däschle
8e2b7fe3d6
tests: cleanup sum type tests ( #6950 )
2020-11-25 20:40:29 +01:00
Delyan Angelov
fa126b950a
cgen: prevent `undefined symbol: tcc_backtrace` errors with tcc and `-shared -d no_backtrace`
2020-11-25 15:47:55 +02:00
Daniel Däschle
8446433bcf
parser: remove __type ( #6946 )
2020-11-25 14:27:15 +01:00
Delyan Angelov
35a0fe79f9
cgen: generate an unique sort comparator function for each .sort() call
2020-11-25 13:48:42 +02:00
Ekopalypse
a46eda7c44
builder: fix dll generation on Windows ( #6939 )
2020-11-25 12:18:58 +01:00
Daniel Däschle
7d6f97259f
all: refactor UnionSumType to SumType ( #6944 )
2020-11-25 13:09:40 +02:00
Leah Lundqvist
96b73acad7
jsgen: optional "or blocks" ( #6938 )
2020-11-24 22:52:23 +01:00
Alexander Medvednikov
98034e5504
http: make download_file() return an optional
2020-11-24 18:07:08 +01:00
Daniel Däschle
a042966082
all: remove old sumtype code ( #6937 )
2020-11-24 17:55:24 +01:00
Daniel Däschle
aa6303f0b2
all: use the new types with old syntax ( #6922 )
2020-11-24 13:58:29 +01:00
Lukas Neubert
8be9bdacd1
fmt: do not wrap real multiline comments into single line in arrays ( #6923 )
2020-11-24 12:55:39 +01:00
pancake
aa90625819
js: initial support for optional return unwrapping ( #6926 )
2020-11-24 12:54:26 +01:00
Daniel Däschle
789912238f
gen: generate typedef first on sum types ( #6930 )
2020-11-24 12:53:39 +01:00
Daniel Däschle
9fbf38c798
parser: fix generic structs from other modules ( #6921 )
2020-11-23 23:21:11 +01:00
Alexander Medvednikov
e0d64903f8
table: rename atypes.v to types.v now that the order of the files is irrelevant
2020-11-23 18:19:51 +01:00
Takahiro Yaota
07fae5adf6
io: add a test for read_all ( #6898 )
2020-11-23 16:17:39 +01:00
Nick Treleaven
380e3640e3
gen: add panic message when using '?' with `none` ( #6919 )
2020-11-23 16:16:38 +01:00
Daniel Däschle
96539e43b5
all: nested sum types ( #6913 )
2020-11-23 16:16:13 +01:00
Takahiro Yaota
2f9b7fe0f7
vfmt: fix error with `return // comment` ( #6914 )
2020-11-23 11:36:20 +02:00
Nick Treleaven
51c737669d
checker: check labelled break/continue is inside a matching `for` loop ( #6910 )
2020-11-22 20:51:07 +01:00
Alexander Medvednikov
a1827d7f98
autofree: handle array set/get
2020-11-22 20:48:23 +01:00
hirossan4049
67d5dfb315
gg: draw_rounded_rect() ( #6909 )
2020-11-22 20:13:40 +01:00
Alexander Medvednikov
311b5e8188
autofree: string.clone() fix
2020-11-22 13:45:12 +01:00
Alexander Medvednikov
65005fdae8
builtin: same fix for array.insert
2020-11-22 13:30:48 +01:00
Alexander Medvednikov
f8827c3fe5
builtin: clone the strings correctly in array.push
2020-11-22 13:22:42 +01:00
Alexander Medvednikov
ed7413ee51
autofree: handle SelectorExpr receivers
2020-11-21 23:19:04 +01:00
Daniel Däschle
22fdf76db5
gen: unwrap optional on if guard expr ( #6903 )
2020-11-21 22:40:05 +01:00
Alexander Medvednikov
2f50a9ea1f
utf: fix utf32_to_str
2020-11-21 22:37:16 +01:00
Alexander Medvednikov
9a51f4e3c2
autofree: builtin fixes
2020-11-21 22:33:31 +01:00
Alexander Medvednikov
2afb9b30e9
autofree: minor fixes; skip in consts
2020-11-21 19:07:47 +01:00
Alexander Medvednikov
ad940ff40e
autofree: free parent scope vars only before fn returns
2020-11-21 18:23:50 +01:00
Delyan Angelov
2228d75657
ci: fix formatting of comptime.v
2020-11-21 19:04:31 +02:00
Delyan Angelov
018bd6aac3
os: fix flaky test in process_test.v
2020-11-21 18:01:21 +02:00
Delyan Angelov
fa55c247a2
parser: add `-d print_vweb_template_expansions` to ease vweb template debugging
2020-11-21 17:59:02 +02:00
pancake
4b19a6e00d
js: fix code generation for `$if js` statements ( #6896 )
2020-11-21 15:40:37 +01:00
hirossan4049
54df7d1daf
gg: new draw_empty_rounded_rect() ( #6891 )
2020-11-21 15:40:02 +01:00
Tomas Hellström
155aa6dac5
x.websocket: fix autobahn tests for wss and wss close behavor ( #6901 )
2020-11-21 15:45:45 +02:00
Swastik Baranwal
650cdef8b4
checker: disallow array sum types without default field ( #6892 )
2020-11-21 00:07:25 +01:00
Daniel Däschle
838ad16296
all: refactor ast.Expr to use the new sum type implementation ( #6792 )
2020-11-21 00:05:57 +01:00
Alexander Medvednikov
ff1752dfff
gg: vfmt gg.v
2020-11-21 00:04:29 +01:00
Alexander Medvednikov
c1486925d5
autofree: enable free_before_return test
2020-11-21 00:00:27 +01:00
Alexander Medvednikov
99bdb87a01
all: remove #objc for good
2020-11-20 23:49:52 +01:00
Delyan Angelov
9673d40bb9
ci: fix failing windows test run_v_code_from_stdin_test.v (2)
2020-11-20 16:57:44 +02:00
Takahiro Yaota
f47c2468bb
net: fix socket.read_line with long lines #6842
2020-11-20 15:24:41 +01:00
Delyan Angelov
93d460f8fc
ci: fix failing windows tests for `v run -`
2020-11-20 16:14:04 +02:00
Lukas Neubert
5d76e85a23
vfmt: fix extra whitspace in fn type decl with type-only args ( #6888 )
2020-11-20 15:00:40 +01:00
Alexander Medvednikov
30ddb89e3c
gg: UI mode for much lower CPU usage in UI apps
2020-11-20 14:50:26 +01:00
Delyan Angelov
3c4b87bfec
checker: add check against `fn test_opt() ?{}`
2020-11-20 15:12:53 +02:00
Nick Treleaven
9871d24929
fmt: fix labelled break & continue ( #6889 )
2020-11-20 14:12:40 +01:00
Nick Treleaven
d5242e0bf5
gen: implement labelled break and continue (retry) ( #6887 )
2020-11-20 12:23:48 +01:00
Alexander Medvednikov
412e2a43e9
clipboard: fix clear() on macos
2020-11-20 12:00:16 +01:00
Ned Palacios
7c2c187743
vdoc: fix markdown and plaintext rendering ( #6882 )
2020-11-20 12:02:52 +02:00
Lukas Neubert
ef3e8d2c84
vfmt: handle comments after type declarations ( #6874 )
2020-11-20 11:51:50 +02:00
Delyan Angelov
d382db77ee
ci: fix failing clipboard_test.v on MacOS
2020-11-20 11:44:26 +02:00
Ned Palacios
b957c64905
scanner: store errors and warnings on silent mode ( #6883 )
2020-11-20 11:44:19 +02:00
Nicolas Sauzede
159932d59b
v: run code from stdin `echo println(2+2) | v run -`, with no repl limits ( #6884 )
2020-11-20 10:25:59 +02:00
Alexander Medvednikov
55a7c907ad
clipboard: fix set_text()
2020-11-20 03:28:28 +01:00
Alexander Medvednikov
4328233504
Revert "gen: implement labelled break and continue ( #6880 )"
...
This reverts commit e798326a1a
.
2020-11-20 02:51:35 +01:00
Delyan Angelov
1b8609c318
builder: fix for `v -o x.exe run examples/hello_world.v`
2020-11-20 02:38:24 +02:00
Lukas Neubert
a67873f6cf
jsgen: tests: ensure output deletion on fail ( #6875 )
2020-11-20 01:15:32 +01:00
Alexander Medvednikov
d50c919879
clipboard: fix get_text() on macos
2020-11-20 01:08:55 +01:00
Nick Treleaven
e798326a1a
gen: implement labelled break and continue ( #6880 )
2020-11-19 21:13:15 +01:00
Daniel Däschle
41ba942369
parser: smartcast mutable selector ( #6881 )
2020-11-19 21:05:10 +01:00
Delyan Angelov
2e57a1e1a6
sync: add vlib/sync/bench/many_writers_and_receivers_on_1_channel.v (run with --help)
2020-11-19 21:30:38 +02:00
Daniel Däschle
9feb010355
all: mutable smartcasts ( #6878 )
2020-11-19 17:28:46 +01:00
Delyan Angelov
48b117618d
builtin: support -d no_backtrace, to ease compiling V code on older distros easier
2020-11-19 17:58:33 +02:00
Larpon
f807fd973e
compile: infer source file if a binary by the same name exists in same dir #6877
2020-11-19 16:23:55 +01:00
Delyan Angelov
69bb0891c7
vfmt: fix ^A keep.vv test too
2020-11-19 16:25:52 +02:00
Delyan Angelov
92a75c80db
vfmt: trim ^A from embedded inline comments too
2020-11-19 15:32:51 +02:00
Daniel Däschle
e06756ef58
all: match multi aggregate for union sum types ( #6868 )
2020-11-18 20:52:00 +01:00
Lukas Neubert
df4165c7ee
docs_ci: check all md files except thirdparty ( #6855 )
2020-11-18 18:28:28 +01:00
pancake
d8f64f516b
js: fix codegen for multiline strings ( #6791 )
2020-11-18 18:23:44 +01:00
Anton Zavodchikov
6d99f0af50
x.websocket: expose log field ( #6866 )
2020-11-18 18:22:44 +01:00
Carlos Esquerdo Bernat
b4ae332e0c
web socket: fix wss
2020-11-18 18:21:49 +01:00
Daniel Däschle
ed874ffc5b
checker: fix sum type operator check ( #6815 )
2020-11-17 21:26:40 +01:00
Lukas Neubert
ee5ad2a653
parser: fix duplicated struct attrs on first field ( #6859 )
2020-11-17 21:25:54 +01:00
Swastik Baranwal
4415feb2df
checker: disallow string(bool) ( #6863 )
2020-11-17 21:23:17 +01:00
Larpon
fdc0cd4c03
term.ui: add dashed lines and rectangles ( #6848 )
2020-11-17 15:08:35 +01:00
Lukas Neubert
dbdcef5166
quote_path: also quote ampersands ( #6846 )
2020-11-16 19:26:44 +02:00
Delyan Angelov
d633261a99
os: add Process ( #6786 )
2020-11-16 17:32:50 +01:00
Alexander Medvednikov
8e473181ed
autofree: remove old logic
2020-11-16 17:31:34 +01:00
Alexander Medvednikov
68077b7dbf
autofree: handle early returns (part 1)
2020-11-16 17:26:54 +01:00
spaceface777
ac8a2ff12d
term.ui: feature-detect the SU spec ( #6844 )
2020-11-16 14:48:08 +02:00
Delyan Angelov
b3e19c7247
tests: restore skipped return_missing_comp_if.vv and return_missing_comp_if_nested.vv
2020-11-16 10:07:53 +02:00
Delyan Angelov
05933e783d
net: add back some lower level client/server tcp tests
2020-11-16 09:59:37 +02:00
Nick Treleaven
4882d338f0
checker: improve array literal element type mismatch error ( #6825 )
2020-11-16 00:41:24 +02:00
Emily Hudson
cd2a2cef25
vlib/net: add buffered IO, x.net -> net ( #6754 )
2020-11-15 22:54:47 +02:00
Daniel Däschle
20bec81678
checker: smartcast only if type is not mut ( #6841 )
2020-11-15 16:53:51 +02:00
Alexander Medvednikov
5fb4d77764
doc: use fixed-width symbol name at start of comment ( #6840 )
2020-11-15 15:16:41 +01:00
Alexander Medvednikov
ad1510afa0
gg: vfmt gg.v
2020-11-15 15:11:43 +01:00
Alexander Medvednikov
26785668c0
autofree: more tests; gg: fix draw_circle with hidpi
2020-11-15 15:09:44 +01:00
Nick Treleaven
40e7b0eeb3
doc: use fixed-width symbol name at start of comment
2020-11-15 12:58:58 +00:00
Anton Zavodchikov
fe3d2a9aba
json2: unescape characters ( #6836 )
2020-11-15 14:58:17 +02:00
Delyan Angelov
f995aa35ea
checker: add a check for `x := math.sin<f64>(0)`
2020-11-15 11:51:12 +02:00
spaceface777
1ead130eed
term.ui: render to the alternate buffer ( #6832 )
2020-11-14 21:05:22 +02:00
Nick Treleaven
01a5b263e5
encoding/csv: improve Reader docs ( #6828 )
2020-11-14 19:49:36 +02:00
Swastik Baranwal
00464ad988
builtin: add charptr.vstring() and charptr.vstring_with_len() ( #6830 )
2020-11-14 19:43:42 +02:00
Carlos Esquerdo Bernat
827fb62c29
examples/text_editor: edit multiple files ( #6827 )
2020-11-14 19:39:59 +02:00
Nick Treleaven
50163508f8
gen: implement type_name method for sum type instances ( #6802 )
2020-11-14 13:59:03 +02:00
Delyan Angelov
2dc9a45e06
vfmt: fix eating of `app.$method(vars)`; format vlib/vweb/vweb.v
2020-11-14 13:55:10 +02:00
Delyan Angelov
ba8cdb2977
vfmt: fix `$for method in App.methods {}` turning to App(methods)
2020-11-14 12:24:46 +02:00
Delyan Angelov
d6d202341a
table: add a helper `pub fn (t Type) debug() []string {}`
2020-11-14 11:39:58 +02:00
Delyan Angelov
df385799a2
checker: fix `invalid type (typ=0 idx=0)` when x,y := gfn(), and gfn returns (Abc,T)
2020-11-14 10:42:56 +02:00
Delyan Angelov
023cddb160
cgen: remove .replace('T', ...)
2020-11-14 10:36:59 +02:00
spaceface777
6b47c61fe4
term.ui: handle middle mouse button events and modifier keys ( #6821 )
2020-11-14 09:14:54 +02:00
Takahiro Yaota
5069be04a2
net: improve socket_test ( #6822 )
2020-11-14 08:23:22 +02:00
Delyan Angelov
01579957b8
builder: move -c right before the .c thirdparty file
2020-11-13 20:42:26 +02:00
Delyan Angelov
8cb1714255
builder: fix building sqlite3 on windows
2020-11-13 20:35:21 +02:00
spaceface777
c315218ed1
term.ui: allow setting the terminal title ( #6809 )
2020-11-13 15:30:47 +02:00
Delyan Angelov
7feb1742d3
cgen: skip deleted map entries in the auto generated .str() method
2020-11-13 13:37:11 +02:00
Delyan Angelov
a3404a38c6
term_drawing.v: support arrows, 1, 2 and space
2020-11-13 13:08:28 +02:00
Delyan Angelov
f6e54dc027
term.ui: improve Ctrl-Z + fg handling
2020-11-13 10:27:53 +02:00
Daniel Däschle
9c569246ef
cgen: fix typeof union sum type ( #6794 )
2020-11-12 12:27:54 +01:00
spaceface777
24f743ee12
term: add `term.ui` module (part 2) ( #6798 )
2020-11-12 12:12:51 +01:00
Luke Edwards
a525397022
checker: improve wording on error messages ( #6799 )
2020-11-11 23:11:27 +02:00
Delyan Angelov
f42a44abec
vfmt: fix `match x { 10 /* ... */ {} }` and `a := [1/* x */, /* y */2, 3]`
2020-11-11 22:59:43 +02:00
Delyan Angelov
e6cc967ac8
vfmt: small cleanup
2020-11-11 21:43:47 +02:00
Delyan Angelov
8197463b08
vfmt: fix `x := Repo<User,Permission>{}`
2020-11-11 21:41:04 +02:00
Daniel Däschle
43ce098043
cgen: fix default value init for union sum types ( #6795 )
2020-11-11 19:56:13 +02:00
Delyan Angelov
a4acb70c64
vfmt: remove rc4.v from known_failing_exceptions
2020-11-11 18:19:03 +02:00
Delyan Angelov
2759b80514
vfmt: remove aes.v and block_generic.v from known_failing_exceptions in `v test-fmt`
2020-11-11 18:16:45 +02:00
Delyan Angelov
dd1717af34
checker: add a missing return regression test for if branches too
2020-11-11 18:06:13 +02:00
Delyan Angelov
ebfd259333
vfmt: support `struct Repo <T, U> { }`
2020-11-11 17:50:03 +02:00
Delyan Angelov
7d472d887e
scanner: vfmt scanner.v
2020-11-11 17:25:58 +02:00
Delyan Angelov
8c241cb745
checker: check that fns with return values, and matches, do return
2020-11-11 17:23:57 +02:00
Daniel Däschle
6271798ce3
cgen: union sum types implementation ( #6745 )
2020-11-11 09:18:15 +01:00
spaceface777
bb91dc90a5
checker: fix `&` on pointers ( #6787 )
2020-11-10 13:12:21 +02:00
Nick Treleaven
baf2ff1a91
checker: unify invalid argument errors, use argument position ( #6785 )
2020-11-10 10:40:50 +01:00
Alexander Medvednikov
2254f41722
autofree: free all vars in parent scopes recursively
2020-11-09 15:56:28 +01:00
Nick Treleaven
c76e486765
parser: implement `T.name` for generic types ( #6783 )
2020-11-09 14:35:26 +01:00
Alexander Medvednikov
1c257abc23
autofree: simplify: merge tmp arg logic with scope vars
2020-11-09 14:24:46 +01:00
Alexander Medvednikov
507d724ee6
autofree: free before return tests
2020-11-09 11:54:45 +01:00
KJ Lawrence
7108f89b69
pg: fix exec & exec_param_many ( #6782 )
2020-11-09 08:22:16 +01:00
div72
b0053d8910
x.json2: change default number type to i64 ( #6773 )
2020-11-09 07:37:53 +01:00
Carlos Esquerdo Bernat
ba366b126f
ws: handle close on client quit ( #6776 )
2020-11-08 20:36:42 +02:00
spaceface777
3c83551dfe
parser: fix treating JS fn calls as type casts ( #6779 )
2020-11-08 20:33:55 +02:00
Tomas Hellström
68cfbd6d66
websocket: fix autobahn test to always use latest v( #6780 )
2020-11-08 17:46:06 +01:00
pancake
af5836202c
js: fix wrong filename and invalid backend selected when using -o .js ( #6777 )
2020-11-08 17:45:32 +01:00
pancake
2994e7150f
vweb: check function and route parameter count ( #6761 )
2020-11-08 09:14:24 +01:00
Delyan Angelov
6da8454b3b
builder: a small -usecache fix, when v is run in subfolders
2020-11-08 09:18:05 +02:00
Delyan Angelov
4b35495fbe
all: support VMODULES environment variable (defaulting to ~/.vmodules)
2020-11-08 08:07:17 +02:00
Delyan Angelov
0ba5544446
checker: add a check for `ptr = Abc{}`
2020-11-07 21:19:46 +02:00
Nick Treleaven
931882d720
checker: support ?T, &T generic return types ( #6772 )
2020-11-07 18:27:10 +02:00
Tomas Hellström
b47c23b73e
x.websocket: fix the uri port parsing problem. Make failures more informative ( #6775 )
2020-11-07 18:14:33 +02:00
Swastik Baranwal
6354fa031c
checker: add more checks for index_expr ( #6737 )
2020-11-07 14:55:05 +01:00
Nick Treleaven
125650c986
cgen: fix using brackets for match expression ( #6768 )
2020-11-07 14:47:27 +01:00
Alexander Medvednikov
0e8c7ca2e3
autofree: fix string reassignment
2020-11-07 04:00:45 +01:00
Nick Treleaven
62cae1ba00
parser: parse func<T>() when T is a map or array type ( #6765 )
2020-11-07 02:55:28 +01:00
spaceface777
1d706674f2
cgen: don't generate a default expr if a function ends with `return` ( #6766 )
2020-11-06 18:46:41 +02:00
Ned Palacios
6d8a7ced24
cgen: fix setting nested map elements fields ( #6744 )
2020-11-06 16:32:44 +02:00
spaceface777
a9e9554b11
all: fix most C warnings ( #6758 )
2020-11-06 16:26:59 +02:00
Delyan Angelov
98e8894d90
x.websocket: more informative errors
2020-11-06 16:10:22 +02:00
Alexander Medvednikov
3e5871ffb3
autofree: disable optional_return test for now
2020-11-06 10:30:27 +01:00
Alexander Medvednikov
212e6fe52c
autofree: do not run in `builtin`
2020-11-06 10:13:05 +01:00
Delyan Angelov
b14f779853
vweb: add a placeholder for checking route validity at startup
2020-11-05 22:59:11 +02:00
Delyan Angelov
d34c5b767b
vfmt: keep the source fn type alias names, instead of the expanded fn declarations
2020-11-05 20:21:37 +02:00
Delyan Angelov
26c2654632
parser: vfmt vlib/v/parser/struct.v
2020-11-05 19:55:20 +02:00
Delyan Angelov
953d102996
parser: prevent a segfault, when compiling cmd/tools/vtest-vet.v in PR 6754
2020-11-05 19:40:15 +02:00
Delyan Angelov
3f9b05a876
vfmt: skip {} for pure fn declarations (let the bodies hit the floor)
2020-11-05 18:59:36 +02:00
Delyan Angelov
e80487b35c
vfmt: support inline comments before fields in struct initializations
2020-11-05 18:49:52 +02:00
Delyan Angelov
4bf1c2fdcc
vfmt: support `match a { x...y {} }`
2020-11-05 18:35:14 +02:00
Delyan Angelov
35096cda3f
vfmt: support comments after interface methods
2020-11-05 18:23:45 +02:00
Larpon
4051ce869c
all: remove unused enum value and improve error message for `@` tokens in scanner ( #6751 )
2020-11-05 12:59:49 +02:00
Larpon
785bf40f67
all: remove comp time '@' expansion from scanner ( #6746 )
2020-11-05 10:12:32 +02:00
Alexander Medvednikov
1b1d17cfb5
os: basic proof of concept stdout capture; autofree: small fixes
2020-11-05 08:44:37 +01:00
Carlos Esquerdo Bernat
8157f3c6ab
websocket: get port of the uri ( #6750 )
2020-11-05 06:36:50 +01:00
Nick Treleaven
ca8d23acab
table: make Table.type_to_str generate proper function type, not fn name ( #6716 )
2020-11-05 06:34:56 +01:00
Daniel Däschle
a2fc19880a
parser: fixes or block position ( #6736 )
2020-11-04 16:02:01 +02:00
Delyan Angelov
9eb655e65c
all: add .pos fields to all AST nodes, to avoid wrong positions in error messages
2020-11-04 13:34:12 +02:00
Daniel Däschle
25912673a9
cgen: fix generic json bug ( #6731 )
2020-11-04 10:21:30 +02:00
Ekopalypse
cc4bb71f29
os: prevent unnecessary dependencies when importing `os` on windows ( #6741 )
2020-11-04 10:19:46 +02:00
Daniel Däschle
9d5be12517
gen: add prefix when printing type aliases ( #6701 )
2020-11-03 14:13:35 +01:00
Delyan Angelov
18f5ed671d
builder: fix -showcc with msvc
2020-11-03 12:37:04 +02:00
Delyan Angelov
aecdfb06e7
x.net: fix C fn redeclaration of C.inet_ntop (prevented compiling x.net and net together)
2020-11-03 10:06:47 +02:00
Delyan Angelov
204fd8be03
builder: improve the function redefinition detector
2020-11-03 10:00:06 +02:00
Delyan Angelov
2c3f695469
checker,parser: treat C.Struct fields as public by default
2020-11-03 09:35:44 +02:00
Delyan Angelov
ae241785bf
vfmt: fix `union {}` declarations
2020-11-03 00:35:12 +02:00
Lukas Neubert
4ccb219079
clipboard: fix windows warnings and run vfmt ( #6715 )
2020-11-02 23:00:29 +01:00
Nick Treleaven
788de9938a
cgen: fix typeof(expr).name for generic type, pointers, etc ( #6712 )
2020-11-02 22:59:48 +01:00
Delyan Angelov
2202ee5d66
tests: add tests for continue/break in last statement of an `or{}`
2020-11-02 12:54:45 +02:00
Delyan Angelov
4e760c703e
checker: disallow `opt_returning_string() or { ... 123 }` ( closes #6711 )
2020-11-02 05:29:37 +02:00
pancake
d040af4939
checker: improve error message for: `a := foo() or { println(err) }` ( #6710 )
2020-11-02 04:52:35 +02:00
Alexander Medvednikov
613d6c043b
autofree: fix the tests
2020-11-02 01:39:10 +01:00
Alexander Medvednikov
06e4c45350
tests: re-enable valgrind tests
2020-11-02 01:25:16 +01:00
Daniel Däschle
d5a421e3f5
checker: add alias cast type check ( closes #6705 ) ( #6709 )
2020-11-02 01:17:35 +01:00
Delyan Angelov
3c0f4c46fa
checker: add check preventing `if x:=non_optional() {}`
2020-11-02 01:58:07 +02:00
Alexander Medvednikov
a0bf796926
autofree: handle SelectorExpr and fix json
2020-11-02 00:57:45 +01:00
zacanger
f0c98fb5c2
doc: fix syntax in sqlite install instructions( #6707 )
2020-11-01 22:16:18 +01:00
sunnylcw
f934ca37c9
mysql: patch for Windows and FreeBSD ( #6703 )
2020-11-01 22:15:33 +01:00
Delyan Angelov
e2505479ee
cgen: encode newlines as \n in the assert meta information
2020-11-01 17:01:45 +02:00
Delyan Angelov
e72d9c0f88
parser: protect against infinite loops in -silent mode over invalid .v files
2020-11-01 14:02:32 +02:00
Daniel Däschle
9fdf04b7ff
cgen: make generics printable ( #6700 )
2020-10-31 19:43:06 +02:00
Delyan Angelov
db59585a51
sokol.gfx: fix C.sg_depth_stencil_state compilation with tcc
2020-10-31 14:15:05 +02:00
Ned Palacios
a2a0765eff
cgen: fix setting map elements' fields ( #6699 )
2020-10-31 13:00:04 +01:00
Alexander Medvednikov
b59c5fd82b
autofree: do not free tmp vars twice
2020-10-31 08:26:54 +01:00
Delyan Angelov
70cbf56655
cgen: show more informative errors, instead of a `invalid type (typ=0 idx=0)` verror panic
2020-10-30 20:26:08 +02:00
Delyan Angelov
ff93e8afee
builtin: eliminate the usage of _us32_eq for frequent builtin array operations
2020-10-30 14:11:07 +02:00
Alexander Medvednikov
791fda16d3
fmt: handle "it" in lambdas
2020-10-30 07:35:44 +01:00
Alexander Medvednikov
2c75b1397c
all: struct embedding
2020-10-30 07:09:26 +01:00
Alexander Medvednikov
dca3d13606
autofree: another lambda fix
2020-10-30 00:43:04 +01:00
Ned Palacios
ccc0cb23ed
doc: store source content, restructure module directory ( #6692 )
2020-10-29 17:21:37 +01:00
Ned Palacios
7b5a580c0c
util: split bom checking to a separate fn ( #6694 )
2020-10-29 17:21:08 +01:00
Delyan Angelov
be02ee97fb
sync: enable compilation with -autofree
2020-10-29 12:17:08 +02:00
pancake
367067dfff
pkgconfig: improve and fix the parser; move to v.pkgconfig ( #6695 )
2020-10-29 11:57:23 +02:00
Alexander Medvednikov
423044d4d6
autofree: skip lambda for now
2020-10-29 08:59:13 +01:00
Alexander Medvednikov
71dfec3c4d
autofree: generate unique names for each arg
2020-10-29 08:26:45 +01:00
Ned Palacios
ce7da85166
parser: make .parse() public ( #6693 )
2020-10-29 07:10:45 +01:00
Alexander Medvednikov
21002bf2de
autofree: fix re-assigning an optional
2020-10-29 07:06:58 +01:00
Alexander Medvednikov
f19ca6b411
autofree: simplify, use more scoping, fix expressions inside or blocks
2020-10-29 01:09:38 +01:00
Delyan Angelov
b7121786a5
table: run vfmt over atypes.v
2020-10-28 08:46:54 +02:00
Delyan Angelov
7fb739ebcf
table: make mut/not mut aggregate fields equal (for read only access)
2020-10-28 08:43:18 +02:00
Swastik Baranwal
0c987f433d
string: enable test for string escaping ( #6688 )
2020-10-27 15:25:44 +01:00
pancake
36c5eab799
all: add #pkgconfig directive using the new vlib modules ( #6673 )
2020-10-26 18:05:18 +01:00
Delyan Angelov
cf21c63183
v.vcache: extract v.vcache to a separate module, to test it and reuse it
2020-10-26 18:37:37 +02:00
Delyan Angelov
0c192cfd64
tests: fix warnings when doing `./v -W -progress -check-syntax test-fixed`
2020-10-26 14:41:57 +02:00
Delyan Angelov
535c4ed0d6
builder: return early in run_compiled_executable_and_exit, when -check-syntax is passed
2020-10-26 11:23:28 +02:00
Rolf Schmidt
3f5be0f4fc
mysql: fix unwrapped unsafe code of mysql lib ( #6680 ). ( #6681 )
2020-10-26 11:21:28 +02:00
Delyan Angelov
60cc8ac39c
vcache: use 2x wyhash.sum64_string(hk,x).hex_full(), instead of md5.sum(hk.bytes()).hex()
2020-10-25 09:22:31 +02:00
Delyan Angelov
5cb31c2c8f
builder: fix support for tcc on windows (openlibm.o)
2020-10-25 03:35:34 +03:00
Delyan Angelov
5f6259dde6
v: add VCACHE support for thirdparty object files and for `v build-module`
2020-10-25 03:09:07 +03:00
Delyan Angelov
89daec4e93
ci: run vfmt over compile.v and checker.v
2020-10-24 20:41:52 +03:00
Delyan Angelov
8b01146b90
compiler: implement -W and -reuse-tmpc
2020-10-24 20:34:50 +03:00
Alexander Medvednikov
42da37e900
autofree: fix if expressions
2020-10-24 19:06:31 +02:00
Delyan Angelov
23ee3018c3
tools: add `v test-vet`
2020-10-24 16:37:58 +03:00
Delyan Angelov
296a6095a4
builder: vfmt compile.v
2020-10-24 15:48:11 +03:00
Delyan Angelov
8f85396a31
builder: use unique .tmp.c and .tmp.c.rsp files, and rm them on successfull non debug builds.
2020-10-24 15:08:45 +03:00
Delyan Angelov
ac6fad6a63
checker: fix comptime custom defines usages, add tests
2020-10-24 15:06:51 +03:00
Larpon
e97d3af4b1
tcc: fix 'tcc: error: library `atomic` not found' on older Ubuntu distros ( #6672 )
2020-10-24 13:49:57 +03:00
Alexander Medvednikov
c2e9be5a45
cgen: use even more efficient array.delete_last()
2020-10-23 23:04:22 +02:00
Alexander Medvednikov
334497fdc0
cgen: use more efficient array.pop()
2020-10-23 22:52:50 +02:00
Alexander Medvednikov
3b3501cf09
autofree: if expression fixes
2020-10-23 22:50:22 +02:00
Delyan Angelov
8ffbcdc553
cgen: extract g.new_ctemp_var/2, g.new_ctemp_var_then_gen/2 and g.gen_ctemp_var from gen_assert_stmt
2020-10-22 19:48:06 +03:00
Delyan Angelov
66787b05d6
cgen: support most kinds of ast.PrefixExpr in gen_assert_metainfo
2020-10-22 19:25:07 +03:00
Delyan Angelov
f7698ea160
v symlink: fix windows PATH setting (cmd.exe needs C: not c:)
2020-10-22 17:31:37 +03:00
Alexander Medvednikov
66b8462d7a
autofree: handle method chains
2020-10-22 03:51:28 +02:00
Delyan Angelov
ab137e4164
cgen: print results of failed callexprs in `assert fn() == fn2()` ( #6665 )
2020-10-21 21:58:40 +02:00
Alexander Medvednikov
6d11caf784
autofree: string.replace() test
2020-10-21 19:44:31 +02:00
Swastik Baranwal
019e3b2f4a
checker: add error for ast.PrefixExpr on the left side of decl_assign ( #6660 )
2020-10-21 17:37:30 +02:00
Delyan Angelov
d67e177733
ci: run `v vet` over cmd/tools and cmd/v too
2020-10-21 15:26:29 +03:00
Delyan Angelov
9322e91d1b
v test-fmt: add 1 sec sleep before rebuilding vfmt, to avoid its parallel recompilation afterwards
2020-10-21 15:20:07 +03:00
Delyan Angelov
87f659a0dc
ci: fix should_recompile_tool/2
2020-10-21 15:07:57 +03:00
Delyan Angelov
1aa6c125d9
ci: fix `v self`
2020-10-21 13:43:18 +03:00
Delyan Angelov
02db94c4bc
v test-fmt: reuse v.util.should_recompile_tool/2, extracted from v.util.launch_tool/3
2020-10-21 12:54:10 +03:00
Delyan Angelov
dab66593fc
vlib: run vfmt over vlib files, so that `v doc -m vlib/` can run without warnings
2020-10-21 12:54:10 +03:00
Ned Palacios
5b1ab3b0bb
vdoc: use maps, enum-based categorization; fixes ( #6659 )
2020-10-21 11:26:33 +03:00
Delyan Angelov
f3732b730a
term: replace assert with panic to enable build-module for it too
2020-10-21 08:49:07 +03:00
Enzo
21db4b338b
parser: clean error when nesting `unsafe` ( #6656 )
2020-10-20 22:57:24 +03:00
Delyan Angelov
5c93f942be
docs,tests: add project_with_c_code_2 (passing structs from C to V to C)
2020-10-20 17:59:48 +03:00
Delyan Angelov
0e55534c6e
cgen: fix spurious autoref bug, for struct init of a &C.type field, with a byteptr value
2020-10-20 16:28:33 +03:00
Alexey
74ebce6b1f
vdoc: fix generating documentation for 3rd-party modules ( #6651 )
2020-10-20 02:52:56 +02:00
Lukas Neubert
f37e936321
pg, sqlite, mysql: run vfmt ( #6650 )
2020-10-19 20:11:04 +02:00
Alexander Medvednikov
37d6503437
parser: do not allow fn consts
2020-10-19 13:48:39 +02:00
Delyan Angelov
0d31b39f11
cgen: improve error message for <inttypes.h>
2020-10-19 12:44:53 +03:00
Delyan Angelov
d89986dd5e
cgen: use a guarded include for <inttypes.h> too
2020-10-19 12:18:22 +03:00
Delyan Angelov
92d9569d5d
checker: fix #include with @VROOT
2020-10-18 22:31:21 +03:00
Alexander Medvednikov
396dca7f48
checker: handle bad `$if` values
2020-10-18 21:22:37 +02:00
Alexander Medvednikov
30214a7700
Revert "cgen: enable new if expression implementation everywhere"
...
This reverts commit 958577b98b
.
2020-10-18 20:19:52 +02:00
Alexander Medvednikov
958577b98b
cgen: enable new if expression implementation everywhere
2020-10-18 20:14:58 +02:00
Delyan Angelov
9cf5c9ac43
tests: simplify print mode logic
2020-10-18 20:49:25 +03:00
Delyan Angelov
2440413310
tests: turn off live_test.v on macos for now (due to frequent false positives)
2020-10-18 19:45:49 +03:00
Delyan Angelov
7bc94fff9a
tests: implement compact progress mode (the old one is available with -expand)
2020-10-18 19:27:29 +03:00
Alexander Medvednikov
8a68714095
cgen: new experimental simple if expression implementation
2020-10-18 15:55:18 +02:00
Delyan Angelov
2f149e6984
vfmt: fix merged param warnings in sokol's particles example and vlib/x/net/udp.v
2020-10-18 13:45:13 +03:00
Delyan Angelov
44753e62ab
builder: enable `v run x_test.v` to allow universal make/compile commands in vim/emacs
2020-10-18 10:34:40 +03:00
Delyan Angelov
8b2e704741
examples: make `v -prod build-examples` pass without warnings/errors
2020-10-18 09:48:13 +03:00
Delyan Angelov
dd96ba0d24
vfmt: fix `type TwoSameArgs = fn (i int, j int) string` formatting
2020-10-18 08:54:29 +03:00
Delyan Angelov
5c4ba3474b
vfmt: fix `init_fn gg.FNCb = voidptr(0)` when vfmt-ing gg.v
2020-10-18 08:42:08 +03:00
Alexander Medvednikov
55536bb364
autofree: handle more statements
2020-10-18 00:48:06 +02:00
Swastik Baranwal
acc85be5ae
checker: disallow type casting to `none` ( #6635 )
2020-10-17 20:02:30 +03:00
Delyan Angelov
9309a07438
net.openssl: update custom missing headers message
2020-10-17 19:30:50 +03:00
Lukas Neubert
dea8662d6b
cli: show help for empty root command ( #6636 )
2020-10-17 19:06:27 +03:00
Delyan Angelov
3c2202572b
cgen: produce cleaner error on missing C headers (with optional explanation) ( #6637 )
...
Implements support for `#include <openssl/rand.h> # Please install OpenSSL`.
2020-10-17 18:27:06 +03:00
Delyan Angelov
aad122334b
vlib: fix warnings due to the vfmt change
2020-10-17 16:26:56 +03:00
Delyan Angelov
8d88b73512
parser: fix formatting
2020-10-16 17:47:23 +03:00
Delyan Angelov
140166e1cd
interpolation: support '' (rounding like in C)
2020-10-16 17:28:11 +03:00
Delyan Angelov
11ee68e799
cgen: fix an interface index generation bug
2020-10-16 15:22:25 +03:00
Delyan Angelov
eab0974e7d
net: allow more accurate profiling, using `res := C.xxx return res` instead of `return C.xxx`
2020-10-16 00:43:55 +03:00
Delyan Angelov
6cea20e427
tests: fix warnings in live_test.v
2020-10-15 23:15:00 +03:00
Enzo
b083f4014b
fmt: fix multiple things and format most of the compiler ( #6631 )
...
Format expressions inside string interpolation like the rest (it used to be a+b instead of a + b, not too sure why)
Fix formatting some match branches when there were only one statement inside (it was inlined)
Fix parsing and formatting some comments edge case on struct field init. You should check out this test because the result is a bit different from before. I personally find it more logical but I would understand if the former format was to stay
Fix formatting of void-returning function signature
2020-10-15 22:12:59 +02:00
Delyan Angelov
d261844da0
vweb: fix warnings about `fn f(x, y Type)`
2020-10-15 22:04:42 +03:00
Nick Treleaven
3c336b566d
checker: add check_expected() which returns an optional error ( #6623 )
2020-10-15 17:30:36 +02:00
Alexander Medvednikov
0dfd51408e
autofree: use scopes to avoid dups
2020-10-15 16:26:59 +02:00
Daniel Däschle
df82ef6bc7
base64: encode_url ( #6622 )
2020-10-15 16:04:06 +02:00
Delyan Angelov
31ef921ef2
ci: fix warnings/errors due to the vfmt change
2020-10-15 16:17:52 +03:00
Delyan Angelov
50a2b033b7
ci: fix failing tests on windows too
2020-10-15 15:54:44 +03:00
Delyan Angelov
5d4cce3e95
ci: fix failing tests
2020-10-15 15:42:16 +03:00
Alexander Medvednikov
8b13f3b53f
fmt: fix tests
2020-10-15 12:45:34 +02:00
Alexander Medvednikov
3d4ab7de1e
checker: update tests
2020-10-15 12:39:32 +02:00
Alexander Medvednikov
7da1afa140
all: switch to the new fn arg syntax everywhere; add lots of vfmt -verify tests
2020-10-15 12:32:28 +02:00
Alexander Medvednikov
982056894e
fmt: use `f(x int, y int)` instead of `f(x, y int)`
2020-10-15 12:00:46 +02:00
Swastik Baranwal
314fae7446
checker: add more checks for hash_stmt ( #6615 )
2020-10-15 11:58:01 +03:00
Delyan Angelov
44a42b7273
ci: fix parser.v formatting
2020-10-15 11:41:43 +03:00
Delyan Angelov
6326b6d58e
parser: add helper method p.trace/2
2020-10-15 11:09:19 +03:00
JalonSolov
a4cc1ab7e3
all: cleanup more match statements ( #6616 )
2020-10-15 08:08:27 +03:00
Delyan Angelov
3795aaab5c
v test-fmt: reformat some skipped files, comment on the remaining ones
2020-10-15 00:39:09 +03:00
Delyan Angelov
46c5a2c8fc
v test-fmt: fix some embedded comments in expressions
2020-10-14 22:52:33 +03:00
Delyan Angelov
c33a748344
vfmt: handle more comments in interface/struct init/match branches
2020-10-14 22:52:33 +03:00
Alexander Medvednikov
6ad5ecf569
table: add "please create a gh issue" to the "compiler bug" error
2020-10-14 21:09:10 +02:00
Delyan Angelov
3c48a6e4ce
tests: rename _test.v files with dup names (temp workaround for highly parallel testing)
2020-10-14 18:25:26 +03:00
Delyan Angelov
d1e52620c7
crypto.hmac: implement hmac.equal/2 too
2020-10-14 17:21:48 +03:00
Alexander Medvednikov
9355c60b4d
cgen: fix for mut val and enable the test
2020-10-14 13:34:49 +02:00
Alexander Medvednikov
25947a7b23
autofree: handle args in optional returns
2020-10-14 13:23:58 +02:00
Alexander Medvednikov
ea09bd5e45
checker/fmt: `for mut val` fixes
2020-10-14 12:50:19 +02:00
Ekopalypse
ed7e306adc
crypto: add hmac module ( #6614 )
2020-10-14 12:25:58 +02:00
Delyan Angelov
ee0baf62ad
vdoc: fix for `v doc log`
2020-10-13 18:11:57 +03:00
Alexander Medvednikov
194c2c926e
doc: use the new table.type_to_str
2020-10-13 16:46:56 +02:00
Alexander Medvednikov
a07f31feae
all: `for mut val in vals {` (part 1)
2020-10-13 16:27:30 +02:00
Delyan Angelov
d316f78f94
vfmt: remove the buggy f.type_to_str, use f.table.type_to_str from now on
2020-10-13 16:17:02 +03:00
Delyan Angelov
1123f4fcc9
vfmt: fix deep nested map types, using f.table.type_to_str
2020-10-13 16:08:25 +03:00
Nick Treleaven
78bcda14c4
checker: infer T from parameter of type `[]T` ( #6611 )
2020-10-13 15:15:25 +03:00
Delyan Angelov
28dea17065
ci: prevent Periodic failure, ensure VSMTP_TEST_USER/VSMTP_TEST_PASS are set in smtp_test.v
2020-10-13 09:22:28 +03:00
JalonSolov
57d705e265
ast: minor code cleanup ( #6608 )
2020-10-12 23:11:51 +02:00
Enzo
da7d531f8f
fmt: refactor `type_to_str` ( #6607 )
2020-10-12 18:41:42 +03:00
Enzo
93bb7564dc
fmt: fix multiple problems with types ( #6603 )
2020-10-12 09:27:55 +03:00
scurty-labs
5e86b40469
gg: update draw_circle/arc x, y to f32 ( #6595 )
2020-10-11 20:36:18 +02:00
Delyan Angelov
62f6e65509
repl: fix `reset`; make `echo "print(2.0 * 3.14159)" | ./v` print only the result
2020-10-11 10:50:24 +03:00
Delyan Angelov
c7e0a27e0d
ci: fix v fmt test, by formatting cgen.v and atypes.v
2020-10-11 10:00:53 +03:00
Delyan Angelov
604b28b1c5
cgen: fix for `type FdfFn = fn(...) (x,y)`
2020-10-11 09:53:35 +03:00
Nick Treleaven
b677ad9ca5
checker: fix panic on match expression without results ( #6597 )
2020-10-10 15:42:40 +02:00
Enzo
6038264a4c
gen: fix slicing mutable arguments ( #6596 )
2020-10-10 12:03:23 +02:00
Alexander Medvednikov
d8d80fbf42
gg: add a missing math import and vfmt
2020-10-10 10:37:17 +02:00
Alexander Medvednikov
1332bba7af
autofree: wrap up optionals
2020-10-10 10:34:51 +02:00
scurty-labs
b2fdd7fbaf
gg: add draw_circle and draw_arc ( #6594 )
2020-10-10 10:26:08 +02:00
Xavier B
d56072eb53
vweb: fix/remove todos from assets tests ( #6593 )
2020-10-10 00:54:46 +02:00
Delyan Angelov
e862fad917
parser: support `mut static x := y` in -translated mode
2020-10-09 22:24:21 +03:00
Justin Jones
04d3ca7dbe
http: fix status codes ( #6590 )
2020-10-09 18:33:16 +03:00
Nick Treleaven
36706126fd
checker - improve error for `as` casting on non-sum type ( #6587 )
2020-10-09 16:12:12 +02:00
Ned Palacios
fc375a40f8
x.json2: add fast_raw_decode; support for i64 and f32 ( #6586 )
2020-10-09 16:11:55 +02:00
Nick Treleaven
f734f8167b
checker: improve error message for match branch type mismatch ( #6588 )
2020-10-09 16:11:11 +02:00
Alexander Medvednikov
c463c26983
autofree: optionals fix
2020-10-09 01:13:31 +02:00
Nick Treleaven
92630a2821
checker: error if assigning to a function ( #6581 )
2020-10-09 00:48:39 +02:00
Alexander Medvednikov
7d65e4cb10
autofree: fix and test var declarations
2020-10-08 17:10:20 +02:00
Alexander Medvednikov
1123b8259a
time: vfmt time/parse.v
2020-10-08 16:59:43 +02:00
Delyan Angelov
c3626bf2e6
vfmt: prepare for using .source_name in type_to_str
2020-10-08 14:26:12 +03:00
Swastik Baranwal
aea52af9ae
checker: add is_mut check for disallowing taking address of map's key and array's element outside unsafe ( #6573 )
2020-10-08 09:37:18 +03:00
Delyan Angelov
efce448b23
parser: always treat MainLetter(x) as a cast, even when the type is not yet known
2020-10-07 15:50:54 +03:00
Delyan Angelov
d46d607334
backporting: remove C typedef redefinitions of map_int/map_string/array_byte/array_string
2020-10-07 11:32:50 +03:00
Delyan Angelov
317a9bae5f
backporting: remove redefinition of strconv__Float64u
2020-10-07 11:06:52 +03:00
Delyan Angelov
3d0f4fd756
backporting: cleanup Makefile, use -std=gnu99 by default, honor CFLAGS and LDFLAGS (CentOS 6.9)
2020-10-07 07:05:59 +00:00
shnorbluk
b940dc4f8a
cli: help displayed when a Command has no execute function ( fix #6530 ) ( #6567 )
2020-10-07 05:39:13 +02:00
Delyan Angelov
ce302c29e4
builtin: support also [abc,def].sort(b>a)
2020-10-06 21:33:15 +03:00
Nick Treleaven
f7decfe399
checker: infer generic type T from matching fn call argument ( #6298 )
2020-10-06 15:34:02 +02:00
Delyan Angelov
8e5067421f
vet: accumulate the collected errors manually (fixes CI)
2020-10-06 10:02:35 +03:00
Delyan Angelov
70826914a7
ci: fix mut_args_warning.vv error
2020-10-06 09:38:07 +03:00
Alexander Medvednikov
256a572cbe
vet: fix vet_errors
2020-10-06 07:07:50 +02:00
Alexander Medvednikov
ed15b40529
parser: do not allow array references + explain why
2020-10-06 06:53:48 +02:00
Alexander Medvednikov
63c9b88e7f
vet: remove unnecessary &[]string
2020-10-06 06:43:28 +02:00
Alexander Medvednikov
a51c445df8
ci: vfmt -verify more important files
2020-10-06 06:32:39 +02:00
Alexander Medvednikov
d2d3289a2a
all: mark pref.Preferences field as immutable
2020-10-06 06:24:50 +02:00
Delyan Angelov
06a02c41c3
tests: reduce probability of locks during macos runs of live_test.v
2020-10-05 21:20:42 +03:00
Swastik Baranwal
d77669da80
test: add tests for disallowing map/array get element/key address ( #6568 )
2020-10-05 18:40:51 +03:00
kalapalo
4b410534dd
cgen: add C fn memfreedup to cheaders.v ( #6563 )
2020-10-05 13:14:41 +02:00
Swastik Baranwal
5f07b255bd
checker: disallow address of array and map index outside unsafe ( #6557 )
2020-10-05 13:08:30 +02:00
Ned Palacios
2b1a5d7a56
vdoc: move local scope-based doc generation to its own function ( #6565 )
2020-10-05 07:59:17 +02:00
Enzo
35a83464d0
gen: separate sumtype from classic match ( #6547 )
2020-10-04 19:50:23 +02:00
Ekopalypse
2622070f14
os: ensure that setenv creates the key on windows ( #6560 )
2020-10-04 19:43:28 +02:00
Delyan Angelov
0c174104fc
checker: allow &=,|=,^=,%= on an integer number type aliases
2020-10-04 15:29:09 +03:00
Delyan Angelov
628b136e85
checker: allow casting from floats/enums to byte
2020-10-04 14:46:24 +03:00
Marcin
aa81ebb600
scanner: fix double quotes escape ( #6474 )
2020-10-04 10:34:04 +02:00
Enzo
fd88bfbac8
fmt: fix formatting of anon args ( #6545 )
2020-10-04 06:32:47 +02:00
Leonardo Cecchi
51987e17df
pg: make `exec`, `q_int` and `q_strings` return an optional ( #6554 )
2020-10-04 06:31:47 +02:00
Enzo
c84848c417
fmt: fix formatting enum with attributes ( #6551 )
2020-10-03 21:33:02 +03:00
vmcrash
c5e46c9e55
atoi.v: add common_parse_uint2 with error code return values ( #6550 )
2020-10-03 20:57:37 +03:00
Henrixounez
c324169af0
all: remove intermediate handling for both global definition syntaxes ( #6546 )
2020-10-03 15:41:45 +02:00
Swastik Baranwal
7e13518cc2
parser: disallow match expr at certain places ( #6490 )
2020-10-03 16:30:58 +03:00
Henrixounez
a9da4dd437
parser: fix indentation to tabs ( #6548 )
2020-10-03 14:20:41 +02:00
Delyan Angelov
de77f0ba0f
vfmt: make vlib/v/table/table.v vfmt-able
2020-10-03 12:57:21 +03:00
Enzo
677b0ba2d2
gen: access fields in multi-type sumtype match ( #6541 )
2020-10-03 11:19:43 +02:00
Delyan Angelov
7b034a54e3
vfmt: make vlib/v/table/atypes.v vfmt-able
2020-10-03 11:48:12 +03:00
Henrixounez
c9574ae7d7
syntax: new global variable declaration syntax ( #6540 )
2020-10-03 07:03:44 +02:00
Leonardo Cecchi
8ac0bd44bd
pg: avoid leaking a PGconn on connection errors ( #6543 )
2020-10-03 07:03:11 +02:00
Swastik Baranwal
c8a884f57f
checker: fix typos in chan ( #6539 )
2020-10-03 06:59:30 +02:00
kalapalo
eefe067c27
cgen: fix `as` cast when sumtype is the result of a function call ( #6537 )
2020-10-03 05:04:15 +02:00
Daniel Däschle
2204bad7cf
gen: removes space on struct printing ( #6535 )
2020-10-02 13:06:02 +02:00
Delyan Angelov
70c87137a9
live_test.v: wait 5 times more on macos
2020-10-02 11:38:49 +03:00
Nick Treleaven
7c86b03505
checker: don't error if last statement in match branch produces a value ( #6523 )
2020-10-02 09:33:04 +02:00
Daniel Däschle
8e8e808fc9
gen: fix sumtype custom str ( #6534 )
2020-10-02 09:32:07 +02:00
Ekopalypse
1a7ac5e382
builtin: VectoredExceptionHandler cast on x86 ( #6525 )
2020-10-02 05:17:33 +02:00
Nicolas Sauzede
c825275f7f
pref: fix whitespace in compiler message ( #6529 )
2020-10-02 05:16:16 +02:00
Henrixounez
8152b86652
checker: detect correct len expression for multidimensional array init ( #6521 )
2020-10-02 03:12:33 +02:00
Nick Treleaven
7e720a1253
pref: do not check arguments after 'run' command ( #6524 )
2020-10-01 23:30:39 +03:00
Henrixounez
a57e01fee7
parser: dont allow single letter enums ( #6526 )
2020-10-01 23:29:49 +03:00
spaceface777
f55f2fb9d1
gen: optimize `str == ''` to `str.len == 0` for performance ( #6527 )
2020-10-01 23:28:44 +03:00
Delyan Angelov
ac384db71f
builder: cleanup .timing_message/2
2020-10-01 18:21:34 +03:00
Delyan Angelov
a0e4be04be
compiler: print more suggestions, without a good specific match
2020-10-01 17:27:31 +03:00
Henrixounez
0f1ed1ca09
scanner: add an error for unfinished string literals ( #6519 )
2020-10-01 16:40:59 +03:00
Delyan Angelov
11b16a63cf
checker: add a suggestion for misspelled struct field name errors
2020-10-01 15:36:47 +03:00
Alexander Medvednikov
f534edc371
doc: replace os.base_dir with os.dir
2020-10-01 01:30:22 +02:00
Alexander Medvednikov
4879661f5a
os: remove base_dir(); dir() and base() fixes
2020-10-01 01:25:52 +02:00
Enzo
324d547cdb
parser: allow multiple types in match branch ( #6505 )
2020-10-01 01:07:36 +02:00
Nick Treleaven
18be7b115a
checker: disallow most statements in if/match expression branches ( #6509 )
2020-09-30 16:06:22 +02:00
Lukas Neubert
3a8be4d8d9
os: home_dir() remove trailing slash ( #6512 )
2020-09-30 16:02:54 +02:00
Lukas Neubert
76e373a5f4
v help: fix newline ( #6510 )
2020-09-30 15:57:22 +03:00
Larpon
4cd5153b32
android: enable autofree ( #6503 )
2020-09-30 07:40:05 +02:00
Alexander Medvednikov
ae7689f739
autofree: simplify, clean up, and fix complex arg exprs
2020-09-30 07:27:24 +02:00
Daniel Däschle
c38a050125
cgen: fix array and map printing ( #6508 )
2020-09-30 01:26:27 +02:00
Delyan Angelov
dc954bbb03
all: use `macos` consistently in os.user_os and the compiler
2020-09-29 22:32:20 +03:00
JalonSolov
2fd6c05445
fonts: fix so it does not try for RobotoMonoMono.ttf ( #6507 )
2020-09-29 13:20:37 +03:00
Ned Palacios
1aec041371
json: fix encode/decode support for generic structs ( #6489 )
2020-09-29 03:15:00 +02:00
Nick Treleaven
05dcdfd267
pref: error if unknown argument passed to `v` ( #6487 )
2020-09-29 03:13:54 +02:00
Nick Treleaven
9f33b33803
parser: warn about ambiguous infix/prefix op token ( #6491 )
2020-09-29 03:13:10 +02:00
Alexander Medvednikov
9e31335744
pref: remove obsolete flags
2020-09-29 02:54:05 +02:00
Daniel Däschle
06cade6c31
all: change .ReturnType and .Type to .return_type and .typ ( #6494 )
2020-09-28 06:13:38 +02:00
Delyan Angelov
f9ce7f3542
vfmt: fix formatting for [4][4]int static arrays
2020-09-27 22:46:33 +03:00
Delyan Angelov
cbd7c7d8c6
tests: support VTEST_ONLY in vlib/v/fmt/fmt_keep_test.v too
2020-09-27 22:01:46 +03:00
Delyan Angelov
cfdf66c129
ci: run vfmt over checker.v
2020-09-27 17:08:28 +03:00
Delyan Angelov
220f3cc2b9
bare: update Signo enumeration
2020-09-27 16:48:25 +03:00
Delyan Angelov
a6d525eb92
ci: fix `is not a variable and cannot be locked` failing tests
2020-09-27 16:32:46 +03:00
Emily Hudson
3a869c726b
builtin: fix definition of VectoredExceptionHandler ( #6495 )
2020-09-27 15:56:30 +03:00
Delyan Angelov
03258db26d
ci: other mut vlib test fixes
2020-09-27 11:18:55 +03:00
Delyan Angelov
aa889b0edc
ci: fix vlib/x/websocket tests
2020-09-27 11:10:56 +03:00
Delyan Angelov
7c6695317c
Revert "ci: fix building v from vc"
...
This reverts commit b3f503e0ce
.
2020-09-27 10:36:26 +03:00
Delyan Angelov
b3f503e0ce
ci: fix building v from vc
2020-09-27 10:34:11 +03:00
Alexander Medvednikov
c5dc792c5d
fmt: args => params
2020-09-27 03:46:15 +02:00
Alexander Medvednikov
3d5292b63f
tcp/udp: fix mutability
2020-09-27 03:40:59 +02:00
Alexander Medvednikov
fca344d1fb
all: fn args => params
2020-09-27 03:32:56 +02:00
Alexander Medvednikov
e2c7126d11
checker: verify mutability of method args
2020-09-27 03:14:24 +02:00
Delyan Angelov
af37c7ac6b
gg: prevent messages about missing font variants without `-d debug_font`
2020-09-26 09:36:46 +03:00
Daniel Däschle
d782de5b00
gen: struct str fixes ( #6483 )
2020-09-25 23:12:33 +02:00
Delyan Angelov
b999d01de7
runtime: use GetCurrentProcessorNumber for runtime.nr_cpus()
2020-09-25 22:02:29 +03:00
Nick Treleaven
fbae0a7274
checker: warn if fn looks like a test fn but filename doesn't end in `_test.v` ( #6469 )
2020-09-25 19:26:11 +03:00
spaceface777
b44620d065
time: use linux high-precision timers on Android as well ( #6476 )
2020-09-25 18:02:02 +03:00
spaceface777
aa1d5fcbdd
flag: fix panic if flag value was not provided ( #6478 )
2020-09-25 16:31:35 +03:00
spaceface777
ae48b709ed
gg: don't call `os.is_file()` on Android (the font is part of the APK there) ( #6475 )
2020-09-25 13:06:20 +03:00
Daniel Däschle
abc98c273c
parser: require assign on type alias ( #6477 )
2020-09-25 12:02:32 +02:00
Lukas Neubert
2ea94d621f
gg: fix loading variants of many fonts in new_ft() ( #6468 )
2020-09-25 11:52:57 +02:00
spaceface777
0b95d72354
checker: comp. if branch logic fix ( #6473 )
2020-09-25 12:48:27 +03:00
Daniel Däschle
90d1a689db
gen: fix str gen for pointers in structs ( #6462 )
2020-09-24 21:14:16 +02:00
Daniel Däschle
e384dea8ac
checker: add error for amp on literals ( #6467 )
2020-09-24 21:13:46 +02:00
Alexander Medvednikov
47a62b12d4
autofree: advanced expr test
2020-09-24 19:22:16 +02:00
Alexander Medvednikov
403cd0d915
Revert "gen: scape string function in gen/str.v ( #6452 )"
...
This reverts commit 60fbcc37fc
.
2020-09-24 18:19:18 +02:00
Marcin
60fbcc37fc
gen: scape string function in gen/str.v ( #6452 )
2020-09-24 18:18:10 +02:00
Nick Treleaven
be2ac0ba89
fmt: fix writing ConcatExpr ( #6466 )
2020-09-24 18:04:39 +02:00
Delyan Angelov
dbce01792c
gg: try 3 different fonts in system_font_path on MacOS
2020-09-24 17:09:08 +03:00
Delyan Angelov
1f21bc4b49
gg: bugfix on missing font file, remove last empty line in `v doctor`
2020-09-24 16:53:06 +03:00
Nick Treleaven
3925c3fa20
parser: disallow index variable with range `for` ( #6464 )
2020-09-24 15:52:44 +03:00
Marcin
fb45e2e046
flag: fix panic on single `-`
2020-09-24 15:50:44 +03:00
Uwe Krüger
72ecc222ee
fmt: support `select` expressions ( #6460 )
2020-09-23 22:22:39 +02:00
Daniel Däschle
4f09ddccb4
cgen: implement sum type str gen ( #6454 )
2020-09-23 20:51:51 +02:00
Nick Treleaven
2886b1c67d
checker: require binary operands for &&, || ( #6449 )
2020-09-23 20:48:25 +02:00
Uwe Krüger
9c0758639b
cgen: fix `for match {...} {` and `for select {...} {` ( #6441 )
2020-09-23 06:05:12 +02:00
Alexander Medvednikov
624f22e27e
all: mutability check (part 1); enable mutable sumtype args
2020-09-22 05:28:29 +02:00
Delyan Angelov
a9ef7d173f
doctor: suggest `v doctor` in issue templates and C builder errors
2020-09-21 18:29:52 +03:00
Ned Palacios
744f685973
vdoc: document variables in a specific pos/scope; support `v doc os File` ( #6354 )
2020-09-21 17:40:39 +03:00
Swastik Baranwal
077b597bd8
scanner/parser: change error msgs for `\0` and `\x00` and add error for r`byte` and c`byte` ( #6436 )
2020-09-21 17:34:24 +03:00
Uwe Krüger
0f1c484ad1
parser/checker: `if select { ... } {` ( #6434 )
2020-09-21 07:34:04 +02:00
Alexander Medvednikov
27f91faae5
gg: remove an old compielr hack that's no longer needed
2020-09-21 02:51:14 +02:00
Alexander Medvednikov
8c8fe02000
gg: mouse_move, mouse_down
2020-09-21 02:42:53 +02:00
Leonardo Cecchi
21c5ff681b
pg: add binding for PQfinish (close) ( #6435 )
2020-09-21 01:47:37 +02:00
Henrixounez
e429a77de2
gen: named imported structs operator overloading and str methods ( #6433 )
2020-09-20 19:51:14 +02:00
Henrixounez
5086fd537c
checker: prompt error on implicit int overflow by literal ( #6410 )
2020-09-20 16:29:01 +02:00
Marcin
34884c1631
os: fix binary mode read/write on windows ( #6431 )
2020-09-20 16:28:45 +02:00
Delyan Angelov
d4fbf422b3
gg: support transparency for rect/triangle/etc primitives too
2020-09-20 12:05:30 +03:00
Uwe Krüger
4ae88c69ac
sync/select: allow push of literals and calculated expressions ( #6429 )
2020-09-20 03:50:09 +02:00
Alexander Medvednikov
c781a5f245
gg: draw_triangle(); draw_image_flipped()
2020-09-20 03:47:32 +02:00
Nick Treleaven
9958881cbe
parser: support parsing unsafe (as first token) as UnsafeExpr ( #6032 )
2020-09-19 19:18:36 +03:00
Swastik Baranwal
1c886ad067
scanner: add check for `!is_raw` for null `\0` ( #6427 )
2020-09-19 19:09:18 +03:00
Henrixounez
4b0e7fc979
checker: check if imported struct is public ( #6425 )
2020-09-19 18:16:43 +03:00
Henrixounez
4121ba9ea9
parser: fix error about multiple modules showing when eof ( #6423 )
2020-09-19 02:15:47 +02:00
Uwe Krüger
31a52cdf21
cgen: implement channel `select` block code generation ( #6424 )
2020-09-19 02:14:35 +02:00
Enzo
3126ae305c
checker: verify use of blank identifier ( #6412 )
2020-09-18 23:47:50 +02:00
Delyan Angelov
78e6ddee75
tests: enable running `v test .` inside vlib/v/ too
2020-09-18 19:20:01 +03:00
Daniel Däschle
1b9711edde
gen: fix C warnings by cleaning up skip_struct_init ( #6416 )
...
* gen: removes struct name from list which shouldn't be initialized
* gen: vfmt
* cgen: remove the skip_struct_init list
* Revert "cgen: remove the skip_struct_init list"
This reverts commit d9e1fdbb4c
.
* fix ci
* vfmt vlib/v/gen/cgen.v
Co-authored-by: Delyan Angelov <delian66@gmail.com>
2020-09-18 16:36:40 +03:00
Henrixounez
46dc6cc24b
repl: fix ctrl+z job to background on linux ( #6417 )
2020-09-18 16:34:00 +03:00
Delyan Angelov
d2badcdedf
vlib: fix more C warns on windows
2020-09-18 13:40:47 +03:00
Henrixounez
c1f04d8c72
builtin: fix min value for int_str ( #6411 )
2020-09-18 12:56:16 +03:00
Daniel Däschle
ffc8cf3925
gen: c don't generate x >= 0 check for unsigned ints in range exprs in matches ( #6414 )
2020-09-18 12:53:19 +03:00
Daniel Däschle
f7aa9cb0c5
vlib: fix C warning for UNICODE macro redefinition on windows ( #6415 )
2020-09-18 12:51:55 +03:00
Henrixounez
c02a0f90df
checker: prompt error on script expression while inside a file with main ( #6400 )
2020-09-18 01:14:14 +02:00
Henrixounez
4038ac463c
gen: bytes array print not ending prematurely when null byte ( #6401 )
2020-09-18 01:12:32 +02:00
Nick Treleaven
14743458e5
checker: tweak error messages for `or` block; use proper type names ( #6377 )
2020-09-18 01:09:00 +02:00
Daniel Däschle
f59b771c76
parser: fix nested amp ( #6402 )
2020-09-18 01:04:56 +02:00
Nick Treleaven
69c592e0d6
checker: disallow infix op on an optional type ( #6406 )
2020-09-18 01:03:55 +02:00
Henrixounez
99574e465d
scanner: allow escape on null character ( #6404 )
2020-09-18 01:02:06 +02:00
Enzo
a1e127ae46
checker: check type in `is` InfixExpr ( #6407 )
2020-09-18 01:01:05 +02:00
spaceface777
ff92c3409d
ast: merge `IfExpr` and `CompIf` ( #6011 )
2020-09-18 00:58:54 +02:00
Seven Du
98e6d25b42
vweb: make ip() to return peer_ip work ( #6399 )
2020-09-17 10:38:39 +03:00
Delyan Angelov
6f7bb30b0a
tests: fix strconv.v_sprintf arrity mismatch in format_test.v
2020-09-17 00:33:25 +03:00
Delyan Angelov
80b150d3ad
strconv.v_sprintf: add runtime checks&panics on arrity mismatches
2020-09-17 00:24:33 +03:00
Lukas Neubert
2464deec82
cli: improvements to help and error messages ( #6375 )
2020-09-16 22:01:44 +02:00
Henrixounez
608df40058
checker: fix error declaration on a value ( #6390 )
2020-09-16 22:01:15 +02:00
Delyan Angelov
e2e683199d
time: do not panic on time.new_time({unix: 1608854400}).str()
2020-09-16 22:14:02 +03:00
Daniel Däschle
c960b5979e
vlib: fix incompatible pointer warning ( #6385 )
2020-09-16 17:40:02 +03:00
Uwe Krüger
1bc9063573
parser: implement parsing of `select` block ( #6379 )
2020-09-16 15:34:57 +02:00
Daniel Däschle
3a795e6d9b
gen: fixes C warnings by appending U after unsigned integer literals ( #6384 )
2020-09-16 15:50:41 +03:00
Delyan Angelov
5da698b4bf
tests: add support for skipping tests in vlib/v/compiler_errors_test.v too
2020-09-15 19:56:52 +03:00
Nick Treleaven
b552c29bef
os: add fn `read_bytes_into` with buffer argument ( #6365 )
2020-09-14 15:34:34 +02:00
Delyan Angelov
a9bd6acd52
builtin: fix new_dense_array (avoid the &string(int(...)) bug generating (int*) )
2020-09-14 16:26:25 +03:00
Delyan Angelov
bbf4983524
autofree: add option_reassigned.v and option_simple.v tests.
2020-09-14 13:04:24 +03:00
Alexander Medvednikov
bffa100aa6
autofree: optional fix
2020-09-13 21:36:33 +02:00