Commit Graph

10147 Commits (5be982d63e031367c629b899232750a21e46ded3)

Author SHA1 Message Date
joe-conigliaro 4217f05146
checker/ci: workaround bug causing errors with -usecache (sumtype field access) & add more -usecache tests (#10199) 2021-05-25 12:28:18 +03:00
R cqls 5b8402bccb
parser: fix mod_path_to_full_name to be compliant with --path option (#10149) 2021-05-25 07:46:40 +03:00
yuyi f3274700cd
cgen: fix generic struct to string (#10191) 2021-05-25 07:45:54 +03:00
Ryan Roden-Corrent 306c16f0fa
fmt: don't break indexing in string interpolation. (#10195) 2021-05-25 07:45:32 +03:00
yuyi 7d210da9a5
checker: minor refactor in check_basic() (#10196) 2021-05-25 07:45:05 +03:00
yuyi 0e6f0c1de0
checker: check generic struct init without type parameter (#10193) 2021-05-25 06:15:05 +03:00
Pranav Baburaj da88235bdc
vpm: addd a show command (#10186) 2021-05-24 15:17:57 +03:00
Delyan Angelov 13d1d28db1
v.parser: fix -autofree for script mode programs that do not have explicit `fn main(){}` 2021-05-24 14:42:09 +03:00
Enzo ce7f78522d
builtin: remove former string operator methods (#10184) 2021-05-24 14:05:29 +03:00
Alexander Medvednikov db848ed314 tools/fast: wipe cache before measuring 2021-05-24 12:12:29 +03:00
Enzo 886f69bfcf
all: use operator overloading on strings (p. 2) (#10183) 2021-05-24 11:38:31 +03:00
Delyan Angelov 40f11b265e
ci: run only `./v -d network test vlib/net` in periodic.yml 2021-05-24 11:26:49 +03:00
Enzo c0b1f99935
checker: allow operator overloading on strings (p. 1) (#10182) 2021-05-24 10:23:57 +03:00
penguindark d8d05e0106
all: new string interpolation in pure V (#10181) 2021-05-24 05:20:45 +03:00
Delyan Angelov 603e57745f
builder: use some -cstrict flags only with clang (gcc does not understand them) 2021-05-23 21:00:48 +03:00
Larpon ded8897671
ci: add vab job compiling v graphical examples (#10171) 2021-05-23 18:00:56 +03:00
yuyi eb5ac23988
checker: fix match expr with if expr (fix #10177 #10178) (#10179) 2021-05-23 17:59:57 +03:00
Delyan Angelov 7f12bfa563
builtin: optimise `sx == sy` in the case where strings have common prefixes 2021-05-23 17:22:57 +03:00
Delyan Angelov e9fa53b0c1
v.parser: let fn_decl use 1 loop, instead of multiple p.attrs.contains calls 2021-05-23 16:54:12 +03:00
Delyan Angelov bf3af40f13
v.markused: support `./v -skip-unused -freestanding run vlib/os/bare/bare_example_linux.v` too 2021-05-23 16:25:34 +03:00
Delyan Angelov 5efd8c62d0
ci: fix tests-sanitize-undefined-clang 2021-05-23 15:13:53 +03:00
Delyan Angelov a27e7f7675
builtin: remove commented code; improve print_backtrace with tcc 2021-05-23 12:37:40 +03:00
Delyan Angelov a08cbd364a
v.checker: improve C.printf(abc) deprecation precision 2021-05-23 12:18:21 +03:00
yuyi ae9f8627fc
checker: simplify generic structs (#10167) 2021-05-23 05:54:58 +03:00
Lukas Neubert 79b97fa361
fmt: keep names of parameters in anonymus function (#10173) 2021-05-23 05:54:39 +03:00
pancake efa07cbcbf
native: initial support for linux-arm64 (hello world only for now) (#10176) 2021-05-23 05:54:28 +03:00
pancake 4b11e59bb0
Makefile: honor local=1 in the fresh_tcc make target (#10172) 2021-05-22 21:08:28 +03:00
Delyan Angelov bc01de2181
ast: mark ast.File{} with `[heap]`, and use []&ast.File consistently 2021-05-22 19:06:55 +03:00
Delyan Angelov e512caf8f5
vfmt: do not error on `field [fsize]Type`, where `fsize` is from another .v file 2021-05-22 16:42:38 +03:00
Alexander Medvednikov 7c0f8f7644 builtin: a small optimization in string.replace() 2021-05-22 14:35:36 +03:00
yuyi 565dbc4051
checker: fix inferring method receiver types (#10166) 2021-05-22 11:04:19 +03:00
Delyan Angelov 104d9a7c8a
net: cleanup #include directives 2021-05-22 10:53:19 +03:00
Delyan Angelov bf97faf32a
os: simplify os.read_bytes_into_newline to fix compilation on freebsd 2021-05-22 07:48:12 +03:00
Delyan Angelov b7bf4b034e
os: use stricter declarations for C.getc/1, C.fseeko/3 and C._fseeki64/3 2021-05-22 07:45:00 +03:00
Alexander Medvednikov c04fc7bfc2 tools/fast: disable usecache for now 2021-05-22 07:20:48 +03:00
Alexander Medvednikov dcfea5c69b vweb: detect mime type automatically in serve_static() 2021-05-22 07:02:25 +03:00
Lukas Neubert 788520eb52
fmt, ast: fix usage of import aliases (#10151) 2021-05-21 20:33:04 +03:00
yuyi 9be596ef12
checker: fix generic struct with anon fn type (#10161) 2021-05-21 17:21:18 +03:00
yuyi 293c6646d0
vtest-cleancode: do not skip generics_return_generics_struct_test.v anymore (#10163) 2021-05-21 17:20:52 +03:00
Ryan Roden-Corrent b90bae79da
doc: document that test_ functions may propagate errors (#10162)
When testing a function that can return an error, writing a test like
this allows you to more easily test the non-error flow by just
propagating any errors and letting them fail the test.

I didn't realize this was a feature at first, so I was writing tests
like:

```
fn test_atoi() {
	assert strconv.atoi('1') or { panic("atoi failed") } == 1
	assert strconv.atoi('one') or { panic("atoi failed") } == 1
}
```
2021-05-21 14:18:13 +03:00
Sebastian Schicho 04ea2824d3
os: implement File.read_bytes_into_newline method for reading into a buffer, line by line (#10129) 2021-05-21 13:18:08 +03:00
yuyi 87ded1784e
checker: a minor optimization in file_has_main_fn() (#10143) 2021-05-21 06:14:57 +03:00
zakuro d8cf26aaba
fmt: fix trailing arg formatting (#10155) 2021-05-21 06:14:07 +03:00
zakuro be92f81b2e
checker: fix type error in `f<T>(fn (v T))` with multiple different Ts (#10154) 2021-05-21 06:13:04 +03:00
Lukas Neubert f7cd95472a
checker: clarify duplicate import error (#10150) 2021-05-21 06:12:38 +03:00
yuyi bf69d20353
checker: fix generic struct with anon fn parameter (#10147) 2021-05-20 16:57:27 +03:00
Delyan Angelov da090f91d8
cgen: fix using and auto printing `x := [16]&Type{}` 2021-05-20 15:59:02 +03:00
Delyan Angelov dd0a97541c
tests: use term.header_left, and a more compact output layout 2021-05-20 11:25:07 +03:00
Delyan Angelov 00b3092a92
term: use textscanner.new in term.strip_ansi/1 2021-05-20 11:24:44 +03:00
Delyan Angelov 888b9c020c
strings: add a new module `strings.textscanner` to simplify writing small parsers 2021-05-20 11:23:25 +03:00