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

6686 Commits

Author SHA1 Message Date
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