Commit Graph

4758 Commits (0f1ed1ca09bcac34899be7c4e91cbe6e340471d0)

Author SHA1 Message Date
Nick Treleaven 3925c3fa20
parser: disallow index variable with range `for` (#6464) 2020-09-24 15:52:44 +03:00
Marcin fb45e2e046
flag: fix panic on single `-` 2020-09-24 15:50:44 +03:00
Uwe Krüger 72ecc222ee
fmt: support `select` expressions (#6460) 2020-09-23 22:22:39 +02:00
Daniel Däschle 4f09ddccb4
cgen: implement sum type str gen (#6454) 2020-09-23 20:51:51 +02:00
Nick Treleaven 2886b1c67d
checker: require binary operands for &&, || (#6449) 2020-09-23 20:48:25 +02:00
Uwe Krüger 9c0758639b
cgen: fix `for match {...} {` and `for select {...} {` (#6441) 2020-09-23 06:05:12 +02:00
Alexander Medvednikov 624f22e27e all: mutability check (part 1); enable mutable sumtype args 2020-09-22 05:28:29 +02:00
Delyan Angelov a9ef7d173f doctor: suggest `v doctor` in issue templates and C builder errors 2020-09-21 18:29:52 +03:00
Ned Palacios 744f685973
vdoc: document variables in a specific pos/scope; support `v doc os File` (#6354) 2020-09-21 17:40:39 +03:00
Swastik Baranwal 077b597bd8
scanner/parser: change error msgs for `\0` and `\x00` and add error for r`byte` and c`byte` (#6436) 2020-09-21 17:34:24 +03:00
Uwe Krüger 0f1c484ad1
parser/checker: `if select { ... } {` (#6434) 2020-09-21 07:34:04 +02:00
Alexander Medvednikov 27f91faae5 gg: remove an old compielr hack that's no longer needed 2020-09-21 02:51:14 +02:00
Alexander Medvednikov 8c8fe02000 gg: mouse_move, mouse_down 2020-09-21 02:42:53 +02:00
Leonardo Cecchi 21c5ff681b
pg: add binding for PQfinish (close) (#6435) 2020-09-21 01:47:37 +02:00
Henrixounez e429a77de2
gen: named imported structs operator overloading and str methods (#6433) 2020-09-20 19:51:14 +02:00
Henrixounez 5086fd537c
checker: prompt error on implicit int overflow by literal (#6410) 2020-09-20 16:29:01 +02:00
Marcin 34884c1631
os: fix binary mode read/write on windows (#6431) 2020-09-20 16:28:45 +02:00
Delyan Angelov d4fbf422b3 gg: support transparency for rect/triangle/etc primitives too 2020-09-20 12:05:30 +03:00
Uwe Krüger 4ae88c69ac
sync/select: allow push of literals and calculated expressions (#6429) 2020-09-20 03:50:09 +02:00
Alexander Medvednikov c781a5f245 gg: draw_triangle(); draw_image_flipped() 2020-09-20 03:47:32 +02:00
Nick Treleaven 9958881cbe
parser: support parsing unsafe (as first token) as UnsafeExpr (#6032) 2020-09-19 19:18:36 +03:00
Swastik Baranwal 1c886ad067
scanner: add check for `!is_raw` for null `\0` (#6427) 2020-09-19 19:09:18 +03:00
Henrixounez 4b0e7fc979
checker: check if imported struct is public (#6425) 2020-09-19 18:16:43 +03:00
Henrixounez 4121ba9ea9
parser: fix error about multiple modules showing when eof (#6423) 2020-09-19 02:15:47 +02:00
Uwe Krüger 31a52cdf21
cgen: implement channel `select` block code generation (#6424) 2020-09-19 02:14:35 +02:00
Enzo 3126ae305c
checker: verify use of blank identifier (#6412) 2020-09-18 23:47:50 +02:00
Delyan Angelov 78e6ddee75 tests: enable running `v test .` inside vlib/v/ too 2020-09-18 19:20:01 +03:00
Daniel Däschle 1b9711edde
gen: fix C warnings by cleaning up skip_struct_init (#6416)
* gen: removes struct name from list which shouldn't be initialized

* gen: vfmt

* cgen: remove the skip_struct_init list

* Revert "cgen: remove the skip_struct_init list"

This reverts commit d9e1fdbb4c.

* fix ci

* vfmt vlib/v/gen/cgen.v

Co-authored-by: Delyan Angelov <delian66@gmail.com>
2020-09-18 16:36:40 +03:00
Henrixounez 46dc6cc24b
repl: fix ctrl+z job to background on linux (#6417) 2020-09-18 16:34:00 +03:00
Delyan Angelov d2badcdedf vlib: fix more C warns on windows 2020-09-18 13:40:47 +03:00
Henrixounez c1f04d8c72
builtin: fix min value for int_str (#6411) 2020-09-18 12:56:16 +03:00
Daniel Däschle ffc8cf3925
gen: c don't generate x >= 0 check for unsigned ints in range exprs in matches (#6414) 2020-09-18 12:53:19 +03:00
Daniel Däschle f7aa9cb0c5
vlib: fix C warning for UNICODE macro redefinition on windows (#6415) 2020-09-18 12:51:55 +03:00
Henrixounez c02a0f90df
checker: prompt error on script expression while inside a file with main (#6400) 2020-09-18 01:14:14 +02:00
Henrixounez 4038ac463c
gen: bytes array print not ending prematurely when null byte (#6401) 2020-09-18 01:12:32 +02:00
Nick Treleaven 14743458e5
checker: tweak error messages for `or` block; use proper type names (#6377) 2020-09-18 01:09:00 +02:00
Daniel Däschle f59b771c76
parser: fix nested amp (#6402) 2020-09-18 01:04:56 +02:00
Nick Treleaven 69c592e0d6
checker: disallow infix op on an optional type (#6406) 2020-09-18 01:03:55 +02:00
Henrixounez 99574e465d
scanner: allow escape on null character (#6404) 2020-09-18 01:02:06 +02:00
Enzo a1e127ae46
checker: check type in `is` InfixExpr (#6407) 2020-09-18 01:01:05 +02:00
spaceface777 ff92c3409d
ast: merge `IfExpr` and `CompIf` (#6011) 2020-09-18 00:58:54 +02:00
Seven Du 98e6d25b42
vweb: make ip() to return peer_ip work (#6399) 2020-09-17 10:38:39 +03:00
Delyan Angelov 6f7bb30b0a tests: fix strconv.v_sprintf arrity mismatch in format_test.v 2020-09-17 00:33:25 +03:00
Delyan Angelov 80b150d3ad strconv.v_sprintf: add runtime checks&panics on arrity mismatches 2020-09-17 00:24:33 +03:00
Lukas Neubert 2464deec82
cli: improvements to help and error messages (#6375) 2020-09-16 22:01:44 +02:00
Henrixounez 608df40058
checker: fix error declaration on a value (#6390) 2020-09-16 22:01:15 +02:00
Delyan Angelov e2e683199d time: do not panic on time.new_time({unix: 1608854400}).str() 2020-09-16 22:14:02 +03:00
Daniel Däschle c960b5979e
vlib: fix incompatible pointer warning (#6385) 2020-09-16 17:40:02 +03:00
Uwe Krüger 1bc9063573
parser: implement parsing of `select` block (#6379) 2020-09-16 15:34:57 +02:00
Daniel Däschle 3a795e6d9b
gen: fixes C warnings by appending U after unsigned integer literals (#6384) 2020-09-16 15:50:41 +03:00
Delyan Angelov 5da698b4bf tests: add support for skipping tests in vlib/v/compiler_errors_test.v too 2020-09-15 19:56:52 +03:00
Nick Treleaven b552c29bef
os: add fn `read_bytes_into` with buffer argument (#6365) 2020-09-14 15:34:34 +02:00
Delyan Angelov a9bd6acd52 builtin: fix new_dense_array (avoid the &string(int(...)) bug generating (int*) ) 2020-09-14 16:26:25 +03:00
Delyan Angelov bbf4983524 autofree: add option_reassigned.v and option_simple.v tests. 2020-09-14 13:04:24 +03:00
Alexander Medvednikov bffa100aa6 autofree: optional fix 2020-09-13 21:36:33 +02:00
Delyan Angelov 2bd4355a4c os: add check for path.len == 0 in vfopen 2020-09-13 18:08:58 +03:00
Delyan Angelov 8c71ba8912 os: add more error checking for os.read_bytes and os.read_file 2020-09-13 18:03:19 +03:00
Alexander Medvednikov 68948c7947 checker: vfmt checker.v 2020-09-13 16:21:40 +02:00
Tomas Hellström a160038e1a
ci: re-enable autobahn tests (without autofree) (#6360) 2020-09-13 16:20:22 +02:00
Vasilis Katsifolis 43942057a4
checker: fix a type check that caused a C error #6238 (#6358) 2020-09-13 15:19:53 +02:00
Uwe Krüger 168daebccf
sync/channels: fix bug that caused 100% CPU on block (#6357) 2020-09-13 15:13:06 +02:00
Alexander Medvednikov fc88f43e50 autofree: make optional methods work 2020-09-13 03:20:34 +02:00
Alexander Medvednikov f337980e52 autofree: move tmp var generation to a separate method 2020-09-13 03:18:13 +02:00
Alexander Medvednikov 9149d8ecb5 autofree: a small simplification 2020-09-13 03:12:09 +02:00
Alexander Medvednikov f074d766e5 ci: disable gitly autofree build for now 2020-09-13 03:06:16 +02:00
Alexander Medvednikov db51ee08ea autofree: more fixes in optionals 2020-09-13 03:00:45 +02:00
Yağızcan Değirmenci e77c4c182d
sqlite: fix indentation in readme (#6356) 2020-09-12 16:42:35 +02:00
Alexander Medvednikov b74c1805d7 cgen/autofree: fix and simplify optionals 2020-09-12 16:40:52 +02:00
Delyan Angelov 37311883c1 tests: add optional_method_err.vv 2020-09-12 13:12:06 +03:00
Delyan Angelov 0801f88d0a tests: cleanup vlib/v/checker/tests/run ; add unused_variable_warning.vv 2020-09-12 12:33:17 +03:00
Delyan Angelov 60ecb7e4b6 os: change f.write and f.writeln to return options too 2020-09-12 08:39:28 +03:00
Oghogho Odemwingie 332f3a924c
builtin: consume matched string length in string.replace_each (#6349) 2020-09-12 02:31:06 +02:00
Uwe Krüger b10d79c4d9
sync/channels: fixes for `try_push/pop()`, optimizations (#6352) 2020-09-12 02:29:11 +02:00
Sandro Martini 07b5d6b1b6
vweb: add mime type for json static content (#6347) 2020-09-11 23:14:44 +03:00
Delyan Angelov 96c22a26b9 tests: cleanup if_smartcast_test.v 2020-09-11 22:00:13 +03:00
Delyan Angelov 40ed2e1b3d builtin: use C.write for print/eprint . Call C.SetConsoleOutputCP(C.CP_UTF8) on windows 2020-09-11 16:20:35 +03:00
Delyan Angelov d46c1f0f20 tests: fix sporadic waitgroup failure on slow windows VMs in anon_fn_test.v 2020-09-11 16:00:24 +03:00
Daniel Däschle ce62f997f3
all: better type error positions (#6345) 2020-09-11 14:37:14 +02:00
Alexander Medvednikov 62a692b29c checker: make the "unnecessary default" error a warning for now 2020-09-11 13:59:28 +02:00
Alexander Medvednikov 53bed596e7 autofree: do not free _ vars 2020-09-11 13:58:12 +02:00
Alexander Medvednikov e0d20eadff autofree: free strings on re-assignments 2020-09-11 13:55:20 +02:00
Alexander Medvednikov 17882db635 autofree: disable ?string test for now 2020-09-10 22:19:18 +02:00
Delyan Angelov ce6d2759f5 os: add os.open_stdin/0 and os.File.get_line/0 2020-09-10 16:57:03 +03:00
Alexander Medvednikov 67cc515e74 autofree: ?string test 2020-09-10 13:41:30 +02:00
Alexander Medvednikov 03327e5161 time: minor fixes + vfmt 2020-09-10 13:26:01 +02:00
Ned Palacios 368c2a6bf0
vlib: add x/json2 (#6336) 2020-09-10 12:05:40 +02:00
Alexander Medvednikov bc8aab4775 checker: fix := test 2020-09-09 17:59:51 +02:00
Alexander Medvednikov 3956ea4665 Revert "checker: fix := test"
This reverts commit 818220de45.
2020-09-09 17:55:48 +02:00
Alexander Medvednikov 818220de45 checker: fix := test 2020-09-09 17:50:14 +02:00
Alexander Medvednikov 5d484bf022 checker: better error message for incorrect `mut x :=` 2020-09-09 17:27:16 +02:00
Daniel Däschle 3a146a6dbe
checker: fix error pos on default value (#6338) 2020-09-09 15:34:41 +02:00
Alexander Medvednikov 78e28a72ed doc: vfmt and make compile 2020-09-09 14:24:42 +02:00
Alexander Medvednikov cb43084e26 regex: fix compilation 2020-09-09 14:18:06 +02:00
Alexander Medvednikov ea31f75098 checker: more default field fixes 2020-09-09 14:14:44 +02:00
Alexander Medvednikov 925f1781b3 checker: default field fixes 2020-09-09 14:05:56 +02:00
Alexander Medvednikov e018509ba6 checker: test for unnecessary default struct field values 2020-09-09 13:59:52 +02:00
Nick Treleaven eb95a4333a
table: rename Arg to Param (#6337) 2020-09-09 13:21:11 +02:00
Swastik Baranwal ea2b2ebc07
checker: modify error messages for ptrs (#6325) 2020-09-09 10:07:58 +02:00
bpryer 3f7970db52
term: add get_cursor_position and set_terminal_title (#6279)
* added functions

added:
  - get_cursor_position()
  - set_terminal_title(title string)

* implement term.get_cursor_position and term.set_terminal_title on unix

* Cleanup

* make x,y fields of term.Coord mutable

* fix vrepl compilation

* use more descriptive var names in term_test.v

* do not change the current terminal title in dumb terminals; do not test term.set_terminal_title outside of CI

* unix: in term.set_terminal_title, return true even for dumb terminals

Co-authored-by: Brent Pryer <brent@pryermachine.com>
Co-authored-by: Delyan Angelov <delian66@gmail.com>
2020-09-08 22:00:10 +03:00
Nick Treleaven 49c322f120
checker: simplify argument qualifier errors (#6321) 2020-09-08 19:34:17 +02:00