Commit Graph

194 Commits (1b0f09955215b94fff1f86b75b2b5336546e0c36)

Author SHA1 Message Date
crthpl 14434cc86a
all: bare metal support (fix `-freestanding`) () 2021-04-14 07:50:50 +02:00
Uwe Krüger 10bf974cda
all: gc: provide optimized mode () 2021-04-14 00:40:26 +02:00
Delyan Angelov a1121d0eb0
builtin: use 0 instead of `\0` rune when setting C style terminators; use C.memcpy in `[]string{}.join("")` 2021-04-13 11:29:33 +03:00
Lukas Neubert ada763e0f4
fmt: remove parenthesis around single ident () 2021-04-12 16:01:03 +03:00
Delyan Angelov 291a88bc62
ci: fix some of `v test-cleancode` 4 2021-04-05 21:39:32 +03:00
Delyan Angelov accd4d83bf
ci: fix compilation 2021-04-04 20:14:51 +03:00
yuyi 7f81702d81
builtin: optimize array sort () 2021-04-03 12:16:18 +02:00
Delyan Angelov 7afa4c7e2c
builtin: fix `["abc", "xyz"].str()` 2021-03-23 22:11:32 +02:00
Delyan Angelov 7f91b75cbc
builtin: fix leaks in `os.execute()` and `[]string{} == []string{}` 2021-03-23 20:36:19 +02:00
Delyan Angelov 8810af76df
all: support `-gc boehm` on systems with libgc-dev installed () 2021-03-20 14:16:36 +01:00
Delyan Angelov 00651c8deb
builtin: free all elements in a `[]string` with -autofree too 2021-03-18 21:10:42 +02:00
Delyan Angelov 125be84e3d
builtin: fix `-d debug_realloc`, add realloc_data/3 2021-03-14 14:54:35 +02:00
Lukas Neubert 80356edd8c
fmt: combine simple attributes into a single line () 2021-03-05 07:17:57 +02:00
Delyan Angelov 488848e904
builtin: simplify copy/2 2021-03-02 18:14:42 +02:00
Nick Treleaven 23f231ee61
builtin: tag array methods unsafe: *_many, grow_len, pointers () 2021-02-26 22:55:09 +01:00
zakuro f54c1a5cc2
all: add strings.Builder.write_string and use write_string instead of write () 2021-02-22 13:18:11 +02:00
Quix 486bf8517f
builtin: fix typo () 2021-02-15 17:54:07 +02:00
Nick Treleaven ea803113c3
checker: check `unsafe` V function calls () 2021-02-14 19:31:42 +01:00
Bobitsmagic 0f92485698
builtin: fix typo in builtin/array.v () 2021-02-09 17:04:47 +02:00
Larpon 44ab0154b2
builtin: document last of array.v () 2021-02-05 16:51:45 +01:00
Lukas Neubert 8b61891348
fmt: smarter if condition wrapping () 2021-01-23 10:33:22 +02:00
yuyi 242c5760f1
array: fix array_clone (fix ) () 2021-01-21 10:17:00 +01:00
Uwe Krüger b74690cbec
builtin, checker, cgen: implement `x = a[k] or { ... }` for maps and arrays () 2021-01-19 06:06:57 +01:00
Lukas Neubert ac2c3847af
all: update copyright to 2019-2021 () 2021-01-18 13:20:06 +01:00
zakuro 254df0ca62
fmt: improve string quotes () 2021-01-13 06:05:27 +01:00
zakuro 33694665f0
fmt: align each contiguous field of struct. not the whole. () 2021-01-12 04:38:43 +01:00
yuyi 775d16cce3
array: remove redundant index method in array.v () 2020-12-25 17:21:23 +02:00
spaceface 214290d55b
fmt: add a space around single-line `unsafe` expressions () 2020-12-23 19:13:42 +01:00
Delyan Angelov cd30dcc287
builtin: make array.ensure_cap/1 more robust 2020-12-19 21:36:08 +02:00
Emily Hudson 553ecf63e7
vlib/io: fix reader bugs, make read_all take a config struct () 2020-12-16 18:22:26 +01:00
Swastik Baranwal b2685c6060
builtin: add more docs to array.v () 2020-12-15 10:31:35 +02:00
ka-weihe f57c7032b4
ci: fix sanitizers and add -fsanitize=undefined () 2020-12-14 06:34:47 +01:00
Delyan Angelov b99ea332f0
cgen,builtin: fix sort for []u64 2020-12-05 23:14:19 +02:00
heronwr f8af866f76
builtin: make v_realloc use int parameter instead of u32 () 2020-12-02 15:35:11 +02:00
Larpon ed08d96932
builtin: remove old type prefixes, add a few missing documentations, add missing punctuation () 2020-11-30 18:51:00 +01:00
Delyan Angelov 1891f55c72 builtin: add voidptr.vbytes(len) and byteptr.vbytes(len) 2020-11-27 18:18:46 +02:00
Alexander Medvednikov f8827c3fe5 builtin: clone the strings correctly in array.push 2020-11-22 13:22:42 +01:00
Emily Hudson cd2a2cef25
vlib/net: add buffered IO, x.net -> net () 2020-11-15 22:54:47 +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 c2e9be5a45 cgen: use even more efficient array.delete_last() 2020-10-23 23:04:22 +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 624f22e27e all: mutability check (part 1); enable mutable sumtype args 2020-09-22 05:28:29 +02:00
Alexander Medvednikov 6921d46185 all: rune type for `` literals 2020-08-27 06:46:37 +02:00
Alexander Medvednikov e5e31f7210 sort: handle `.sort(a.field > b.field)` 2020-08-12 06:11:40 +02:00
Alexander Medvednikov 4bc0dde413 all: new `.sort(a < b)` syntax 2020-08-12 05:54:51 +02:00
Nick Treleaven 2dd90de993
parser: error on `[unsafe_fn]` () 2020-08-09 12:22:11 +03:00
Nick Treleaven a74cbf55c7
checker: warn if C.m* or C.s* functions are called outside unsafe blocks () 2020-07-20 20:06:41 +03:00
Nick Treleaven 105a0e015e
checker: warn if unsafe method called outside unsafe block () 2020-07-17 19:14:12 +02:00
Nick Treleaven f5e6a83a05
builtin: unsafe vlib pointer indexing () 2020-07-15 21:56:50 +02:00
Delyan Angelov cf7d03bda6 builtin: implement array.pop() 2020-07-14 20:01:39 +03:00