Commit Graph

1209 Commits (425ca5e3c321d69d0cec5702bde70bb962e9dc32)

Author SHA1 Message Date
Delyan Angelov 48546d0f45
all: do compile time const evaluation for `const x = "abc" + "xyz"` and `const x = 16 * 1024 + 5` (fix const prealloc_block_size) 2021-07-18 22:59:18 +03:00
Delyan Angelov 3ccde5ce55
builtin: use `prealloc_block_size = 16777216` temporarily 2021-07-18 17:03:25 +03:00
playX d5e0fa6d1b
v.gen.js: port string methods and fix booleans (#10824) 2021-07-18 09:00:20 +03:00
Delyan Angelov ee9e91b8e7
builtin: fix `-d no_backtrace` error with tcc 2021-07-17 18:09:16 +03:00
Delyan Angelov b0167297e5
builtin: support `-d no_backtrace` on macos/bsd too 2021-07-17 17:49:28 +03:00
playX 06edbc8a38
v.gen.js: implement most of array and map methods in builtin/js (#10806) 2021-07-15 17:36:53 +03:00
shadowninja55 806d6172cb
checker: prohibit casting `void` (#10690) 2021-07-07 21:59:58 +03:00
Uwe Krüger a1f123bd42
cgen: enable string index error handling `s[i] or {...}` (#10670) 2021-07-05 21:00:30 +03:00
Delyan Angelov 972542d6ee
checker: `[noreturn]` part 2 (cleanup) (#10667) 2021-07-05 05:05:37 +03:00
Delyan Angelov 6aecda3be8
all: support `[noreturn] fn abc() { for{} }`, mark panic/1 and exit/1with it too. (#10654) 2021-07-04 20:24:19 +03:00
Alexander Medvednikov 6a64259527 string: bring back the is_lit comment 2021-07-03 20:16:49 +03:00
Daniel Däschle 0f9537ece5
all: remove ustring (#10630) 2021-07-03 20:14:09 +03:00
Flinner 1486258591
strconv: fix `atoi` returning 0 on large strings (#10635) 2021-07-02 10:39:57 +03:00
Alexander Medvednikov 41e88423aa Revert "builtin: use == 0 instead of isnil()"
This reverts commit 8650ec6916.
2021-07-01 06:21:03 +03:00
Daniel Däschle 3881e97a40
vlib: remove ustring usage (#10618) 2021-06-30 22:30:28 +03:00
Daniel Däschle 6838030ab5
builtin: add string.runes() (#10611) 2021-06-30 09:17:38 +03:00
Delyan Angelov ab5a4cf4e5
builtin: cleanup .before() documentation 2021-06-29 14:50:55 +03:00
Delyan Angelov 1b5d0ba8fd
builtin: document existing behaviour of .before() methods on strings 2021-06-29 14:40:37 +03:00
Delyan Angelov 63638fd271
cgen: optimize generated array.index(elem) 2021-06-28 17:45:13 +03:00
Delyan Angelov 8650ec6916
builtin: use == 0 instead of isnil()
Do not rely on C inlining that may not happen for a *very* frequently
called fn in lower level code.
2021-06-28 10:59:14 +03:00
Thomas Treffner 9651a9796b
builtin: fix termux prints (#10595) 2021-06-28 08:27:12 +03:00
Delyan Angelov b2391424d9
examples: add examples/gg/random.v demonstrating how to stream images/pixels 2021-06-24 17:45:14 +03:00
Delyan Angelov f580597ffc
ci: fix -cstrict compilation on tests-sanitize-undefined-clang 2021-06-23 20:17:58 +03:00
Delyan Angelov 66bf963a48
builtin: remove C.printf call from string.free() 2021-06-23 16:31:46 +03:00
Delyan Angelov 9151f085f5
ci: fix failing Freestanding task 2021-06-23 13:18:17 +03:00
Delyan Angelov dd254a6652
builtin: streamline print/eprint/println/eprintln, do not println in 2 steps when possible 2021-06-23 12:22:05 +03:00
Delyan Angelov 79df7f51c3
v: deprecate `[if ident]` in favour of `[if ident ?]` 2021-06-22 10:30:14 +03:00
Ekopalypse 81fe702b77
builtin: disable the unhandled exception handler, when `-d no_backtrace` is used (#10530) 2021-06-21 08:01:18 +03:00
yuyi afc81277be
v.gen.c: fix assigning a fixed array variable to a map value (#10523) 2021-06-20 08:09:24 +03:00
Ekopalypse c53a344d2f
builtin: allow a static gc build on windows (#10510) 2021-06-19 17:06:25 +03:00
Delyan Angelov aea23e8a40
strconv: fix fxx_to_str_l_parse/fxx_to_str_l_parse_no_dot returning s without cloning 2021-06-19 07:48:46 +03:00
Bastian Buck acf9d168cb
os: fix some C compiler warnings for windows (#10506) 2021-06-18 20:07:25 +03:00
Alexander Medvednikov eacdd0d7e1 comptime: fix $(field.name) in $for; vweb: shared fields 2021-06-16 20:33:39 +03:00
Uwe Krüger 60c880a0cc
vlib: use `malloc_noscan()` where possible (#10465) 2021-06-15 14:47:11 +03:00
Delyan Angelov be3702dcb7
builtin: uncomment already working test functions in array_test.v 2021-06-14 10:13:59 +03:00
Uwe Krüger 5ee1ded3fb
gc: extend optimized mode to maps (#10426) 2021-06-13 06:26:43 +03:00
Uwe Krüger 652e7ba973
gc: extend optimized mode to strings (#10431) 2021-06-12 11:27:08 +03:00
Alexander Medvednikov e02d1d4a4b Revert "gc: extend optimized mode to strings (#10409)"
This reverts commit 3f654a69e3.
2021-06-12 01:52:06 +03:00
Uwe Krüger 3f654a69e3
gc: extend optimized mode to strings (#10409) 2021-06-12 00:03:05 +03:00
Uwe Krüger daeeaef030
vfmt: hot fix to allow separate `array_d_gcboehm_opt.v` (#10413) 2021-06-11 12:00:18 +03:00
Uwe Krüger 0e2c86310a
GC-boehm: extend optimized mode to all `array` methods (#10406) 2021-06-10 21:26:17 +03:00
pancake 5be982d63e
builtin: fix memory leak on empty strings (#10408) 2021-06-10 15:21:57 +03:00
Andreas Heissenberger 96c8d147b2
v.gen.js: add source map creation support (inline only, no src) (#10384) 2021-06-10 08:33:46 +03:00
Uwe Krüger 811a3e1d38
builtin: optimize `array.repeat()` (#10396) 2021-06-09 12:52:30 +03:00
Uwe Krüger a2243054a5
builtin: fix memory corruption in array `.clone()` and `.repeat()` (#10394) 2021-06-08 23:23:28 +03:00
Delyan Angelov 95cf120e2e
ci: fix linux-cross job; os.real_path cleanup 2021-06-08 18:34:15 +03:00
Delyan Angelov 40ac7d4892
builtin: support -d trace_vcalloc, -d trace_realloc 2021-06-08 17:24:07 +03:00
Delyan Angelov 665c386771
builtin: simplify the .si_c and .si_vp cases in StrIntpData.get_fmt_format, free intermediate results 2021-06-08 13:29:03 +03:00
Uwe Krüger 89aab95177
builtin: fix -gc boehm on windows (#10330) 2021-06-04 17:38:51 +03:00
Uwe Krüger ce3e71cb8e
OpenBSD: support Boehm-GC, X11 and Sqlite (#10300) 2021-06-01 22:28:30 +03:00