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

7050 Commits

Author SHA1 Message Date
Lukas Neubert
1b572f75e8
fmt: minor array wrap improvement (#9420) 2021-03-22 23:06:12 +01:00
Delyan Angelov
a00c80b98f
v: support compiler notices. Use them for [deprecated_after: '2021-05-01'] tags
Compiler notices are like warnings, with these differences:
   a) notices use a different color.
   b) notices use a different label.
   c) notices do not prevent compilation with -prod.
   (warnings are converted to errors with -prod)
2021-03-22 19:59:00 +02:00
Delyan Angelov
c76c69ec35
all: simplify return if ... constructs to make more code compatible with -autofree 2021-03-22 16:45:29 +02:00
Alexander Medvednikov
a53aaaf9e7 os: fix a leak in read_lines() 2021-03-22 12:20:55 +03:00
yuyi
320cd00203
string: fix replace_each() (#9415) 2021-03-22 09:46:45 +01:00
Delyan Angelov
400b4027c9
strings: comment deprecation of Builder.write_bytes temporarily 2021-03-22 09:01:22 +02:00
Delyan Angelov
1eb3ed9818
flag: return error on .finalize() on CLI arguments with unknown short options too 2021-03-22 08:21:13 +02:00
zakuro
0258482caf
cgen: auto eq method for sumtype (#9408) 2021-03-22 06:39:07 +01:00
yuyi
cf6faaf215
parser: fix anon_fn with array arguments (#9414) 2021-03-22 03:22:29 +01:00
Subhomoy Haldar
c5bc349edb
rand: update documentation (#9406) 2021-03-21 19:36:17 +02:00
zakuro
dfd58293ef
parser: fix parse error when using f<Foo<int> > (#9401) 2021-03-21 13:09:43 +02:00
Subhomoy Haldar
0e80e57aa5
rand.dist: add exponential distribution function and unit tests (#9402) 2021-03-21 13:04:43 +02:00
Alexander Medvednikov
4d77f3810f gc: enable on macos and add leak detection fns 2021-03-21 05:31:10 +03:00
spaceface
5873149c77
builtin: allow libgc to be used on windows as well (#9393) 2021-03-21 01:01:21 +01:00
yuyi
246c09db96
checker: fix generics in big_struct (fix #9373) (#9383) 2021-03-20 17:29:13 +01:00
zakuro
f9bbc119aa
checker: make optional arguments in func call an error (#9362) 2021-03-20 17:27:16 +01:00
zakuro
c8416f9a54
all: deprecate write_str and replace it with write_string (#9369) 2021-03-20 17:25:51 +01:00
Larpon
b7a0c44f39
builder: allow running symlinked .vsh files (#9385) 2021-03-20 17:25:09 +01:00
Delyan Angelov
517c1841c1
time: fix .sleep() with -gc boehm 2021-03-20 16:24:46 +02:00
Delyan Angelov
8810af76df
all: support -gc boehm on systems with libgc-dev installed (#9382) 2021-03-20 14:16:36 +01:00
Delyan Angelov
a6ddd24f5c
v.embed_file: add .to_string() and .to_bytes() utility methods 2021-03-20 09:30:38 +02:00
zakuro
e3c0f305b2
os: deprecate os.File.write_bytes and add os.File.write_ptr (#9370) 2021-03-20 09:02:28 +02:00
yuyi
ead0dff55a
cgen: fix return if_guard expr (#9375) 2021-03-20 03:53:47 +01:00
spaceface
3f9e921c95
builtin: add a proper str() method to IError (#9379) 2021-03-20 01:55:16 +02:00
penguindark
59f95170b3
regex: bug fix in replace using function, added tests (#9381) 2021-03-20 01:54:12 +02:00
Delyan Angelov
b0e225ac2d
dl: fix v -cflags "-Werror" use_test.v 2021-03-19 23:27:14 +02:00
Delyan Angelov
a386be6505
v.table: correct table.types to table.type_symbols 2021-03-19 22:51:52 +02:00
Delyan Angelov
4a12546971
cgen,fmt: improve sizeof(), fix type PPType = &&Type 2021-03-19 22:49:46 +02:00
Delyan Angelov
c5884a5f4d
v.ast: improve Expr.str() for sizeof(Type) 2021-03-19 20:56:49 +02:00
zakuro
95a748e8b0
checker: cleanup call_method (#9365) 2021-03-19 14:19:38 +02:00
Delyan Angelov
4f6306f6d4
examples: fix v -cflags "-Werror" test examples/ 2021-03-19 13:13:56 +02:00
Lukas Neubert
82c4daa4b7
fmt: fail keep test when bin2v_keep preparation step fails (#9361) 2021-03-19 13:13:03 +02:00
Emeric MARTINEAU
125236694f
cli: improve multiple value management (#8310) 2021-03-19 13:09:56 +02:00
zakuro
29884fa2a9
os: deprecate read_at and add read_from to implement RandomReader (#9371) 2021-03-19 12:35:08 +02:00
Lukas Neubert
f8fcf3ff66
fmt: reorder and sort methods into section (#9363) 2021-03-19 11:26:34 +02:00
Delyan Angelov
04095f4088
ci: fix failing v -W build-tools and v -W build-examples; run vfmt. 2021-03-19 09:49:26 +02:00
Delyan Angelov
ea3d1405ee
ci: fix failing -Werror job with tcc 2021-03-19 09:34:41 +02:00
JalonSolov
9ea88c090b
os: fix warning write_str -> write_string (#9368) 2021-03-19 03:36:27 +01:00
Alexander Medvednikov
bb79df932b net/os: deprecate write_str() in favor of write_string() 2021-03-19 04:51:31 +03:00
Delyan Angelov
8fa7e67000
builtin: use return s.clone() instead of return s consistently, to make manual free easier 2021-03-18 22:23:36 +02:00
Delyan Angelov
00651c8deb
builtin: free all elements in a []string with -autofree too 2021-03-18 21:10:42 +02:00
Delyan Angelov
d4e16b6ddd
builtin: reduce memory allocations for s.trim, s.trim_left and s.trim_right 2021-03-18 19:52:33 +02:00
Delyan Angelov
09802707b1
tests: move rlock and shared array tests from builtin to sync 2021-03-18 19:51:11 +02:00
Delyan Angelov
b7a5fa7fbe
os: fix v -cflags "-Werror" test vlib/os/ 2021-03-18 19:45:04 +02:00
Miccah
7222ee476b
all: implement array .any and .all (#9347) 2021-03-18 15:24:16 +01:00
spaceface
624c1f3bcf
cgen: make bools take up a single byte, not 4 (#9352) 2021-03-18 15:23:29 +01:00
zakuro
4ae2c22c18
checker: make optional array element an error (#9343) 2021-03-18 15:11:51 +02:00
yuyi
a6c2c5ba88
parser: minor cleanup in call_args() (#9344) 2021-03-18 15:06:48 +02:00
Swastik Baranwal
f28e67d526
cmd/tools/v/vdoc: keep _ sep in numeric literals and highlight modules properly (#9358) 2021-03-18 15:06:16 +02:00
Ned Palacios
eccf707270
vdoc: improve error message for non-existing symbols (#9359) 2021-03-18 15:04:53 +02:00
Delyan Angelov
7bbcf02134
ci: fix failing -Werror steps for code generated by json.encode(map{'a': []string{}}) 2021-03-18 12:13:06 +02:00
Delyan Angelov
f7a8a460f6
v.parser: add a test for db46ad5 2021-03-18 11:31:17 +02:00
Delyan Angelov
db46ad5481
v.parser: fix xxx.fncall(map{x: []string{}}) treatment as []xxx.string{} 2021-03-18 11:07:25 +02:00
Alexander Medvednikov
4e62bc0b81 autofree: fix free before return 2021-03-18 05:41:50 +03:00
Alexander Medvednikov
88097125f7 checker: remove "use ++ instead of += 1" 2021-03-18 01:37:36 +03:00
zakuro
6cfc2c217b
checker: fix #9330 (#9342) 2021-03-17 20:57:14 +02:00
Lukas Neubert
49eeddcd1c
parser: set correct last line for struct inits (#9349) 2021-03-17 20:46:08 +02:00
Lukas Neubert
0a06a83d9b
fmt: fix possible removal of PrefixExpr or blocks (#9351) 2021-03-17 20:43:28 +02:00
Delyan Angelov
e8df8bc8c3
ci: fix for -autofree vlib/v/tests/option_test.v 2021-03-17 14:44:45 +02:00
Delyan Angelov
99cc02685b
cgen: implement IError.free() and use it for the builtin none const 2021-03-17 12:38:24 +02:00
Delyan Angelov
ae401bd930
ci: fix the ./v -g -autofree -o v2 cmd/v step 2021-03-17 09:48:56 +02:00
crthpl
fafb035fb5
all: reimplement inline assembly (#8645) 2021-03-17 01:43:17 +01:00
yuyi
dd9f9c2718
checker: check array.sort(a < b) (#9321) 2021-03-17 01:42:51 +01:00
ka-weihe
2991cad4e8
map: fix delete in for-in (#9336) 2021-03-17 01:42:33 +01:00
Alexander Medvednikov
149151b1e8 cgen: minor vfmt 2021-03-17 03:41:52 +03:00
Alexander Medvednikov
091a1bab27 autofree: free global map consts and some vweb fixes 2021-03-17 01:33:35 +01:00
shadowninja55
b4f7a975e8
builtin.string: optimize string.count where substr.len == 1 (#9337) 2021-03-17 00:19:48 +02:00
Enzo
4b6244c9c1
gen: fix generic variadic (#9333) 2021-03-17 00:18:43 +02:00
Lukas Neubert
05b51c5b01
parser: correctly set pos of sql blocks (#9334) 2021-03-16 23:00:50 +02:00
Delyan Angelov
1753445a64
builtin: make panics more IDE friendly 2021-03-16 20:50:11 +02:00
Lukas Neubert
e554415123
fmt: allow ascii art block comments (#9332) 2021-03-16 20:49:55 +02:00
shadowninja55
d92f9e77b0
builtin.string: optimize string.split_nth() for len == 1 delim (#9325) 2021-03-16 20:30:27 +02:00
JalonSolov
6f550ebbdc
string: fix fields method when no whitespace (#9326) 2021-03-16 19:45:27 +02:00
Delyan Angelov
0547a0a9cd
ci: comment the dump(fixed_array) call in crypto_rand_read_test.v 2021-03-16 12:04:50 +02:00
Delyan Angelov
c09e85fa90
crypto.rand: add a test for rand.read/1 2021-03-16 11:37:05 +02:00
Delyan Angelov
0363206bac
crypto.rand: correct the error message in the shim 2021-03-16 11:25:59 +02:00
Delyan Angelov
5777706a58
crypto.rand: add a shim for fn read(bytes_needed int) ?[]byte in rand_default.c.v, so that it shows with v doc 2021-03-16 11:23:50 +02:00
Delyan Angelov
506561c792
cgen: fix a bug (deleting a map key while iterating on the same map) detected by -d debug_realloc 2021-03-16 09:20:45 +02:00
Alexander Medvednikov
93df560cf9 builtin: deprecate string.split_by_whitespace in favor of fields() 2021-03-16 08:29:14 +03:00
Alexander Medvednikov
138da8e130 stbi/sokol: fix png loading bug 2021-03-16 01:39:35 +03:00
Alexander Medvednikov
852d302b87 io: BufferedReader.free() 2021-03-15 21:25:19 +01:00
Alexander Medvednikov
667a26335f builtin: fix substr() 2021-03-15 21:16:23 +01:00
Alexander Medvednikov
77d5fcca59 urllib: a temporary autofree fix 2021-03-15 21:12:11 +01:00
Leah Lundqvist
0823ea4af1
builder: produce an iOS binary instead of a bundle (#9316) 2021-03-15 19:03:05 +01:00
Delyan Angelov
7f0c8d1eec
builtin: fix a compilation warning with -d debug_malloc 2021-03-15 17:37:06 +02:00
Nick Treleaven
446631ceb5
checker: fixed array cannot implicitly convert to fooptr (again) (#9302) 2021-03-15 15:55:07 +02:00
Uwe Krüger
9d168895ed
checker: check write access to shared elements of struct and array (#9314) 2021-03-15 15:54:06 +02:00
Anton Zavodchikov
1ad4623fb8
tmpl: move to v/parser (#9052) 2021-03-15 13:35:55 +02:00
yuyi
2d2e4610e7
cgen: make use of mut_rec in method consistent (#9308) 2021-03-15 12:22:52 +02:00
yuyi
e235022e10
cgen: fix error of for_in map_literal (#9310) 2021-03-15 12:22:32 +02:00
Delyan Angelov
3951c351c6
os: simplify Process (remove chainability of Process method calls) 2021-03-15 09:23:43 +02:00
Delyan Angelov
25c07c2f43
v.ast: handle more expressions in Expr.str() 2021-03-15 06:27:56 +02:00
zakuro
80ac1aaf93
fmt: use type_to_str_using_aliases (#9306) 2021-03-15 06:27:08 +02:00
yuyi
945769a4f6
all: implement reference receiver optimization for big structs (#9268) 2021-03-14 18:11:21 +01:00
StunxFS
92e95f127a
checker: correct type check for generic function with ternary if return (#9296) 2021-03-14 19:01:32 +02:00
yuyi
e677daf608
cgen: fix array_sort and format array_filter/map generated codes (#9303) 2021-03-14 18:47:43 +02:00
Delyan Angelov
2f4a49994a
builtin: implement support for -d debug_malloc too 2021-03-14 18:29:00 +02:00
Delyan Angelov
d65ad68e77
builtin: add 0 terminators for strings returned by .to_lower, .to_upper, utf32_to_str_no_malloc/2 2021-03-14 18:21:45 +02:00
Delyan Angelov
b6d089b605
v.depgraph: ensure v -d debug_realloc -o v cmd/v works 2021-03-14 16:15:33 +02:00
Enzo
db152868c0
fix: fix infering int and float literal in generic fn calls (#9287) 2021-03-14 15:00:47 +02:00
yuyi
c0779e8455
cgen: fix return_statement generated redundant ; (#9299) 2021-03-14 14:58:17 +02:00
Delyan Angelov
125be84e3d
builtin: fix -d debug_realloc, add realloc_data/3 2021-03-14 14:54:35 +02:00
Delyan Angelov
ddbe57e00a
v test-cleancode: ensure more .v files are kept vmft-ed 2021-03-14 12:17:31 +02:00
spaceface
eebc8a9d7a
builtin: cleanup option names (part 2) (#9294) 2021-03-14 12:11:52 +02:00
zakuro
8dc0e4d150
v.scanner: decode \uXXXX in scanner (#9298) 2021-03-14 12:09:17 +02:00
Delyan Angelov
69f1e7c9c3
v: fixes for v -autofree -o v2 cmd/v 2021-03-14 09:37:38 +02:00
Leah Lundqvist
64d0006ff9
jsgen: fix string and array for loops and improve casting (#9295) 2021-03-14 08:20:01 +02:00
Nick Treleaven
df46fe1373
builder: warn when using tcc with -prod (#9288) 2021-03-14 01:55:14 +01:00
spaceface
9ed9e7aff0
builtin: cleanup option names (part 1) (#9293) 2021-03-14 01:54:46 +01:00
yuyi
5a6b321656
cgen: format if_guard_expr generated c codes (#9290) 2021-03-14 01:54:05 +01:00
spaceface
e9797c618a
all: implement error interfaces (#9291) 2021-03-13 18:13:50 +01:00
Alexander Medvednikov
167dcc415d tests: fix a generic init test 2021-03-13 18:46:02 +03:00
Alexander Medvednikov
f86233c41f autofree: fix [manualfree] 2021-03-13 18:43:02 +03:00
Alexander Medvednikov
2f1810634e checker: do not allow direct initialization of builtin types (s := string{}) 2021-03-13 18:20:46 +03:00
Lukas Neubert
f648e3f10d
fmt: use iembed cmts in arrays at line start when exprs come afterwards (#9285) 2021-03-13 09:58:50 +02:00
Ulises Jeremias Cornejo Fandos
5e02f6358c
math: add a test suite taken from vsl/vmath (#9280) 2021-03-13 09:05:02 +02:00
Nick Treleaven
c06e58d418
gen: fix generating $if expr || expr (#9270) 2021-03-13 08:45:50 +02:00
Lukas Neubert
fecf4a6f58
os: fix rmdir_all panic with hidden dirs (#9271) 2021-03-13 08:43:38 +02:00
Andréas Livet
603012be94
gg: add draw_image_part (#9277) 2021-03-13 08:39:10 +02:00
Vitalie Lazu
cccca51788
pg: support for copy sql commands (#9272) 2021-03-13 08:06:53 +02:00
zakuro
00dedaf6c1
scanner: replace ascii unicode(\u0020) with hex(\x20) (#9259) 2021-03-13 08:02:42 +02:00
Subhomoy Haldar
08da33fa5a
rand: add non uniform distributions in the rand.dist module (#9274) 2021-03-12 21:24:43 +02:00
Delyan Angelov
0c33656a19
ci: fix failing option_print_errors_test.v 2021-03-12 20:36:19 +02:00
spaceface
be409b52e9
builtin: prepare for error interfaces (#9043) 2021-03-12 20:05:05 +02:00
Delyan Angelov
c474106511
cgen: fix match expression with complex boolean conditions 2021-03-12 19:55:33 +02:00
StunxFS
3cb1bb7c36
checker: check the amount of parameters passed to json.decode() (#9267) 2021-03-12 19:02:09 +02:00
StunxFS
90d942e2ec
os: add missing '.exe' in os_test.v (#9269) 2021-03-12 18:05:29 +02:00
Nick Treleaven
9db8a61b92
checker: disallow array append in an expression (#9265) 2021-03-12 16:09:01 +01:00
Uwe Krüger
dbbf96702b
checker: require shared a to be rlocked to read a[i] or a.e (#9266) 2021-03-12 16:08:39 +01:00
Delyan Angelov
def53fd73f
os: prevent os.exists_in_system_path() from panicing 2021-03-12 17:05:26 +02:00
Delyan Angelov
995db65471
os: fix os.cp_all, by making the dst folder, if it does not exist already 2021-03-12 16:29:27 +02:00
Nick Treleaven
e229d0c1c3
checker: improve error message for invalid property (#9263) 2021-03-12 14:18:52 +02:00
Nick Treleaven
3be78d6777
parser: require anonymous fn to use _ for unused parameters (#9262)
Fixes a C error with gcc.
2021-03-12 14:17:37 +02:00
yuyi
504b87bcfd
checker: minor cleanup in if_expr() (#9258) 2021-03-12 13:40:05 +02:00
Lukas Neubert
cfbb783649
fmt: fix linebreak in non-block consts (#9260) 2021-03-12 12:27:05 +02:00
Lukas Neubert
a67d49050c
math: add a pure V math.mathutil, with generic min, max and abs functions (#9176), and use it consistently 2021-03-12 11:28:04 +02:00
Alexander Medvednikov
530b981765 vweb: mark send_response_to_client with [manualfree] 2021-03-12 01:11:43 +03:00
Lukas Neubert
c40ab0db72
fmt: fix removal of attrs with comments afterwards (#9255) 2021-03-11 21:44:33 +01:00
StunxFS
04c4f16f75
checker: minor changes to Checker.hash_stmt() (#9249) 2021-03-11 21:43:42 +01:00
StunxFS
8f08795689
checker: warn/error about empty const blocks (#9252) 2021-03-11 21:43:04 +01:00
yuyi
9fbb139e29
checker: check map copy error in fn_mut_arg (#9242) 2021-03-11 15:19:36 +01:00
Miccah
f26d2f02b7
ast, cgen, checker, parser: support method arguments in comptime $for (#9208) 2021-03-11 15:04:34 +02:00
StunxFS
8de6511056
cgen: minor optimization to for ch in "StringLiteral" (#9240) 2021-03-11 15:01:53 +02:00
yuyi
a547e889af
checker: check array literal modify error (#9243) 2021-03-11 14:57:04 +02:00
Lukas Neubert
f69cef397c
fmt: do not insert a space before struct declaration generics (#9239) 2021-03-11 14:54:40 +02:00
spaceface
7d0cba5e96
v.ast: remove the stmt.position() method (#9233) 2021-03-11 14:50:02 +02:00
Delyan Angelov
6628bbc690
cgen: use the new __offsetof_ptr macro 2021-03-11 13:14:36 +02:00
Delyan Angelov
144546543c
cgen: add the __offsetof_ptr C macro 2021-03-11 13:08:45 +02:00
Delyan Angelov
5a231326d7
parser: improve syntax errors in module declarations 2021-03-11 10:42:36 +02:00
StunxFS
6a7ef4f5b2
v.scanner: fix position of hash statements (#9222) 2021-03-10 20:23:17 +02:00
penguindark
c554e0b33d
gg.m4: fix a bug on translate, remove abs fn (#9224) 2021-03-10 20:20:17 +02:00
zakuro
f280a5c230
checker: extract into call_array_builtin_method to cleanup (#9225) 2021-03-10 20:19:39 +02:00
zakuro
ef73e07e62
checker: split fn_decl into functions to cleanup (#9226) 2021-03-10 20:18:48 +02:00
zakuro
791dec7b01
v: support $if prod (#9228) 2021-03-10 19:26:34 +02:00
Enzo
99abd46ac9
os: add (read|write)_raw[_at] to File (#9171) 2021-03-10 18:45:12 +02:00
Swastik Baranwal
8d84206a8c
cgen: fix match for one branch (#9234) 2021-03-10 18:44:32 +02:00
spaceface
eefdad21c7
cgen: cleanup interface/sumtype casts (#9221) 2021-03-10 18:41:11 +02:00
Larpon
0a39c2b9ea
gg: expand C.ANativeActivity struct definition (#9231) 2021-03-10 18:38:20 +02:00
yuyi
a187a4abb3
checker: check non-optional fn return or_block (#9227) 2021-03-10 12:53:23 +01:00
Delyan Angelov
0d2bb714bc
checker: disallow x := [13]SumType{} too 2021-03-10 11:07:36 +02:00
Delyan Angelov
f5ebfefdc9
ci: use a smaller fixed size array for the const eval test (fixes failing windows job) 2021-03-10 10:40:41 +02:00
Joe Conigliaro
fd2845e955
v.util: change naming behaviour for modules relative to working dir. closes #9138 2021-03-10 16:28:06 +11:00
Delyan Angelov
96a9e16e64
checker: allow a := [5*kb]byte{} where kb is a compile time known const too 2021-03-09 20:21:36 +02:00
Delyan Angelov
26cfd0eda9
checker: eval const a = 1024 * 1024 and other simple integer expressions at compile time 2021-03-09 20:07:08 +02:00
spaceface
f1469a8761
checker: allow accessing fields common to all sumtype members (#9201) 2021-03-09 19:16:18 +02:00
yuyi
c4b0fdcbaf
cgen: fix for_in fixed_array of fixed_array literal (#9206) 2021-03-09 16:18:07 +02:00
yuyi
e67ce5ea7b
cgen: fix error of alias interpolation (#9209) 2021-03-09 13:25:31 +02:00
Ned Palacios
114a7db6e5
vdoc: fix symbol filtering (#9210) 2021-03-09 13:05:50 +02:00
zakuro
00399b49ab
v.util: add util.tabs() (#9211) 2021-03-09 13:03:25 +02:00
yuyi
fbc02cbc54
csv: fix reader_test.v (#9204) 2021-03-09 03:53:02 +01:00
Vassilis Panagiotopoulos
b893373e63
cgen: make .alias fields in structs use their proper string format, instead of the default %d (#9197) 2021-03-08 23:36:59 +02:00
Delyan Angelov
d7049ae2da
os: deprecate os.exec (returning ?os.Result), in favour of os.execute, which returns os.Result (#8974) 2021-03-08 20:52:13 +02:00
yuyi
10c9f61d61
checker: check empty map invalid syntax (fix #9162) (#9186) 2021-03-08 19:48:17 +02:00
StunxFS
9a7d9e047b
dl: move 'example' to 'examples/dynamic_library_loading' (#9187) 2021-03-08 18:21:43 +02:00
Taegon Kim
4d24cb0158
darwin: fix the C. function declarations (#9194) 2021-03-08 17:18:26 +02:00
yuyi
b64d781a20
csv: fix error of read() (#9193) 2021-03-08 16:57:02 +02:00
yuyi
568faeed77
cgen: add `expr_string() and remove redundant codes (#9188) 2021-03-08 12:46:39 +02:00
yuyi
f2e570d63c
tests: add for tests of labelled continue and break (#9189) 2021-03-08 12:45:12 +02:00
Delyan Angelov
33bd22eda9
vlib/v/gen/tests: remove obsolete generation tests (used during the AST migration from v1 to v2) 2021-03-07 18:47:58 +02:00
pancake
ed9ca0b7bd
build: add address sanitizer make target (#9044) 2021-03-07 16:44:54 +01:00
zakuro
4c3ce97763
parser: fix Enum.value when Enum is an imported symbol (#9046) 2021-03-07 16:44:38 +01:00
Miccah
a1e0f2bc46
gen: add argument names to compile-time method struct (#9174) 2021-03-07 14:28:43 +01:00
yuyi
1b47e2953d
checker: check undefined ident of struct (#9164) 2021-03-07 14:09:38 +01:00
Delyan Angelov
f1c4e962f4
tests: add tests for -d debug, -cg, -g in combination for [if debug]fn etc 2021-03-07 12:42:30 +02:00
Delyan Angelov
64bc2fb40a
v: fix [if debug] fn abc(){} ... abc() 2021-03-07 12:05:07 +02:00
Delyan Angelov
c15de57f0f
tests: simplify the profile_test.v example program to not use net
(avoids unrelated openssl dependency)
2021-03-07 12:05:06 +02:00
Delyan Angelov
d0b89c5675
tests: rename for_c_multi_vars.v to for_c_multi_vars_test.v 2021-03-07 12:05:06 +02:00
nyx-litenite
a902178fdb
arrays: implement python-inspired array zip function and test (#8667) 2021-03-07 11:58:13 +02:00
yuyi
82085b0140
cgen: fix for_in map of fixed_array (#9133) 2021-03-07 11:41:08 +02:00
zakuro
45d51c76da
v.util: add an iabs(x) helper (#9172) 2021-03-07 11:24:05 +02:00
Lukas Neubert
6048d0e974
fmt: fix backslash doubling in attribute string args (#9175) 2021-03-07 09:44:58 +02:00
Lukas Neubert
053d6870d2
fmt: respect user choice of empty lines between type declarations (#9135) 2021-03-06 21:05:55 +02:00
Lukas Neubert
fdcfe397d4
fmt: write empty or blocks the same as empty fn bodies, empty structs, etc (#9136) 2021-03-06 21:04:51 +02:00
Lukas Neubert
043c29cf95
fmt: fix string interpolation with CastExpr (#9137) 2021-03-06 20:47:19 +02:00
Bartimus
ce92bf8da0
os.File: add .read_struct_at and .write_struct_at (#9114) 2021-03-06 20:44:53 +02:00
zakuro
7333b1706c
checker: minor cleanup: clear_flag(.optional) in check_expr_opt_call (#9139) 2021-03-06 20:42:34 +02:00
zakuro
b83530e0ed
fmt: extract part of fmt.v into struct.v (#9141) 2021-03-06 20:40:44 +02:00
Lukas Neubert
7f7f9dca6b
parser,fmt: fix regression with non-void arrays in if conditions (#9161) 2021-03-06 20:39:38 +02:00
Delyan Angelov
849cde245c
v: support dump(expr) (#9160) 2021-03-06 18:09:28 +01:00
penguindark
270df58057
gg.m4: fixed some bugs, added ortho projection (#9140) 2021-03-06 12:14:43 +02:00
yuyi
c802515e71
cgen: minor optimization in gen_code buffer init (#9143) 2021-03-06 12:03:38 +02:00
R cqls
204f57d227
os: update C apis used in os_android.c.v (#9134) 2021-03-05 19:20:11 +02:00
Larpon
07a1a9b84d
builtin: use fprintf to print to stderr on Android (#9130) 2021-03-05 19:12:42 +02:00
Delyan Angelov
fa530683c7
v: fix warnings for v self 2021-03-05 17:24:00 +02:00
Alexander Medvednikov
845e8decce x64: basic mach-o and arm64 support 2021-03-05 17:52:39 +03:00
Joe Conigliaro
818be80581
parser: fix [] in if expr. closes #9131 2021-03-06 01:43:34 +11:00
joe-conigliaro
2d73411396
checker: define missing C fn args & check C & JS args (#8770) 2021-03-05 17:41:11 +03:00
Lukas Neubert
ead2ba6004
fmt: proper single line check for ConcatExpr (#9121) 2021-03-05 15:36:49 +03:00
yuyi
cbbfb460a7
cgen: fix for_in fixed_array (#9129) 2021-03-05 15:35:09 +03:00
zakuro
9ba312066e
fmt: extract type decls code into functions to cleanup (#9126) 2021-03-05 15:34:51 +03:00
Delyan Angelov
0f042124cb
tests: support fn test_fn() ? { opt()? } 2021-03-05 14:18:21 +02:00
yuyi
f4c03e8ed8
cgen: minor optimization in for_in_array (#9127) 2021-03-05 07:58:09 +02:00
Lukas Neubert
80356edd8c
fmt: combine simple attributes into a single line (#9120) 2021-03-05 07:17:57 +02:00
Gal Pasternak
208cabc994
checker: fix generic type ignores implemented interface (#9124) 2021-03-05 06:59:18 +02:00
Alexander Medvednikov
7446d8dc44 strings: test Builder's cut_last on windows 2021-03-04 20:35:17 +03:00
Miccah
709d7460de
vweb: refactor form parsing and add tests (#9051) 2021-03-04 18:00:03 +02:00
Delyan Angelov
6da66226e5
vfmt: keep mut: in interface declarations (#9053) 2021-03-04 15:30:30 +02:00
zakuro
4f02da00ba
checker: check arguments count of sort (#9105) 2021-03-04 15:22:47 +02:00
Leah Lundqvist
65e888230a
jsgen: object equality checks, optimise casting and start builtin implementation (#9068) 2021-03-04 14:02:16 +01:00
Delyan Angelov
5e0e44eb69
os: move file methods to vlib/os/file.c.v, document them, add new file.read_struct and file.write_struct and tests 2021-03-04 14:54:39 +02:00
yuyi
6097045b46
cgen: minor cleanup of cgen.v (#9108) 2021-03-04 14:40:57 +02:00
pancake
c65d65a3f5
v: use dash instead of lowerdash for -print-v-files (#9111) 2021-03-04 14:38:05 +02:00
Delyan Angelov
eb1e1afbc1
ci: fix failing fn_trailing_arg_syntax_keep.vv 2021-03-04 13:05:14 +02:00
yuyi
7c893895d8
cgen: minor cleanup in infix_expr() (#9086) 2021-03-04 12:50:18 +02:00
zakuro
6b2c7fd53e
fmt: remove tail space when using multiline short arg (#9110) 2021-03-04 12:44:50 +02:00
Lukas Neubert
8ce53b8b55
fmt: prevent code corruption with struct update syntax as trailing function arg (#9091) 2021-03-04 12:44:17 +02:00
Lukas Neubert
28fc91acb7
fmt: minor cleanups (#9090) 2021-03-04 12:43:11 +02:00
spaceface
7663f826e5
cgen: add auto str method generation for interfaces (#9095) 2021-03-04 12:41:42 +02:00
yuyi
5f9af3f594
cgen: fix for_in array of fixed_array (fix #9098) (#9099) 2021-03-04 12:39:39 +02:00
zakuro
5b041db442
fmt: don't prepend mod when cast with selective imported types (#9109) 2021-03-04 12:33:52 +02:00
James Addison
a64d9b3e12
termui: add show_cursor() and hide_cursor() (#9087) 2021-03-04 12:31:26 +02:00
zakuro
9bb073580e
checker: replace checking type exists with c.ensure_type_exists (#9100) 2021-03-04 12:28:48 +02:00
yuyi
2870a5a63a
vrepl: fix array_filter (#9104) 2021-03-04 12:24:14 +02:00
yuyi
2b9ffbda42
cgen: fix array_sort by different order of a/b (#9106) 2021-03-04 11:19:02 +01:00
Larpon
d08f994e19
clipboard: ensure public method access after #9062. Fixes #9089 (#9107) 2021-03-04 10:49:40 +02:00
Delyan Angelov
2bfa6dfe2f
io: fix not reading the last byte of a stream with .read(mut buf) 2021-03-04 08:59:48 +02:00
Lukas Neubert
0f8f8bd90d
fmt: force empty lines after struct declarations and most functions (#9096) 2021-03-03 23:56:40 +01:00
Enzo
3e5a0dfc94
time: minor cleanup of operators (#9097) 2021-03-03 23:56:14 +01:00
yuyi
822d20d2cc
cgen: minor simplification of struct zero init (#9085) 2021-03-03 16:03:50 +01:00
Patrick Hintermayer
38495da07e
docs: add a basic vweb getting started example (#9073) 2021-03-03 14:39:04 +02:00
yuyi
6825b4cb30
cgen: format if_expr generated c codes (#9084) 2021-03-03 14:33:00 +02:00
Subhomoy Haldar
a5dd7faf3c
rand: add PRNG interface and unit-tests (#9083) 2021-03-03 13:41:00 +02:00
Nick Treleaven
412c17ccda
checker: check private built-in methods are not accessible (#9062) 2021-03-03 11:12:50 +02:00
Nick Treleaven
bd6693efb8
gg/m4: fix unnecessary uses of [direct_array_access], add [unsafe] (#9059) 2021-03-03 10:20:13 +02:00
Lukas Neubert
460e06b9ff
fmt: do not insert a newline before returned $vweb.html() (#9063) 2021-03-03 10:14:05 +02:00
yuyi
97f9abcf82
cgen: fix anon_fn in containers (#9077) 2021-03-03 10:12:08 +02:00
Uwe Krüger
dd475f4e37
checker/cgen: enable IfGuardExpr for a[k] and <-ch (#9065) 2021-03-03 10:10:38 +02:00
StunxFS
dad7c40306
checker: minor cleanup in call_method (#9066) 2021-03-03 10:07:16 +02:00
Delyan Angelov
094936d764
ci: reduce chances of false positives from vweb_test.v on macos 2021-03-03 10:04:12 +02:00
zakuro
c74fa9e471
checker: correct pos for type error of if v is interface (#9080) 2021-03-03 09:23:39 +02:00