05st
7555b337b9
cgen: fix expr_as_cast for int/float literals ( #12067 )
2021-10-05 09:53:05 +03:00
playX
8d1ba52d0c
js: fix string.bytes codegen, readline, add tests for `strings` ( #12060 )
2021-10-04 18:28:30 +03:00
yuyi
e94e08475d
cgen: format shared structs ( #12062 )
2021-10-04 18:27:38 +03:00
yuyi
03269f9854
cgen: fix error of reference struct str() ( #12061 )
2021-10-04 09:58:50 +03:00
Larpon
a8c2c419cd
builtin: improve malloc panic messages ( #12054 )
2021-10-03 20:27:46 +03:00
Delyan Angelov
bfb8116623
ci: let process_test.v repeatedly fail 3 times, before consider it failed
2021-10-03 20:26:38 +03:00
yuyi
82e6d6e51d
cgen: fix threads array wait without go calls ( fix #12009 ) ( #12050 )
2021-10-03 18:24:44 +03:00
Larpon
b62520af9e
os: fix rare crash in read_file. Fix #12052 ( #12053 )
2021-10-03 18:24:06 +03:00
Anton Zavodchikov
895daf297f
vweb: router refactor ( #12041 )
2021-10-03 16:26:44 +03:00
Ekopalypse
9be16eba63
v.gen.c: add tests to ensure the same calling convention is used on exported functions for -m32/-m64 ( #11977 )
2021-10-03 15:47:08 +03:00
spaceface
9b6e07e2a6
cgen: support `index` and `in` for sumtype/interface arrays ( #12051 )
2021-10-03 15:44:13 +03:00
yuyi
10caf4a84a
cgen: cleanup generated thread wait code ( #12048 )
2021-10-03 10:52:29 +03:00
playX
9145cd66ec
js: add more tests to builtin/js and implement more builtin functions ( #12049 )
2021-10-03 10:08:21 +03:00
05st
129c81f34d
cgen: implement eq operator for interfaces ( #12047 )
2021-10-03 09:04:05 +03:00
05st
f282e64fe3
arrays: add binary_search, lower_bound, and upper_bound array operations ( #12045 )
2021-10-03 08:14:39 +03:00
Nicolas Sauzede
117091452b
os: workaround `_ = C.pipe(&pipeset[0])` gcc warning `warning: ignoring return value of pipe declared with attribute warn_unused_result` ( #12046 )
2021-10-03 08:09:08 +03:00
05st
86a5e72c74
v.checker: fix return type checking being skipped for mutable method receivers ( #12043 )
2021-10-02 23:26:46 +03:00
Delyan Angelov
02e4aa0f0e
v.checker: fix panic for `a, b, c = fn_returning_several_maps()`
2021-10-02 18:40:35 +03:00
Delyan Angelov
0916806350
ci: do not use htonll and ntohll on windows, use the portable versions instead.
2021-10-02 18:21:16 +03:00
Delyan Angelov
9a4dbc25ca
ci: fix failing conv_test.v on windows
2021-10-02 15:51:48 +03:00
Anton Zavodchikov
4c8094d0d9
net.http: make public errors and parse_form ( #12038 )
2021-10-02 15:28:35 +03:00
Anton Zavodchikov
600880660a
net.http: add a deprecated attribute for un/escape functions ( #12037 )
2021-10-02 15:19:32 +03:00
Delyan Angelov
c86935309e
v.gen.c: fix compilation of `if c_struct_1 != c_struct_2 {`
2021-10-02 15:12:18 +03:00
05st
cc4af235f3
cgen: fix if-expression code generation if it evaluates to propagating optional / or block ( #12032 )
2021-10-02 14:30:04 +03:00
Delyan Angelov
d1d4877348
net.conv: add a test for the nth16/nth32/nth64/htn16/htn32/htn64 functions
2021-10-02 13:26:09 +03:00
playX
82f187e5e0
js: fix `rand` build, properly use key values on map, add `rand.string` ( #12020 )
2021-10-01 21:23:49 +03:00
05st
60ecbec8ea
cgen: fix closure code gen with if statement in definition ( #12028 )
2021-10-01 16:52:34 +03:00
Alexander Ivanov
cb149bfa00
checker: show errors for index calls to values which are not functions, fixes #11539 ( #12024 )
2021-10-01 15:17:02 +03:00
zakuro
ce0867f40c
vfmt: fix removal of selective imported type used in map ( #12030 )
2021-10-01 15:14:21 +03:00
Delyan Angelov
41de0c3c6a
ci: fix `v -cc gcc -cstrict examples/pico/pico.v`
2021-10-01 13:49:38 +03:00
Delyan Angelov
6f7c3a7cdf
ci: do `brew install openssl` on the macos job, reduce flakyness of tcp_test.v
2021-10-01 13:13:05 +03:00
Delyan Angelov
2bdba5ed73
net: fix declarations of C.htonl/C.htons/C.ntohl/C.ntohs in aasocket.c.v
2021-10-01 12:57:47 +03:00
Delyan Angelov
149517ced4
v.builder,v.gen: time Builder.front_stages.parse_files, Builder.resolve_deps, Gen.sort_structs
2021-09-30 20:49:19 +03:00
Alexander Medvednikov
4a6d161c08
orm: postgres fixes
2021-09-30 20:00:27 +03:00
Larpon
8705db5844
toml: fix scanner escape collecting in literal strings ( #12022 )
2021-09-30 16:04:21 +03:00
Alexander Medvednikov
d4b3c65c45
cgen: a minor optimization; checker: a c2v fix
2021-09-30 12:51:53 +03:00
Wertzui123
e3d379a1eb
builtin: add byte.repeat() and rune.repeat() ( #12007 )
2021-09-30 09:32:20 +03:00
Louis Schmieder
f9ceb12e22
checker: fix orm cast check ( #12018 )
2021-09-30 00:43:08 +03:00
Larpon
e3d3727c0c
toml: fix 7 escape tests ( #12017 )
2021-09-29 19:28:09 +03:00
Alexander Medvednikov
c2f535fee1
ci: run the gitly web server test
2021-09-29 19:26:49 +03:00
playX
4333a53f28
js: support running `.js.v` tests in `v test-self`, fixes for array methods & codegen ( #12011 )
2021-09-29 15:33:14 +03:00
Larpon
4ff061927b
toml: easier scanner configuration ( #12016 )
2021-09-29 14:53:06 +03:00
yuyi
f2c710d306
cgen: fix fn mut args with interface type ( #12012 )
2021-09-29 13:54:23 +03:00
yuyi
8789cc422c
v.ast: fix fmt of 'bytestr' to '&byte' ( #12014 )
2021-09-29 13:53:46 +03:00
Larpon
d39fec3479
toml: fix unbalanced quoted tests ( #12006 )
2021-09-29 10:19:49 +03:00
Delyan Angelov
24c1d552d7
ci: vfmt vlib/v/gen/c/cgen.v
2021-09-29 08:58:27 +03:00
André Diego Piske
8dde9d4a7b
cgen: fixes for ... in with index ( #11995 )
2021-09-28 19:35:07 +03:00
yuyi
5d3795e876
cgen: fix the C codegen error for '_ = map[key]' ( fix #11999 ) ( #12000 )
2021-09-28 18:45:50 +03:00
Larpon
bc4aad5fb4
toml: add quote details to ast.Quoted ( #11997 )
2021-09-28 17:40:03 +03:00
Delyan Angelov
87fe15e39f
ci: fix typo
2021-09-28 15:30:05 +03:00
Delyan Angelov
3467ab1551
ci: fix the `g++` build and the `alpine-musl` task
2021-09-28 15:29:00 +03:00
Delyan Angelov
d07a96ede8
v.gen.c: fix `v examples/hello_world.v` on FreeBSD
2021-09-28 12:00:34 +03:00
Delyan Angelov
8f4fe61381
v.pref: only show the `disabling parallel cgen` message when -no-parallel was not given and -prealloc was
2021-09-28 11:52:27 +03:00
Delyan Angelov
97eb0fc74f
ci: workaround linking on macos (missing sem_timedwait)
2021-09-28 11:27:47 +03:00
Delyan Angelov
9e2607db57
sync: rename sync_macos.c.v to sync_darwin.c.v
2021-09-28 11:12:03 +03:00
Delyan Angelov
6b40ead54d
fix `./v -cc g++ run examples/concurrency/concurrency_http.v`
2021-09-28 10:35:02 +03:00
crthpl
85b58b03a3
cgen: parallelize ( #10844 )
2021-09-28 10:28:04 +03:00
Ken
a17b943e87
builtin: add method `byte()` for string ( #11998 )
2021-09-28 10:08:10 +03:00
Ulises Jeremias Cornejo Fandos
c151e075e1
context: update ValueContext to handle Any value and more Key types, use closures ( #11993 )
2021-09-27 17:52:20 +03:00
yuyi
d6a4bce2ef
checker: fix generic array.map with generic callback fn ( #11991 )
2021-09-27 17:50:15 +03:00
Larpon
2ee873d6ca
toml: fix invalid bad-multiline test ( #11996 )
2021-09-27 17:42:20 +03:00
Wertzui123
07d65b2aab
builtin: move byte methods from rune.v to int.v ( #11987 )
2021-09-26 22:34:25 +03:00
czkz
6967a47e07
net.openssl: fix typos in comments ( #11988 )
2021-09-26 22:33:10 +03:00
Delyan Angelov
6a2ef733de
v.parser: add a generated `.all(.flag1|.flag2)` method to `[flag]` enums
...
Unlike `.has(.flag1|.flag2)`, which is true, for any of `.flag1` or `.flag2`,
the new method `.all()` tests whether *all flags* are set at the same time.
2021-09-26 21:40:44 +03:00
Rémi
09dfc3f301
arrays: add a generic `arrays.concat(os.args,'abc','xyz')` function ( #11985 )
2021-09-26 19:41:50 +03:00
yuyi
4c01627e00
cgen: cleanup stmt_path_pos processing ( #11983 )
2021-09-26 15:51:18 +03:00
yuyi
d93737dd34
cgen: fix assign map get to blank ( fix #11508 ) ( #11982 )
2021-09-26 13:07:51 +03:00
Louis Schmieder
6391f3d2da
orm: fix other int types ( #11981 )
2021-09-26 11:17:56 +03:00
yuyi
e09860731f
cgen: fix if expr with complex nested array call ( #11979 )
2021-09-26 07:35:48 +03:00
Larpon
da47638f42
toml: correct documentation ( #11976 )
2021-09-26 07:34:47 +03:00
playX
863dd0b23e
js: array improvements ( #11952 )
2021-09-26 07:33:53 +03:00
penguindark
f3757a7cd1
strconv: float memory leak fix ( #11980 )
2021-09-26 07:33:35 +03:00
yuyi
d329e1decd
cgen: fix if expr with nested array calls ( fix #11953 ) ( #11973 )
2021-09-25 20:38:33 +03:00
Larpon
13b2aa701c
toml: rename ast.Node -> ast.Value ( #11974 )
2021-09-25 20:31:02 +03:00
Anton Zavodchikov
80c15607da
json: assert encoded struct with a sumtype ( #11970 )
2021-09-25 20:29:52 +03:00
Larpon
970768288d
gg: expose sapp_desc.swap_interval via gg.Config ( #11975 )
2021-09-25 15:06:56 +03:00
Miccah
956fdffd96
net.http: allow custom headers in post_multipart_form ( #11971 )
2021-09-25 10:09:49 +03:00
Larpon
5541ec8670
vlib: add toml module + tests ( #11964 )
2021-09-24 21:13:52 +03:00
Ruofan XU
834cf40ab2
cgen, fmt, scanner: fix and use nested lambda in scanner ( #11967 )
2021-09-24 18:21:22 +03:00
Ekopalypse
400ab7876b
ast: fix fixed array typedef generation issue ( #11962 )
2021-09-24 17:01:42 +03:00
Anton Zavodchikov
c75271fcb7
cgen: json sumtype inlining ( #11961 )
2021-09-24 16:49:00 +03:00
yuyi
430677a0c0
cgen: format generated C code of nested array call ( #11955 )
2021-09-23 19:56:12 +03:00
Delyan Angelov
ad58fe8249
ci: mark cancel_test.v with `vtest retry: 3`
2021-09-23 14:55:10 +03:00
zakuro
b354f9ae9a
cgen: fix c error of if-expression when debug mode ( #11950 )
2021-09-23 14:52:32 +03:00
Delyan Angelov
4a0d00fb30
io.util: simplify random number generation in util.v
2021-09-23 14:20:39 +03:00
Delyan Angelov
afc3531945
ci: work around a failing g++ compilation (order of methods in an interface dispatching table matters for C++ compilers)
2021-09-23 14:08:50 +03:00
Delyan Angelov
ece5fa183c
fast.v: freebsd fixes
2021-09-23 13:48:41 +03:00
Delyan Angelov
930b95f76c
v.gen.c: fix uninitialised value usages regression after e5fb4e4
2021-09-23 12:24:03 +03:00
Delyan Angelov
8837712f2b
rand: fix leaks with -autofree
2021-09-23 12:24:03 +03:00
Delyan Angelov
79e33d92f1
v.markused: remove `hash.init()` function (map fn usages are detected more precisely)
2021-09-23 12:24:02 +03:00
trollkarlen
b52f79e137
log: add temporary get_level() ( #11946 )
2021-09-23 12:05:11 +03:00
Alexander Ivanov
4d0f835548
checker: fix detection of invalid insertions, fixes #3600 ( #11945 )
2021-09-23 11:59:43 +03:00
Alexander Medvednikov
27f5c35bde
autofree: test returning optionals
2021-09-23 09:18:01 +03:00
yuyi
b8935551f1
cgen: fix nested array call ( #11948 )
2021-09-23 08:50:37 +03:00
Alexander Medvednikov
7b60367512
autofree: free reference types with -experimental for now
2021-09-23 04:35:09 +03:00
Ruofan XU
52b53f17b2
scanner: clean up scanning of `>` ( #11943 )
2021-09-23 02:24:23 +03:00
Delyan Angelov
bf2569a9a8
all: support `mut volatile x := 123` declarations ( #11940 )
2021-09-22 13:06:30 +03:00
yuyi
76e360ce86
cgen: format the generated C code for array map/filter/all/any methods ( #11936 )
2021-09-22 09:24:36 +03:00
yuyi
e5fb4e4845
cgen: fix if expr with array call ( fix #11557 ) ( #11569 )
2021-09-22 02:21:18 +03:00
Alexander Ivanov
b9720f5d9e
cgen: fix struct init with multiple branches, fixes #11564 ( #11570 )
2021-09-22 00:46:07 +03:00
yuyi
2f3925a0cf
fmt: format vlib/v/token/token.v ( #11568 )
2021-09-21 23:29:53 +03:00
yuyi
de4c0c237b
cgen: fix if infix expr with array.all/any() ( #11567 )
2021-09-21 16:20:41 +03:00
yuyi
108a01d65f
fmt: fix unnecessary line break in array init ( fix #11448 ) ( #11562 )
2021-09-21 16:20:09 +03:00
yuyi
d6fa6a459c
checker: fix generic sumtype method ( #11565 )
2021-09-21 16:19:43 +03:00
ChAoS_UnItY
95136cbfc7
all: add unsigned shift operators ( #11536 )
2021-09-21 14:02:17 +03:00
penguindark
e4bd2306da
sokol: upgrade to latest version, add program icon support ( #11559 )
...
* updated sokol_gfx.h to the last version: 16d7b2e
* merged sokol_app and update enums.v
* added missing icons structs
* try to fixing Mac keyboard problems
* added v patch marker to sokol_app.h
* upgrade for sokol_gl.h, sokol_fontstash.h
* manage sgl_load_default_pipeline
* added load_default_pipeline() for sokol coherence
* vfmt sapp_structs.c.v
Co-authored-by: Delyan Angelov <delian66@gmail.com>
2021-09-21 09:55:06 +03:00
Alexander Medvednikov
f6bdc6b87e
tmpl: fix <div> inside <div>
2021-09-21 07:54:10 +03:00
Enzo
b2ecca3966
all: remove `size_t` ( #11478 )
2021-09-21 02:12:38 +03:00
Alexander Medvednikov
4aa99e4303
tmpl: add a <div> test
2021-09-21 02:11:33 +03:00
Ruofan XU
1430ebc5e3
scanner: cleanup scanning of `>` ( #11558 )
2021-09-21 00:57:05 +03:00
Anton Zavodchikov
d51f8ed878
v.gen.c: use unmangled variant name for encoding sumtype values in json ( #11554 )
2021-09-20 21:19:16 +03:00
ChAoS_UnItY
077c55d0c8
encoding.utf8: add `pub fn is_letter(r rune) bool` ( #11547 )
2021-09-20 21:16:50 +03:00
Delyan Angelov
5cf0ee46b3
v.pref,v.builder: support overriding the C cross compiler by setting `VCROSS_COMPILER_NAME`
2021-09-20 19:57:43 +03:00
El Koulali András
9c4507d115
cgen: fix illegal character encoding with rune consts above 127 ( #11550 )
2021-09-20 10:45:42 +03:00
Delyan Angelov
1de4f1af2e
ci: reduce chance of spurious go_wait_option_test.v failures by retrying it 3 times
2021-09-20 10:32:40 +03:00
05st
f9f4867c25
tmpl: fix $tmpl comptime operation only working in return statement ( #11541 )
2021-09-19 23:22:26 +03:00
Rémi
2534946ead
json: support sumtypes ( #11549 )
2021-09-19 21:36:26 +03:00
Delyan Angelov
7bd145d88a
os,net: cleanup deprecated @VROOT usages
2021-09-19 16:24:24 +03:00
Ruofan XU
b343f19bec
v.scanner: fix ambiguity of two-level generics and shift-right ( #11540 )
2021-09-19 16:22:28 +03:00
Delyan Angelov
76f70d51f3
ci: fix another options_test.v failute, refactor for readability
2021-09-19 08:49:52 +03:00
Delyan Angelov
b5d8c53a0c
v.gen.c: fix the :X string interpolation format for isize/usize on 64bit systems
2021-09-19 05:09:03 +03:00
Alexander Medvednikov
6799f3ac5c
orm: verify column name in updates
2021-09-19 04:49:29 +03:00
Rémi
e76be4ba37
checker: temporary error for optional struct fields ( #11293 ) ( #11534 )
2021-09-18 23:22:24 +03:00
Delyan Angelov
0b4e03ad5c
ci: fix the failing new options_test.v on the `ubuntu` job
2021-09-18 21:10:41 +03:00
Delyan Angelov
6b2cc9c5cf
v.pref: add a simple options_test.v to check for -cflags regressions
2021-09-18 16:08:15 +03:00
yuyi
8501217a4e
cgen: add gen_free_for_type_array/map() ( #11530 )
2021-09-18 15:18:32 +03:00
Delyan Angelov
0a7fb34613
checker: simplify noreturn.v
2021-09-18 13:43:15 +03:00
czkz
396eede4db
math: fix typos ( #11533 )
2021-09-18 12:23:31 +03:00
Delyan Angelov
df8a4a03a0
tests: support `// vtest retry: 4` for marking flaky tests
2021-09-18 11:48:32 +03:00
Delyan Angelov
eec930b86a
os: turn some panics into `return error()`
2021-09-18 10:45:04 +03:00
yuyi
39ad6da506
checker, cgen: generate .free() methods for custom structs automatically ( #11529 )
2021-09-18 09:38:42 +03:00
Delyan Angelov
2eeba4758a
v.builder: fix `-cc msvc -cflags /O2` and support CFLAGS and LDFLAGS env vars
2021-09-18 09:14:21 +03:00
Alexander Medvednikov
219a764a83
autofree: only free user reference types
2021-09-18 06:32:25 +03:00
Alexander Medvednikov
6d47dd22df
autofree: free references
2021-09-18 04:19:16 +03:00
yuyi
44ec8a8cd4
v.fmt, v.gen.js: use 'if foo in [TypeA, TypeB]' in fmt.v and js.v ( #11524 )
2021-09-17 21:59:16 +03:00
Delyan Angelov
bd65ceb463
v.markused: remove __print_assert_failure from all_fn_root_names
2021-09-17 21:47:22 +03:00
Ruofan XU
9180647f99
scanner, fmt: fix multi-level generics ( #11517 )
2021-09-17 21:44:31 +03:00
Alexander Ivanov
30e53c95c7
checker: handle `if _likely_(x is Interface) {` from #11485 ( #11519 )
2021-09-17 21:01:12 +03:00
yuyi
fb75d528eb
builder: remove panics, when cleaning up tmp files after tests ( #11525 )
2021-09-17 20:56:33 +03:00
czkz
816c6c62b5
os: fix documentation typo in args.v ( #11526 )
2021-09-17 20:55:16 +03:00
Vincent Laisney
273154c1ae
math.big: add Newton and Karatsuba algorithms ( #11487 )
2021-09-16 19:31:07 +03:00
yuyi
467afad065
cgen: use `if foo in [TypeA, TypeB]` in cgen.v ( #11518 )
2021-09-16 19:26:53 +03:00
JalonSolov
1688148828
flag: switch panics to optionals ( #11515 )
2021-09-16 19:25:05 +03:00
Delyan Angelov
0a18690a4f
v.gen.c: fix assert `f().len == 1` calling f() twice (closes issue 11501)
2021-09-16 19:01:35 +03:00
playX
c175b4fd48
v.gen.js: refactor code, fix alias codegen, `-stats` now again works with tests on the JS backend ( #11512 )
2021-09-16 14:00:15 +03:00
Miccah
ead5e66afd
net.http: add post_multipart_form function ( #11511 )
2021-09-16 07:34:07 +03:00
Dialga
f295469fac
net.urllib: make unescape() autofree compatible ( #11510 )
2021-09-16 07:09:20 +03:00
yuyi
d5e00b0920
checker, cgen: fix generic arrays sum() ( #11502 )
2021-09-16 07:08:28 +03:00
yuyi
09ded16e3d
checker: use 'if foo in [TypeA, TypeB]' in checker.v ( #11494 )
2021-09-16 07:08:14 +03:00
playX
7d1776b84d
js: equality method generation for V types ( #11503 )
2021-09-16 07:07:48 +03:00