Uwe Krüger
84fa1ae444
boehm-gc: support a `[keep_args_alive]` tag for C functions ( #9641 )
2021-04-09 13:13:49 +03:00
Delyan Angelov
e93a52a267
builtin: add support for '-d static_boehm -gc boehm' (only for macos and linux for now)
2021-04-08 19:17:04 +03:00
Lukas Neubert
1d5ed89138
fmt: remove trailing space in comments ( #9620 )
2021-04-07 15:25:11 +02:00
Alexander Medvednikov
66d3917554
builtin: fix C++ compilation
2021-04-07 15:25:45 +03:00
ka-weihe
bca9409192
map: wrap up delete fix ( #9626 )
2021-04-07 14:12:12 +02:00
Alexander Medvednikov
ff9837386a
Revert "map: wrap up delete fix ( #9601 )"
...
This reverts commit cbcc0d34b5
.
2021-04-07 03:40:43 +03:00
Delyan Angelov
db84d5e221
os: cleanup os.environ implementation
2021-04-06 18:02:12 +03:00
ka-weihe
cbcc0d34b5
map: wrap up delete fix ( #9601 )
2021-04-06 15:57:08 +02:00
Alexander Medvednikov
de5e603248
builtin: fix a warning in backtrace() on windows (msvc)
2021-04-06 02:52:54 +03:00
Delyan Angelov
5f07c583fb
ci: fix build-vc job (use more precise C.fprintf declaration)
2021-04-05 22:24:17 +03:00
Delyan Angelov
1899845582
ci: fix build-vc job
2021-04-05 22:18:18 +03:00
Delyan Angelov
acb6145d53
ci: final fix for `./v test-all`
2021-04-05 22:13:53 +03:00
Delyan Angelov
291a88bc62
ci: fix some of `v test-cleancode` 4
2021-04-05 21:39:32 +03:00
Delyan Angelov
d11fb8497a
ci: fix some of `v test-cleancode` 3
2021-04-05 21:21:46 +03:00
Delyan Angelov
c0e2b9b1e2
ci: fix some of `v test-cleancode` 2
2021-04-05 20:55:03 +03:00
Delyan Angelov
34aa67b1e8
ci: fix compilation and formatting of sqlite example in docs.md
2021-04-05 08:09:04 +03:00
Delyan Angelov
accd4d83bf
ci: fix compilation
2021-04-04 20:14:51 +03:00
Delyan Angelov
824790a2bd
builtin: simplify println(), use C.write consistently on unix as on windows so that 0 bytes are output also
2021-04-04 19:14:21 +03:00
Alexander Medvednikov
57e6138a61
all: remove byteptr and charptr; replace them with &byte and &char
2021-04-04 17:43:32 +03:00
Delyan Angelov
c698fa1a58
all: support `v -watch run` ( #9577 )
2021-04-04 16:05:06 +02:00
ka-weihe
337e447cfb
map: fix delete (part 1) ( #9579 )
2021-04-04 01:11:47 +02:00
yuyi
7f81702d81
builtin: optimize array sort ( #9570 )
2021-04-03 12:16:18 +02:00
yuyi
3637bac716
cgen: fix rune array sort ( #9561 )
2021-04-02 16:28:27 +02:00
ka-weihe
1a76cb1c36
map: fix misalignment ( #9548 )
2021-04-01 10:39:00 +02:00
Alexander Medvednikov
6f318be96c
checker: do not allow nil sum types init
2021-03-31 11:13:52 +03:00
Uwe Krüger
76dc4cf13f
gc: fix another alignment issue ( #9489 )
2021-03-27 18:59:51 +01:00
Uwe Krüger
3220ab7053
Boehm-GC: fix global `const` handling ( #9477 )
...
* define global `__v_inside_init`
* unset `__v_inside_init` after `_vinit()`
* define `C.GC_MALLOC_UNCOLLECTABLE()`
* allocate uncollectable memory during `_vinit()`
* ci: run test cases with V copiler that uses GC-Boehm itself
* wrap `__v_inside_init` access into `#ifdef _VGCBOEHM`
2021-03-26 16:44:45 +02:00
Alexander Medvednikov
bb5958991c
checker: warn about automatic (de)referencing; freetype: compilation flag fixes
2021-03-26 11:42:51 +03:00
Uwe Krüger
257eadd2e1
gc: add `-gc boehm_leak` for leak detection ( #9464 )
2021-03-25 16:52:33 +01:00
Delyan Angelov
03d56865e3
builtin: do not call C.GC_FREE with -gc boehm
2021-03-25 09:15:01 +02:00
Delyan Angelov
b0878d3a92
builtin,v.pkgconfig: use brew's libgc on macos
2021-03-25 07:28:30 +02:00
zakuro
6bc9ef7373
builtin: vfmt every .v file, except vlib/builtin/int_test.v ( #9448 )
2021-03-24 20:39:59 +02:00
Uwe Krüger
522d70b48d
builtin,cgen: fix -gc boehm issues with maps; add a CI job for it to prevent regressions ( #9453 )
2021-03-24 19:49:16 +02:00
Delyan Angelov
f8f74d8587
builtin: add panic_optional_not_set and use it in cgen for fncall()? in main
2021-03-24 14:13:58 +02:00
Delyan Angelov
7afa4c7e2c
builtin: fix `["abc", "xyz"].str()`
2021-03-23 22:11:32 +02:00
Delyan Angelov
b7c01db1f9
builtin: add .vstring_literal and .vstring_literal_with_len for converting read only strings like os.args
2021-03-23 22:10:28 +02:00
Delyan Angelov
026f8424c2
builtin: fix a leak in string.index_kmp
2021-03-23 21:48:08 +02:00
Delyan Angelov
7f91b75cbc
builtin: fix leaks in `os.execute()` and `[]string{} == []string{}`
2021-03-23 20:36:19 +02:00
Delyan Angelov
d098a3caca
builtin: make string.add() public temporarily till -autofree improves
2021-03-23 20:20:53 +02:00
Delyan Angelov
419ee8ae2a
builtin: fix a bug in `[]string.join()`
2021-03-23 20:14:46 +02:00
Alexander Medvednikov
0c055a1ce9
all: s.contains(s2) instead of `in`
2021-03-23 11:38:56 +03:00
Delyan Angelov
c76c69ec35
all: simplify `return if ...` constructs to make more code compatible with -autofree
2021-03-22 16:45:29 +02:00
yuyi
320cd00203
string: fix replace_each() ( #9415 )
2021-03-22 09:46:45 +01: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
Delyan Angelov
8810af76df
all: support `-gc boehm` on systems with libgc-dev installed ( #9382 )
2021-03-20 14:16:36 +01:00
spaceface
3f9e921c95
builtin: add a proper str() method to IError ( #9379 )
2021-03-20 01:55:16 +02:00
Delyan Angelov
ea3d1405ee
ci: fix failing -Werror job with tcc
2021-03-19 09:34:41 +02: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
spaceface
624c1f3bcf
cgen: make `bool`s take up a single byte, not 4 ( #9352 )
2021-03-18 15:23:29 +01:00
Delyan Angelov
99cc02685b
cgen: implement IError.free() and use it for the builtin `none` const
2021-03-17 12:38:24 +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
shadowninja55
b4f7a975e8
builtin.string: optimize string.count where substr.len == 1 ( #9337 )
2021-03-17 00:19:48 +02:00
Delyan Angelov
1753445a64
builtin: make panics more IDE friendly
2021-03-16 20:50:11 +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
Alexander Medvednikov
93df560cf9
builtin: deprecate string.split_by_whitespace in favor of fields()
2021-03-16 08:29:14 +03: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
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
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
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
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
spaceface
9ed9e7aff0
builtin: cleanup option names (part 1) ( #9293 )
2021-03-14 01:54:46 +01:00
spaceface
e9797c618a
all: implement error interfaces ( #9291 )
2021-03-13 18:13:50 +01: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
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
Miccah
a1e0f2bc46
gen: add argument names to compile-time method struct ( #9174 )
2021-03-07 14:28:43 +01:00
Larpon
07a1a9b84d
builtin: use fprintf to print to stderr on Android ( #9130 )
2021-03-05 19:12:42 +02: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
80356edd8c
fmt: combine simple attributes into a single line ( #9120 )
2021-03-05 07:17:57 +02:00
Leah Lundqvist
65e888230a
jsgen: object equality checks, optimise casting and start builtin implementation ( #9068 )
2021-03-04 14:02:16 +01:00
yuyi
2b9ffbda42
cgen: fix array_sort by different order of a/b ( #9106 )
2021-03-04 11:19:02 +01:00
Delyan Angelov
488848e904
builtin: simplify copy/2
2021-03-02 18:14:42 +02:00
spaceface
b712af56fd
all: bring back `panic(err.msg)` -> `panic(err)` ( #9022 )
2021-03-01 00:18:14 +01:00
zakuro
ce115dcbe0
builtin: correct error underline for unicode wide chars ( #9010 )
2021-03-01 00:18:02 +01:00
spaceface
d63b7bc35a
all: update repo to use the new error handling syntax ( #8950 )
2021-02-28 23:20:21 +03:00
spaceface
b9a381f101
all: migrate to the new Option (p. 1) ( #8924 )
2021-02-28 22:24:29 +03:00
Delyan Angelov
20f9bdfa8e
os: fixes for os.input(), os.get_raw_stdin(), os.get_raw_line() in case of stdin EOF
2021-02-27 20:02:36 +02:00
Nick Treleaven
23f231ee61
builtin: tag array methods unsafe: *_many, grow_len, pointers ( #8983 )
2021-02-26 22:55:09 +01:00
spaceface
8033203ef6
builtin: add an Option2 struct ( #8890 )
2021-02-22 18:44:15 +02:00
Nick Treleaven
15daeaeafa
cgen: add fixed array bounds checking for non-literal index ( #8832 )
2021-02-22 14:54:24 +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
yuyi
9a744b6750
cgen: fix in map_literal ( fix #8868 ) ( #8871 )
2021-02-21 11:54:30 +02:00
Stanislav Ershov
c190b6a131
vlib: remove older deprecated functions ( #8864 )
2021-02-20 20:42:55 +02:00
Stanislav Ershov
6a752512b2
os: fix os.real_path on Windows ( #8822 )
2021-02-19 11:20:06 +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