Commit Graph

8841 Commits (1aaac13a6053ced3fdf013774f09090fbf7a5bfd)

Author SHA1 Message Date
Delyan Angelov 1aaac13a60
cgen: make `os` less special, fix an -autofree leak on just `import os`
* Improve documentation of v.util.Surrounder

* Remove `os` from the list of "no auto free" `builtin` mods

* Fix -autofree freeing of `const x = []string{}`.

* Add a valgrind regression test.

* Implement os.getenv_opt in vlib/os/environment.js.v too.
2021-11-21 21:50:10 +02:00
Delyan Angelov 117c99d938
v.util: add Surrounder.builder_write_befores and Surrounder.builder_write_afters methods for writing to an existing strings.Builder 2021-11-21 20:56:47 +02:00
kahsa 480f3876ee
gg: fix system_font_path (#12533) 2021-11-21 19:12:15 +02:00
playX 243e66a106
js,jsdom: Canvas & context API; Added TypeSymbol.is_js_compatible & temporary hacks for JS ifaces (#12526) 2021-11-20 21:28:11 +02:00
Delyan Angelov 258d0d6df7
cgen: make `dump(x)` use a single write call, fix memleaks for autogenerated .str() methods of nested structs (#12529) 2021-11-20 20:55:19 +02:00
Larpon f1dd0e3355
toml: add value decoding (#12521) 2021-11-20 19:48:44 +02:00
Larpon 4b9e8e243c
toml: support arrays in value key query syntax (#12527) 2021-11-20 19:45:17 +02:00
Ned 82010e729d
checker: fix "unregistered" variadic interface call arguments (#12525) 2021-11-20 18:15:20 +02:00
Delyan Angelov 90ba856107
cgen: fix `dump(x)` with `fn (x &Type) str() string {` 2021-11-20 13:12:03 +02:00
Delyan Angelov 24ffc1ffb2
os: fix os.rmdir_all for folders with recursive symlinks 2021-11-20 10:28:12 +02:00
Larpon 1bbc73384c
toml: fix memory corruption when returning new date/time types (#12507) 2021-11-19 20:35:11 +02:00
Larpon a894a6cf36
toml: fix parsing of alphanumeric keys (#12517) 2021-11-19 20:34:21 +02:00
yuyi eec8788333
checker: fix generics fn infer nested generic fn (#12519) 2021-11-19 20:31:55 +02:00
Delyan Angelov b576181a66
cgen: fix `const x := opt() or {}` side effect interference when the consts are in different files in the same module too 2021-11-19 19:02:33 +02:00
Delyan Angelov e275220f05
cgen: fix `const x := opt() or {}` side effect interference with parallel cgen 2021-11-19 18:15:06 +02:00
Delyan Angelov 762a7fde2a
os: add os.getenv_opt/1 2021-11-19 17:47:45 +02:00
yuyi c2eb909c9b
cgen: fix multiple matches in one expr (#12516) 2021-11-19 13:52:28 +02:00
pancake 80a4ff9900
native: handle some more statements and dont echo warnings (#12518) 2021-11-19 13:50:44 +02:00
Delyan Angelov fa995ca537
checker: add an error for `x.method({})` calls, when method expects a struct 2021-11-19 13:30:45 +02:00
pancake 9eac656e55
native: support passing a directory, instead of just a .v file (#12512) 2021-11-19 10:30:46 +02:00
Larpon 76cf11e6b5
toml: add Any.default_to() method (#12506) 2021-11-19 10:26:45 +02:00
pancake b367ed9ba3
native: support defining functions in any order (#12511) 2021-11-19 10:25:42 +02:00
yuyi d498c365c2
checker: cleanup infer_fn_generic_types() (#12515) 2021-11-19 10:24:03 +02:00
Delyan Angelov 24ba660367
bitfield,flag: document the remaining functions 2021-11-18 20:15:26 +02:00
Larpon 96554fad71
toml: improve number conversion (#12509) 2021-11-18 19:46:19 +02:00
Delyan Angelov 3caeadfa0d
cgen,vfmt: support `[weak]` tags for functions and globals 2021-11-18 18:32:39 +02:00
Larpon 7fba3e65e9
toml: support empty tables (#12504) 2021-11-18 15:39:44 +02:00
Larpon 24ea15c8f0
toml: remove fixed value tests from skip list (#12503) 2021-11-18 13:57:14 +02:00
kahsa 0ec02e3247
sqlite: add enum result code (#12505) 2021-11-18 13:56:15 +02:00
Larpon 7ec70d5477
toml: small refactor, move all json functionality to submodule (#12502) 2021-11-18 13:27:59 +02:00
Alexander Medvednikov 5bf28c5287 cgen: handle c2v fn casts 2021-11-18 11:58:00 +03:00
playX 1edb3e559e
js,jsdom: make JS structs plain objects; add more DOM API support for jsdom (#12501) 2021-11-18 10:09:53 +02:00
Larpon 409321327b
toml: don't use time.Time for time representation (#12498) 2021-11-18 07:44:24 +02:00
zakuro b5e410e408
fmt: format explicit map init with parameter (#12499) 2021-11-18 08:34:30 +03:00
Don Park ae54cd78f5
json2: encode ascii chars < 0x20 in json (#12494) 2021-11-18 08:34:00 +03:00
zakuro 26fbf1885d
checker: report error for test functions that have parameters (#12500) 2021-11-18 08:33:28 +03:00
Larpon 3b612899bf
toml: eat first nl if present in multiline strings (#12496) 2021-11-17 23:48:29 +02:00
Larpon 81455acd29
toml: simplify Doc.to_any() method (#12495) 2021-11-17 20:58:06 +02:00
Larpon 2f5fae06ee
toml: fix a few string value tests (#12493) 2021-11-17 20:54:48 +02:00
Delyan Angelov 2733319879
term: fix a leak in _test.v files in the default test runner without -autofree 2021-11-17 20:39:08 +02:00
Larpon dbf469e000
toml: move to_burntsushi functionality (#12492) 2021-11-17 17:25:50 +02:00
Larpon 7cdc906683
toml: fix scanning of short unicode escapes (#12491) 2021-11-17 17:24:40 +02:00
yuyi 3e1fb22a04
checker: format checker.v (#12490) 2021-11-17 15:57:17 +02:00
yuyi 1370516f53
checker: check struct field using 'any' type (#12489) 2021-11-17 11:42:05 +02:00
playX 2eb02ff5a7
jsdom, js: start refactoring jsdom; improve JS interfaces; add two attributes for them (#12488) 2021-11-17 11:41:33 +02:00
Delyan Angelov 6ac109a7c3
builtin: add a `[has_globals]` tag for all the .v files, with global declarations in them 2021-11-17 10:29:06 +02:00
Larpon bd9ac598f7
toml: add support for validation of structure and values (#12481) 2021-11-17 08:30:40 +02:00
yuyi 5a89c0a480
ast: change CompFor to ComptimeFor (#12482) 2021-11-17 08:29:43 +02:00
yuyi 927df948ae
cgen: fix generic struct free() (#12487) 2021-11-17 08:18:46 +03:00
Khalyomede 11ce26b3f6
sqlite: make constants public (#12485) 2021-11-17 05:45:50 +03:00