Commit Graph

2573 Commits (890940292bcf372958f95bb9d72ff6fc4cbafae6)

Author SHA1 Message Date
Joe Conigliaro ee6a8a41f5 v2: remove expr type from fn.v 2020-03-05 22:13:45 +11:00
Joe Conigliaro 4d55a4c097 v2: remove expr types & some dead code from parser 2020-03-05 22:08:43 +11:00
Alexander Medvednikov bcaf72eccb cgen: update the test 2020-03-05 01:36:44 +01:00
Alexander Medvednikov 484320ed08 cgen: receiver arg 2020-03-05 01:20:36 +01:00
Alexander Medvednikov b32a94627c cc: -ferror-limit 2020-03-05 00:45:43 +01:00
Alexander Medvednikov 4161cfcdb8 cgen: lots of fixes 2020-03-05 00:43:09 +01:00
Alexander Medvednikov b7e2af8151
os: better deprecated message 2020-03-04 20:29:17 +01:00
Alexander Medvednikov b0ece3a9d8
sync: implement pool.work_on_items to process a list of items in parallel 2020-03-04 20:28:42 +01:00
Alexander Medvednikov 136aa763a3 cgen: multi return structs + other fixes 2020-03-04 20:17:29 +01:00
Alexander Medvednikov cd8a5d1f2e fix parser_test.v and string_test.v 2020-03-04 17:39:27 +01:00
Alexander Medvednikov 237ce6ff84 cgen_test: skip definitions 2020-03-04 17:35:13 +01:00
Alexander Medvednikov c203a744fe glm: fix calloc 2020-03-04 17:22:20 +01:00
Alexander Medvednikov f27f832ede cgen: definitions + other fixes; calloc fix 2020-03-04 17:08:28 +01:00
Alexander Medvednikov 37453945d0 cgen: remaining nodes; match type fix; v2.c is now generated 2020-03-04 15:48:43 +01:00
Joe Conigliaro 8458ea40f0 v2: add UnsafeStmt to checker & byte/byteptr to check 2020-03-05 00:20:37 +11:00
Joe Conigliaro 7daf8f8fd0 v2: simplify MatchExpr in vfmt 2020-03-04 22:39:18 +11:00
Joe Conigliaro 5872961124 v2: update MatchExpr in vfmt 2020-03-04 22:14:37 +11:00
Joe Conigliaro e71948461e v2: update MatchExpr 2020-03-04 21:59:45 +11:00
Joe Conigliaro ed763df42e v2: tidy checker remove old comments & code 2020-03-04 21:08:46 +11:00
Joe Conigliaro d501ea0afb v2: fix array init 2020-03-04 12:50:32 +11:00
Joe Conigliaro bac6fc6ee2 v2: remove test println from checker 2020-03-04 09:49:14 +11:00
Joe Conigliaro ea26b5f30c v2: fix fn call name lookup 2020-03-04 09:46:59 +11:00
Alexander Medvednikov 823b8ad244 table: Type str() 2020-03-03 18:38:41 +01:00
Alexander Medvednikov 2a99422386 cgen: more nodes; exit if there are checker errors 2020-03-03 18:37:38 +01:00
Alexander Medvednikov 0c67b3cff4 checker: fix match return type 2020-03-03 17:29:16 +01:00
Joe Conigliaro c633dd09c6 v2: dont use type type in `<<` infix in parser 2020-03-04 02:08:40 +11:00
Joe Conigliaro 063ca3b644 v2: make array append `<<` right associative 2020-03-04 02:05:16 +11:00
Joe Conigliaro 147ecc5e17 v2: time - prefix C struct & ast.TypeName to ast.Type 2020-03-04 01:06:21 +11:00
yuyi 448ed41562
os api: rmdir_recursive => rmdir_all 2020-03-03 15:02:50 +01:00
yuyi 3f67ba08b1
glfw, freetype: remove the display of general information 2020-03-03 14:41:26 +01:00
Hugo Locurcio 69f256b900
use LF line endings in examples/quick_sort.v 2020-03-03 14:41:05 +01:00
Joe Conigliaro af3159791f v2: reset expr_mod after struct_init type is parsed 2020-03-04 00:24:15 +11:00
Delyan Angelov 90996269fd
compiler: more precise default error context for C errors 2020-03-03 12:01:23 +01:00
yuyi ea10f44fe6
os api: flush_stdout => flush 2020-03-03 00:00:30 +01:00
Joe Conigliaro 895a1711cb v2: fix type aliases & add check 2020-03-03 09:19:04 +11:00
yuyi 8ac0739858
os api: cp_r => cp_all 2020-03-02 19:30:04 +01:00
Alexander Medvednikov 22ffe336cb checker: AsCast, CharLiteral, fix integer index check 2020-03-02 19:00:33 +01:00
Alexander Medvednikov 156e36c082 cgen: handle unhandled nodes 2020-03-02 18:43:41 +01:00
Alexander Medvednikov 07a2233220 fix prod build 2020-03-02 18:28:11 +01:00
Alexander Medvednikov baaa55f196 cgen: fix methods; println 2020-03-02 18:27:00 +01:00
Alexey 78c885d657
fmt: add support for goto 2020-03-02 17:41:32 +01:00
Delyan Angelov c6107276df
compiler: stabilize the interface code generation a little 2020-03-02 17:10:26 +01:00
Alexey 8fafaf38a3
fmt: add function with variadic arg to test file 2020-03-02 17:10:06 +01:00
Alexey cca5c5537f
fmt: extract common code to methods 2020-03-02 17:09:45 +01:00
Joe Conigliaro 8497d637d9 v2: allow pointers to be initialized with 0 2020-03-02 23:52:41 +11:00
Joe Conigliaro 5b08f307c8 v2: fix map initialization 2020-03-02 22:34:02 +11:00
Joe Conigliaro 16528b12fa v2: allow enum value to be used as int 2020-03-02 21:32:28 +11:00
Joe Conigliaro f57a651e3b v2: match expr fixes & tmp typeof skip 2020-03-02 20:53:38 +11:00
joe-conigliaro a8f07157dd v2: implement sym types & handle in table.check 2020-03-02 16:40:18 +11:00
joe-conigliaro b65fad9ca8 v2: fix if guard var type & handle blank ident in assign 2020-03-02 16:05:40 +11:00
joe-conigliaro a118c72423 v2: checker - save type in MapInit node 2020-03-02 14:24:45 +11:00
joe-conigliaro b333d02e3b v2: allow none & error for functions that return optional - checker 2020-03-02 13:58:36 +11:00
Alexander Medvednikov d05bdad638 pratt: handle &= 2020-03-01 23:26:23 +01:00
Alexander Medvednikov f921ea2fb7 cgen: test module fns and consts 2020-03-01 22:06:36 +01:00
Alexander Medvednikov 38de6c98fc cgen: test local modules 2020-03-01 21:56:07 +01:00
Joe Conigliaro a707ffc04a v2: name_expr mod & type & var fixes 2020-03-02 02:14:52 +11:00
Delyan Angelov 1066ec5cd9
compiler: import modules relative to v.mod 2020-03-01 15:49:39 +01:00
Delyan Angelov 615a4b3452
builtin: add V64_PRINTFORMAT (part 2) 2020-03-01 15:48:54 +01:00
Delyan Angelov 2700fd712b
builtin: add V64_PRINTFORMAT (part 1) 2020-03-01 15:30:33 +01:00
Joe Conigliaro 1ab830da4b v2: fix var mistaken for enum in parser 2020-03-02 01:19:10 +11:00
Alexander Medvednikov 82b0024758 fix v2 parser int.v error 2020-03-01 14:57:54 +01:00
Alexander Medvednikov d7a8b1b4f2 checker: set fn arg expected_type 2020-03-01 14:10:10 +01:00
Nicolas Sauzede becd87141c
fix linux warnings in generated C code 2020-03-01 13:26:09 +01:00
Alexander Medvednikov 7a499b3cd3 checker: fix first() and last(); call_args; method cgen 2020-03-01 13:07:51 +01:00
Joe Conigliaro 9978fb3e2c v2: fix map_init return type in checker 2020-03-01 21:45:44 +11:00
Joe Conigliaro 00dcaf0e04 v2: ArrayInit + all errs & unhandled + arrange nodes + type fix 2020-03-01 15:14:36 +11:00
Alexey cbffbf3438
array: reverse empty arrays correctly 2020-02-29 20:44:02 +01:00
Alexey c1e095e587
fmt: process `MatchExpr` 2020-02-29 20:43:15 +01:00
Alexander Medvednikov 4e88c2286e checker: IfGuard, map fixes 2020-02-29 20:11:04 +01:00
Alexander Medvednikov ee05b51f47 checker: fix match expected_type 2020-02-29 18:34:25 +01:00
Alexander Medvednikov a15dcbfb2d checker: set expected_type in several places 2020-02-29 18:25:38 +01:00
Alexander Medvednikov 27ce38937c checker: fix Assoc 2020-02-29 18:07:29 +01:00
Alexander Medvednikov 85f67a3f73 fix prod build 2020-02-29 17:53:04 +01:00
Alexander Medvednikov d5faf36aa9 fmt: comments 2020-02-29 17:51:38 +01:00
Alexey 5a5f4ce99a
fmt: simplify `IndexExpr` processing 2020-02-29 17:45:08 +01:00
yuyi a678be7195
fix interface on all platforms 2020-02-29 15:27:28 +01:00
Alexey 99cbc58db8
array: update `array.repeat` 2020-02-29 15:25:49 +01:00
Alexey 632a538eb3
string: update `string.repeat` behavior
Panic if a repeat count is negative.
Return an empty string if a repeat count is zero.
2020-02-29 15:25:31 +01:00
lydiandy a485533dc9
make sure scanner and parser both check BOM 2020-02-29 15:05:25 +01:00
yuyi 6c85e285e7
vdoc: show variadic args correctly 2020-02-29 15:04:07 +01:00
Alexey ee0a0afb25
v2: process `or` block for `CallExpr` 2020-02-29 15:03:32 +01:00
Alexey efff66ada7
fmt: add `pub` modifier for public enums 2020-02-29 14:38:23 +01:00
Major Taylor d4b0de2dce
log: extended logging level names when printed 2020-02-29 14:31:59 +01:00
Delyan Angelov f9d5c0110f
compiler: @VMODULE 2020-02-29 14:23:45 +01:00
Joe Conigliaro f67fca826e v2: fix C function & type prefixing 2020-02-29 21:47:47 +11:00
Joe Conigliaro 48f912c2e9 v2: handle variadic in selector_expr 2020-02-29 19:04:47 +11:00
Joe Conigliaro 71b5b0d955 v2: fix C fn calls, save C fns with prefix besides odd cases 2020-02-29 17:24:28 +11:00
Joe Conigliaro 236b7b15bb v2: handle optional in return stmt in checker 2020-02-29 16:32:00 +11:00
Joe Conigliaro 8e013d2174 v2: skip minus in string expr for now 2020-02-29 15:56:16 +11:00
Joe Conigliaro eb80accfee v2: add ParExpr to checker 2020-02-29 15:36:39 +11:00
Alexander Medvednikov 6855c746bb vfmt: EnumDecl 2020-02-28 17:21:24 +01:00
Major Taylor ee9cfe22ec
scanner: fix a typo in right_shift 2020-02-28 17:16:24 +01:00
Alexander Medvednikov ccf4f61521 ast: ParExpr, OrExpr, IfGuardExpr; ForInStmt fix; remove all cap vars 2020-02-28 15:36:41 +01:00
Alexander Medvednikov 6a198df3af v2: ParExpr; mut var decl 2020-02-28 14:41:19 +01:00
Alexander Medvednikov 7f5a15372f os: fix get_raw_line() + minor v2 fixes 2020-02-28 14:05:20 +01:00
Joe Conigliaro c4b9ef388f v2: handle var decl & assign stmt together 1st step combining 2020-02-28 23:29:04 +11:00
Nicolas Sauzede f5fdbfd004
os: fix getline warning for linux 2020-02-28 02:43:42 +01:00
penguindark b8f6284daf
ftoa: tables with hex constants 2020-02-28 02:43:15 +01:00
Alexander Medvednikov 87205367d1 v2: minor fixes 2020-02-27 21:51:40 +01:00
Alexander Medvednikov 3204f036da ast: move all str() methods to ast/str.v 2020-02-27 21:29:38 +01:00
Alexander Medvednikov d619944cf5 vfmt: []xxx; mut args 2020-02-27 21:00:33 +01:00
Alexander Medvednikov 4f0d505c65 v2: `if x := `; fix `for key, val in`; CastExpr 2020-02-27 18:02:40 +01:00
Alexander Medvednikov 3bde876097 v2: checker: fix --/++ 2020-02-27 17:31:10 +01:00
Alexander Medvednikov 09b7a7c872 v2: checker: handle clone() 2020-02-27 17:21:13 +01:00
Alexander Medvednikov b1357d9641 v2: checker: fix filter() 2020-02-27 16:51:47 +01:00
yuyi b580a497fe
compiler: fix an interface bug 2020-02-27 16:31:05 +01:00
Joe Conigliaro aba0bb5e01 v2: fix condition in AssignStmt 2020-02-27 21:15:30 +11:00
Joe Conigliaro 237d83b2ee v2: more work on AssignStmt & multi ret & initial blank ident 2020-02-27 21:12:30 +11:00
joe-conigliaro cfbd8ab7e7 v2: parser - use defer to make sure scope is closed for filter 2020-02-27 17:00:24 +11:00
Alexander Medvednikov 06fc8a830b v2: fix a bug with `mod.const` 2020-02-27 03:30:17 +01:00
Alexander Medvednikov a5db9c3519 os: bring back write_bytes_at() 2020-02-27 00:41:05 +01:00
Alexander Medvednikov bb6098e2d3 v2: fix `type f fn...` 2020-02-27 00:18:14 +01:00
Alexander Medvednikov c51f464446 v2: fix `mod.Enum.val` and `x = .val` 2020-02-27 00:12:40 +01:00
Alexey 59d6a675dd
vdoc: trim result value 2020-02-26 23:18:31 +01:00
Major Taylor c72e505fe4
pg: use unsafe 2020-02-26 23:17:56 +01:00
Alexey 394d64bfd0
vdoc: remove duplicated code 2020-02-26 22:44:28 +01:00
Alexey ca9fa6407f
v2: distinguish public and private constants 2020-02-26 22:43:37 +01:00
yuyi 46ec400cb3
vdoc: sort function names 2020-02-26 20:46:09 +01:00
Alexey 70f085be18
v2: process unsafe statements 2020-02-26 20:45:03 +01:00
Alexey b1ea908b3b
fmt: process `defer` statement 2020-02-26 20:44:42 +01:00
Delyan Angelov 9d61f4fad1
benchmark: make measuring small snippets of code less verbose/easier to use 2020-02-26 16:29:46 +01:00
Alexander Medvednikov 857cbfb0d2 v2: short struct init syntax; .xxx enum checks; unions; assert 2020-02-26 15:51:05 +01:00
Nicolas Sauzede 30f905999a
math: add powf and other float32 functions 2020-02-26 13:31:54 +01:00
Delyan Angelov 7a72167eb7
strings: optimization of repeat + repeat_string() 2020-02-26 13:22:12 +01:00
penguindark 39429f7ac9
atof: lots of fixes
* removed sprintf for f64 and f32 use

* removed all pointers from the code, used unions instead

* solved module name problem

* fixed tests on vlib/math

* fix for alpine-linux math test

* small fix on byte allocation for ftoa
2020-02-26 12:14:06 +01:00
joe-conigliaro c4e83faa57 compiler: allow a type to be used as a variant of multiple sum types 2020-02-26 15:15:38 +11:00
SleepyRoy bc3d1eaf6e
scanner: simplify and unify style 2020-02-25 22:58:51 +01:00
Alexander Medvednikov 0f8b2399ee fmt: fix new EnumVal 2020-02-25 19:59:47 +01:00
Alexander Medvednikov 28ee0f4ebe checker: check enums 2020-02-25 15:02:34 +01:00
SleepyRoy 05ed6c57b6
scanner: add check for wrong decimal numbers 2020-02-25 14:33:29 +01:00
Alexander Medvednikov f6c2b3a54b v2: enum fixes 2020-02-25 13:30:43 +01:00
Alexander Medvednikov 7e930c2a75 cgen: enum 2020-02-25 11:52:41 +01:00
lydiandy d4ffed89c0
add typeof test for fn (#3832) 2020-02-25 11:14:59 +01:00
penguindark 200f25a38f
ftoa in V (#3831) 2020-02-25 11:12:37 +01:00
SleepyRoy b17e49ad25
scanner: add check for bin/oct/hex with wrong digits 2020-02-25 11:11:12 +01:00
SleepyRoy f859c7f93e
scanner: fix special case - `e` or `E` at the end 2020-02-25 11:10:05 +01:00
Delyan Angelov b17ade1257
compiler: implement typeof(x) 2020-02-24 21:45:47 +01:00
SleepyRoy 794ee6fc9d
scanner: fix bin/oct/hex without number parts 2020-02-24 18:02:36 +01:00
lydiandy 3c0b73c2d6
sokol: fixes 2020-02-24 18:02:22 +01:00
SleepyRoy 96da5b33c0
scanner: fix special case - 0 at the end 2020-02-24 18:01:51 +01:00
spaceface777 ef8c1203b4
cleanup: replace C for loops with range 2020-02-24 17:55:16 +01:00
Alexey 5918946feb
fmt: process attributes 2020-02-24 17:18:14 +01:00
vitalyster a3a7e0531a
darwin: fix MacPorts build 2020-02-24 16:54:04 +01:00
Alexey 87ad5a96b9
v2: stringify multi-return types 2020-02-24 16:38:31 +01:00
Alexey 2bbb8526a3
fmt: process RangeExpr properly 2020-02-24 16:37:20 +01:00
SleepyRoy 7d2eb4f604
scanner: make `0o` prefix the only way to define octals 2020-02-23 23:43:04 +01:00
yuyi 9d2a60bb11
os: optimize os_windows.v 2020-02-23 20:46:13 +01:00
yuyi adb1d3f8c9
scanner: enable 0oxx to handle octals 2020-02-23 12:33:07 +01:00
Alexey 26fa833984
fmt: process assignment statement correctly 2020-02-23 11:22:07 +01:00
Alexander Medvednikov 2eb4f663d6 fix fmt test 2020-02-22 17:14:38 +01:00
Alexander Medvednikov dd29bfe4d2 fix fmt test 2020-02-22 17:07:03 +01:00
Alexander Medvednikov d510cd1e0d fmt: else, for in 2020-02-22 16:59:50 +01:00
Alexander Medvednikov 5fef8390a1 fmt: assoc 2020-02-22 14:39:25 +01:00
Alexander Medvednikov cd41967aa1 fmt: struct pub/mut fields, map init 2020-02-22 14:13:22 +01:00
joe-conigliaro b250ded3fa v2: fix typo & remove unneeded field 2020-02-22 23:08:14 +11:00
joe-conigliaro 30c8a5a010 v2: temp const fix 2020-02-22 23:04:56 +11:00
Alexander Medvednikov 6f577321f1 checker: fix build 2020-02-22 12:58:16 +01:00
Alexander Medvednikov e459e6d24a checker: remove unnecessary exits 2020-02-22 12:57:18 +01:00
yuyi 1a1aa267b7
vlib: remove malloc unsafe warning 2020-02-22 12:41:24 +01:00
Alexander Medvednikov 3c3ca1e61f fmt: fix test 2020-02-21 22:56:50 +01:00
joe-conigliaro 15c288b444 v2: small type cleanup 2020-02-22 08:50:21 +11:00
yuyi b325320f29
os: minor fixes 2020-02-21 20:14:01 +01:00
Alexander Medvednikov 7acf8efde3 fmt: fix import alias 2020-02-21 20:12:55 +01:00
Alexander Medvednikov 9be87d03f5 type_to_str: fix imported types 2020-02-21 19:56:37 +01:00
Alexander Medvednikov e0c6766a79 make "unreachable code" a warning in non-prod builds 2020-02-21 18:55:18 +01:00
Alexander Medvednikov 1d90c1cbbf nice 2020-02-21 18:15:41 +01:00
Alexander Medvednikov 4c95e59d5c fmt, doc: &; update 0.2 roadmap 2020-02-21 18:13:34 +01:00
Alexander Medvednikov 9e6773cba8 fmt: optionals; none 2020-02-21 17:52:20 +01:00
Alexander Medvednikov d075be73e8 fmt: single line if 2020-02-21 16:48:45 +01:00
yuyi 15a2927f09
optimize table.all_test_function_names 2020-02-21 16:29:41 +01:00
Alexander Medvednikov e9931e6f84 fmt: wrap_long_line() 2020-02-21 16:14:15 +01:00
Alexander Medvednikov 728aeb8092 fmt: wrap long lines 2020-02-21 15:32:48 +01:00
Alexander Medvednikov b309e7d0e5 type_to_str() 2020-02-21 14:47:42 +01:00
Alexander Medvednikov 6dac2edeef checker: is_number() 2020-02-21 13:44:03 +01:00
yuyi 527377dc86
fix os_test.v 2020-02-21 12:24:13 +01:00
Delyan Angelov d90a291c5e
ui: cleanup warnings from glm module 2020-02-21 12:20:59 +01:00
ka-weihe 6b706a0c99
Add FastestHash to cheaders.v 2020-02-21 12:20:03 +01:00
joe-conigliaro 8bb8b7d76e v2: add ability to store extra information with Type such as optional 2020-02-21 21:44:06 +11:00
Alexey 8677a5981c
os: use unified way to deprecate functions 2020-02-20 23:00:02 +01:00
Delyan Angelov 88b402fcf8
bugfix: v should not panic when encountering a file that consists only of comments 2020-02-20 22:59:47 +01:00
Alexander Medvednikov e56bf42270 v2: xor, for x = ... 2020-02-20 21:28:08 +01:00
Alexey c85ccad0a6
string: update check if a char is a space 2020-02-20 20:14:54 +01:00
Alexey e4de1e1e89
string: add more test cases 2020-02-20 20:14:21 +01:00
Alexander Medvednikov 7705281459 map: use hashmap instead of b-tree 2020-02-20 20:05:06 +01:00
Alexander Medvednikov ab8d883fee fix wyhash.h 2020-02-20 18:45:44 +01:00
Alexander Medvednikov 5d5373764e embed wyhash.h 2020-02-20 18:38:05 +01:00
Alexander Medvednikov f413b2fa49 Revert "map: use hashmap instead of b-tree"
This reverts commit 34d926350b.
2020-02-20 17:58:17 +01:00
ka-weihe 34d926350b
map: use hashmap instead of b-tree 2020-02-20 17:28:20 +01:00
Alexander Medvednikov e35f8e9e23 checker: return errors 2020-02-20 17:05:16 +01:00
Alexander Medvednikov 296e736f5b checker: minor fixes 2020-02-20 16:16:44 +01:00
joe-conigliaro 72bbec89a9 v2: fix error in checker, continue instead of break 2020-02-21 00:20:08 +11:00
joe-conigliaro 6f7c103e50 v2: checker use kind instead of idx 2020-02-20 23:27:23 +11:00
joe-conigliaro e7e2c68d09 v2: allow type with str method to be used as fn string argument 2020-02-20 23:18:55 +11:00
Alexander Medvednikov c099cd8bf6 pratt: fix precedence 2020-02-20 12:59:05 +01:00
Alexander Medvednikov 0074976636 checker: exit if there are errors 2020-02-20 12:05:53 +01:00
yuyi 8be07194c7
string: fix capitalize 2020-02-20 11:33:38 +01:00
yuyi d51019dd77
unify vexe_path 2020-02-20 11:33:01 +01:00
joe-conigliaro fcd97f513a v2: module/type/fn name fixes, compile fixes 2020-02-20 21:13:18 +11:00
joe-conigliaro aab1045045 v2: reorder types idxs, > string defined with v struct. rm unresovled 2020-02-20 11:39:59 +11:00
penguindark d2cb5ad725
math.bits: make certain functions public + small fixes 2020-02-20 01:31:42 +01:00
Alexander Medvednikov 92e3e48bce v2: checker: [] and in 2020-02-19 21:13:42 +01:00
Alexander Medvednikov e30bd04579 fix fmt test 2020-02-19 19:57:21 +01:00
Alexander Medvednikov ec3d67c19f checker: print multiple errors; none 2020-02-19 19:54:42 +01:00
SleepyRoy d91945cc99
parser: some pure logic code simplifications 2020-02-19 19:43:57 +01:00
Alexander Medvednikov 31b74f02b6 doc: handle submodules 2020-02-19 16:21:46 +01:00
Alexander Medvednikov 092c09d81f vdoc using the new parser 2020-02-19 16:13:34 +01:00
yuyi 391da0ba07
string: optimize starts_with and ends_with 2020-02-19 15:18:09 +01:00
joe-conigliaro e4179c0008 v2: more array init & index expr fixes 2020-02-20 00:34:44 +11:00
joe-conigliaro 478c48cd6f Merge branch 'master' of https://github.com/vlang/v 2020-02-19 21:45:45 +11:00
joe-conigliaro 69634c60b3 v2: start to fix index expr for map/array/fixed array 2020-02-19 21:45:06 +11:00
joe-conigliaro 42399d24d9 v2: fix index expr for fixed array & map 2020-02-19 21:39:30 +11:00
Alexander Medvednikov 082acfad49 v2: fix more ast positions 2020-02-19 11:31:33 +01:00
Alexander Medvednikov bc11419ff9 v2: fix for position and check 2020-02-19 11:06:36 +01:00
joe-conigliaro 042bce4b6c v2: dont preifx C fns with module & add todo 2020-02-19 18:08:08 +11:00
joe-conigliaro 83bfd0805e v2: prefix functions with module, except in main & builtin 2020-02-19 17:16:38 +11:00
joe-conigliaro 9b271d1728 v2: remove left over testing printlns 2020-02-19 16:06:16 +11:00
joe-conigliaro f91bded9b3 v2: add missing table/modules.v 2020-02-19 13:11:55 +11:00
joe-conigliaro b62a90a212 v2: module/import fixes, use parent_idx instead of parent ptr to remove need to preallocate types array 2020-02-19 13:09:35 +11:00
Alexey 200d3e6446
vfmt: process imports and module name 2020-02-18 22:35:14 +01:00
SleepyRoy aaf3ced750
parser: add type check for +=, -=, *=, /= 2020-02-18 22:14:52 +01:00
Alexander Medvednikov 19520ccf4e v2: for in checker 2020-02-18 21:59:42 +01:00
Alexey 39c4842bf9
vfmt2: skip arg type if possible 2020-02-18 21:02:43 +01:00
Alexander Medvednikov c314ab7b60 fix cmdline_test.v 2020-02-18 20:31:15 +01:00
Alexander Medvednikov 31c1483b9d vfmt2: fn args, comments 2020-02-18 20:20:15 +01:00
Alexander Medvednikov 480af3f381 v2: checker fixes 2020-02-18 20:06:01 +01:00
Delyan Angelov 290feaac51
vfmt2: allow running the new vfmt with 'v fmt -2' 2020-02-18 20:00:06 +01:00
Delyan Angelov b991ca4ebc
vfmt2: more convenient way to test multiple files for correct formatting 2020-02-18 17:54:14 +01:00
Alexander Medvednikov 4e9bfa95ec v2: the new parser can now parse the entire V compiler 2020-02-18 17:45:59 +01:00
Alexander Medvednikov 4de8d3ae8c parser: short struct syntax for all structs 2020-02-18 16:25:09 +01:00
joe-conigliaro 67756c53dc
v2: more cleanup (#3765) 2020-02-18 18:58:20 +11:00
yuyi 392eb1fb55
fix vlib/compiler/aparser.v (#3764) 2020-02-18 18:45:04 +11:00
Alexander Medvednikov ed01ab763c v2/vfmt2: more fixes 2020-02-18 03:28:41 +01:00
joe-conigliaro ecb0af36b3
v2: cleanup old & unused code, add new simple tmp vars in cgen 2020-02-18 03:17:21 +01:00
vitalyster 2e1dbd9f5a
windows: use %USERPROFILE% for os.home_dir() 2020-02-18 02:12:10 +01:00
Alexander Medvednikov 2ea2fed8a5 vfmt: minor clean up 2020-02-17 22:52:48 +01:00
Alexander Medvednikov 59beec8fae new vfmt using the new parser 2020-02-17 22:50:11 +01:00
prime31 a2838ae6f3
array: add `array.trim()` 2020-02-17 20:31:40 +01:00
yuyi 6849a4e770
filepath: path separator (#3756) 2020-02-17 20:31:23 +01:00
Daniel Däschle 6079025985
gg: add option to decorate window 2020-02-17 20:29:09 +01:00
Alexander Medvednikov 53f8ae6517 fix prod build 2020-02-17 14:30:01 +01:00
Alexander Medvednikov 1dd6491a2f v2: more parser fixes 2020-02-17 14:15:49 +01:00
joe-conigliaro d7f74ecf52
v2: move more type handling to checker + some clean up 2020-02-17 12:25:18 +01:00
penguindark 80861f2219
scanner: exponent without sign 2020-02-17 02:35:01 +01:00
joe-conigliaro 1007dd8f23
v2: update parse type not to prefix builtin types with module 2020-02-16 16:16:19 +01:00
Delyan Angelov 195f3f465b
option to disable bounds checking; examples/path_tracing.v: optimizations 2020-02-16 16:13:45 +01:00
yuyi e272a10bda
vfmt fixes 2020-02-16 12:42:28 +01:00
Alexander Medvednikov 9eeb3dfe7e v2: temporary string cast fix 2020-02-16 12:38:15 +01:00
Alexander Medvednikov 6d8ad58515 v2: mod.Type 2020-02-16 12:31:44 +01:00
joe-conigliaro dc90f4f4a6
v2: remove unresolved types; handle types in checker; add ast.scope 2020-02-15 13:37:48 +01:00
Alexander Medvednikov 8dd905a14d v2: more parser fixes 2020-02-13 14:08:19 +01:00
Alexey 8d76f7d195
v2: remove redundant EOL normalization in cgen test 2020-02-12 23:19:17 +01:00
Alexander Medvednikov 9d46fb9f90 v2: [] expr for known arrays; p.expected_type 2020-02-12 17:39:51 +01:00
Delyan Angelov 0ad5d53423
net.http: more robust handling of relative /path URL redirects 2020-02-12 14:52:39 +01:00
penguindark 67e7ad13de
math.bits: added missing functions and test 2020-02-12 11:32:03 +01:00
Alexander Medvednikov d9cf98f772 v2: imports 2020-02-12 01:16:38 +01:00
Alexander Medvednikov 0ec5680156 array: bring back reduce test 2020-02-11 13:22:22 +01:00
Alexander Medvednikov 17212f816c v2: high order functions 2020-02-11 13:21:41 +01:00
Alexander Medvednikov 2838d12227 v2: fn_args() 2020-02-11 13:03:14 +01:00
joe-conigliaro d25a0e30dc
v2: make index_expr return array array element type 2020-02-11 12:59:40 +01:00
Alexander Medvednikov 9610821884 v2: defer; match a,b; if x := 2020-02-11 10:26:46 +01:00
joe-conigliaro f7b80c3c62 v2: fix fixed array parsing 2020-02-11 14:45:33 +11:00
Alexander Medvednikov 2d7c80bbc3 v2: match sum type; { x | } 2020-02-11 00:07:01 +01:00
Alexander Medvednikov a21e3d77e9 fix prod build 2020-02-10 23:47:42 +01:00
Alexander Medvednikov 747f6829ab v2: enum decl; type decl; [start..end] fix; %= 2020-02-10 23:19:50 +01:00
Alexander Medvednikov 26cfaa150e v2: match expr; enum val; string formatting 2020-02-10 20:33:46 +01:00
Nicolas Sauzede d51c159160
math: add sqrtf 2020-02-10 18:48:44 +01:00
yuyi c1c2b648ab
os: typo in wait 2020-02-10 18:48:01 +01:00
Alexander Medvednikov d5f90ef64b v2: handle unresolved consts 2020-02-10 18:43:25 +01:00
joe-conigliaro bf5ed5e451
v2: fix array index, for loop, add cast expr & other minor fixes 2020-02-10 14:43:17 +01:00
Alexander Medvednikov c9f619dc72 v2: parse `filter()` 2020-02-10 14:42:57 +01:00
Alexander Medvednikov 3f6ccd3120 v2: minor fixes 2020-02-10 13:58:24 +01:00
radare 7dc040b01c fix -prod on OpenBSD 2020-02-10 08:57:35 +01:00
joe-conigliaro e274c5c485 v2: type sys - store type idx/ptr in int & add helpers 2020-02-10 08:32:08 +01:00
penguindark 9845fd1cf5
math.bits: tests 2020-02-09 21:16:03 +01:00
Delyan Angelov f76651604d
compiler: bugfix for raw'"' 2020-02-09 16:29:05 +01:00
joe-conigliaro 94537c5901
compiler: scope type alias to module 2020-02-09 15:40:31 +01:00
lutherwenxu 9332a83ce6
move v.v to cmd/v 2020-02-09 10:08:04 +01:00
joe-conigliaro 7583c350b8
compiler/math.bits: use max u64 consts 2020-02-09 09:25:27 +01:00
Alexey 1eeee40278
string: split into lines correctly 2020-02-09 09:23:57 +01:00
Delyan Angelov 4bb5d7de8b
tooling: use term.header for tests 2020-02-08 17:01:10 +01:00
Delyan Angelov a02e1e0af2
compiler: more actionable error message, when fn main is missing 2020-02-08 17:00:13 +01:00
joe-conigliaro a2d2586331
v2: map / string / builtin type fixes 2020-02-08 16:59:57 +01:00
joe-conigliaro e01c76c895
v2: fix type resolving 2020-02-08 12:14:53 +01:00
joe-conigliaro 9e9bdc32ea
v2: lots of small fixes parent method/field resolution 2020-02-08 09:50:12 +01:00
Alexander Medvednikov ea9961a8fb fix term_windows.v 2020-02-07 23:16:34 +01:00
Major Taylor e9827f5a34
vweb: fix typo in 'assets.v' 2020-02-07 23:12:30 +01:00
Alexander Medvednikov 8f9979eb8d fix time_windows.v 2020-02-07 23:11:15 +01:00
Alexander Medvednikov 18c440c990 fix int_test.v 2020-02-07 22:16:14 +01:00
Alexander Medvednikov d66bc24e7f remove `as` casts for basic types 2020-02-07 22:10:48 +01:00
Alexander Medvednikov f782388148 v2: minor fixes 2020-02-07 21:29:28 +01:00
joe-conigliaro 35bef514b0
v2: checker & unresolved fixes & small updates 2020-02-07 18:46:42 +01:00
Don Alfons Nisnoni 36e636743b
term: header() 2020-02-07 18:46:20 +01:00
Alexander Medvednikov 0510bc7744 fix int.v 2020-02-07 14:57:48 +01:00
Alexander Medvednikov c8dcbcb649 parser: allow `as` in consts 2020-02-07 14:53:07 +01:00
Alexander Medvednikov 9034b1fd08 v2: match cgen; use `as` for casting 2020-02-07 14:50:52 +01:00
Alexander Medvednikov 18a3961992 array.v: use `as` cast 2020-02-07 09:38:28 +01:00
Alexander Medvednikov b23854b2ab array.v: fix the build 2020-02-07 09:22:52 +01:00
Alexander Medvednikov f241945d70 v2: `as` cast 2020-02-07 09:19:45 +01:00
Alexander Medvednikov bb60b3081f v2: parse builtin successfully 2020-02-07 07:34:18 +01:00
Delyan Angelov 2ce6b190dd
@VMODULE relative paths in #flag lines 2020-02-06 17:38:35 +01:00
joe-conigliaro 67a13fc916
v2: start impl multi assign 2020-02-06 17:38:02 +01:00
Alexey 65744207fc
time: reorganize module 2020-02-06 14:19:44 +01:00
joe-conigliaro d9e92a08cb
v2: use pointer to table.type, fix unresolved array/map sub-types 2020-02-06 13:57:35 +01:00
Alexander Medvednikov 6c3613407d vweb: fix header.html 2020-02-06 10:41:10 +01:00
Alexey 91e181b14a
time: return optional value in `parse` and `parse_iso` functions 2020-02-06 10:22:00 +01:00
Delyan Angelov 1618596218
os: fix compiler warnings when just importing os 2020-02-05 11:23:49 +01:00
Alexander Medvednikov 06b5f43e48 builtin: remove unneeded casts 2020-02-05 11:22:24 +01:00
Alexander Medvednikov 2b433cdf64 v2: match, <<=, >>=, |=, ~, unsafe, map init 2020-02-05 10:00:14 +01:00
Alexey a61c9c617d
time: use `_mkgmtime` and `timegm` to calculate unix time 2020-02-05 06:13:11 +01:00
Nicolas Sauzede 9d4c943d64
compiler: add very simple nameof token to get type name as string 2020-02-05 06:12:33 +01:00
Alexander Medvednikov c595c9eee1 builtin: bring back old hex() 2020-02-04 20:23:03 +01:00
Alexander Medvednikov f1a0c2f1af v2: parse optionals 2020-02-04 20:22:00 +01:00
Alexander Medvednikov ac5c4e3203 fix prod build 2020-02-04 17:48:15 +01:00
Alexander Medvednikov 80daaff874 v2: scopes, or, in, hex 2020-02-04 17:44:39 +01:00
Alexander Medvednikov 9b60a50d07 v2: maps, <<, >>, method calls 2020-02-04 12:50:58 +01:00
vitalyster 21b54723e4
time: fix timezone 2020-02-04 12:17:04 +01:00
joe-conigliaro 85e4e4cb40
v2: resolve unresolved call expression types & add test 2020-02-04 12:03:12 +01:00
Alexander Medvednikov 83f0c228e9 v2: parse builtin.v, cfns.v float.v 2020-02-04 09:54:15 +01:00
Alexander Medvednikov 432ee93916 v2: break, continue, for in fixes, fixed size array, | 2020-02-04 08:29:50 +01:00
Alexander Medvednikov c7f07cd0b6 v2: postfix_expr() checker 2020-02-04 07:37:41 +01:00
origel 4d6958381d
glfw: window add set resize callback method 2020-02-04 05:40:16 +01:00
joe-conigliaro 75eebb516f
fix bug in levenshtein distance & add tests 2020-02-04 04:21:40 +01:00
joe-conigliaro 21b6dace8f
v2: remove duplication & slight cleanup. share prefs with v1 2020-02-03 12:09:17 +01:00
Alexander Medvednikov f1f8a2e4dd fix prod build 2020-02-03 12:06:25 +01:00
Alexander Medvednikov 64bfae0a0e 2 2020-02-03 11:54:41 +01:00
Alexander Medvednikov 54605823f9 rem1 2020-02-03 11:45:25 +01:00
Alexander Medvednikov 01f45f063e cgen: remove the checker 2020-02-03 11:36:03 +01:00
Alexander Medvednikov 40fd918b58 v2: cgen: remove type resolving for VarDecl 2020-02-03 11:32:00 +01:00
Alexander Medvednikov 6489b48c9c v2: clean up IndexExpr type check 2020-02-03 11:29:50 +01:00
Alexander Medvednikov e5f5117a7e fix prod build 2020-02-03 11:17:12 +01:00
Alexander Medvednikov 60a4f668b7 v2: fix FnDecl ref bug 2020-02-03 11:13:36 +01:00
Alexander Medvednikov 2af3c0ede4 hmm 2020-02-03 10:58:15 +01:00
Alexander Medvednikov 1ac7a95f9b fix array_test.v 2020-02-03 10:27:06 +01:00
Alexander Medvednikov 50b704c5dd sum type: mut 2020-02-03 09:25:26 +01:00
Alexander Medvednikov 34e9eb32bb sum types: allow modification in `match` 2020-02-03 09:11:10 +01:00
Alexander Medvednikov d918903252 v2: move index expr type check 2020-02-03 07:45:09 +01:00
joe-conigliaro 2d5c70832c
v2: initial module support 2020-02-03 07:31:54 +01:00
Alexander Medvednikov d87cb3f672 v2: consts, $if, attributes, globals, if/for type check, prefs 2020-02-03 07:03:32 +01:00
joe-conigliaro 7808f4c272
hash.wyhash: implement rand function from wyhash original impl 2020-02-03 06:02:28 +01:00
joe-conigliaro 7f709c3285
update copyright years 2020-02-03 05:00:36 +01:00
Delyan Angelov da21b50750
gg,os: minimize memory allocation 2020-02-03 04:01:39 +01:00
Alexander Medvednikov 71653273f6 v2: range, *, function object 2020-02-02 14:32:12 +01:00
Don Alfons Nisnoni 4fc52948b3
mysql: wrap more APIs & organize module 2020-02-02 12:39:57 +01:00
Alexander Medvednikov 377d8dc42c v2: parser_test: run all tests 2020-02-02 08:06:21 +01:00
Alexander Medvednikov 9f4661391d v2: simplify the type system; an initial version of the V interpreter 2020-02-02 07:56:18 +01:00
toman222 932392a7fd
sqlite: modify exec functions + other fixes 2020-02-02 02:56:09 +01:00
Leah Lundqvist 0ef1ba9ad2
gg: added draw_empty_rounded_rect 2020-02-02 02:55:29 +01:00
Leah Lundqvist 4ca283380a
gg: scissor 2020-02-02 02:54:41 +01:00
joe-conigliaro 554d1dd7c6
compiler: make optionals work with multi return 2020-02-02 02:53:23 +01:00
prime31 f0efb42a30
cc: add file style selector to clang-format 2020-02-02 02:51:27 +01:00
joe-conigliaro 8bd17c8016
crypto.rand: update slice method to slice syntax & fix typo in error 2020-02-02 02:50:46 +01:00
joe-conigliaro 05374e162e
compiler: attribute test - fix typo in function name 2020-02-01 18:59:34 +11:00
Delyan Angelov 696926a557
compiler: add support for -pretty_c option 2020-02-01 06:37:22 +01:00
radare bf9eefa694
parser: resolve optional enum type 2020-01-31 16:00:31 +01:00
radare 2fbfbf45c7
os: simplify read_lines( 2020-01-31 15:59:23 +01:00
Alexander Medvednikov 5f76bd04f9 V 0.1.25 2020-01-31 15:31:15 +01:00
Leah Lundqvist aa625bc22c
gg: roundrects 2020-01-31 03:43:46 +01:00
penguindark de832375b7
regix: fixes and optimizations 2020-01-31 02:29:54 +01:00
ka-weihe 23dd6e2294
hashmap: optimization of rehashing 2020-01-31 02:29:35 +01:00
joe-conigliaro 80d936adc1
fix attributes on public structs & enums 2020-01-30 01:27:13 +01:00
Leah Lundqvist 6c5879add9
gg: filled arcs and circles 2020-01-30 01:26:45 +01:00
Leah Lundqvist ed55778d2a
math: fast aprox cos and sin 2020-01-29 05:12:43 +01:00
Alexey 5c598a3085
term: reorganize the module 2020-01-29 05:12:12 +01:00
ka-weihe a14a5fbf95
hashmap: change hash-function to wyhash and add benchmarks 2020-01-29 04:06:05 +01:00
div72 5c29e7b257
http: fixed a bug with ignored user-agent 2020-01-29 04:05:37 +01:00
joe-conigliaro 0f1b0f7ed4
wyhash: update benchmark file location in comment 2020-01-29 10:12:44 +11:00
Alexey 5c00851b44
term: implement `get_terminal_size` for Windows 2020-01-28 23:44:57 +01:00
joe-conigliaro 007baa2305
hash: add wyhash + benchmark, add fnv1a, add u64.hex() (#3584) 2020-01-28 23:43:09 +01:00
penguindark 5a2534122e regex: named capturing groups, small fixes 2020-01-28 20:34:11 +01:00
Delyan Angelov 9ac0c54eb0 term: fix too long h_divider lines in CI 2020-01-28 20:25:17 +01:00
Mateo Pidal 78c96fe989 term: get_terminal_size() 2020-01-28 05:18:19 +01:00
prime31 08d3401092 array: clear() 2020-01-27 22:31:48 +01:00
Leah Lundqvist 8986633624 gg: draw_arc() 2020-01-27 20:42:32 +01:00
Delyan Angelov cce0b2425e compiler: prevent vars named 'char' to cause a C error 2020-01-27 20:26:07 +01:00
ka-weihe 31899eac2a hashmap: new load_factor and optimizations 2020-01-27 16:56:18 +01:00
Mike Redko 11aa5343b2 update copyright year in asm.v 2020-01-26 23:33:47 +01:00
Delyan Angelov e9d3134814 glfw: implement glfw.window.set_should_close 2020-01-26 23:33:12 +01:00
Delyan Angelov 869c8e331e stbi: make compilation faster by generating a stbi.o file 2020-01-26 12:41:43 +01:00
Khairul Azhar Kasmiran edc44993d1 string: add another test for split_nth() 2020-01-25 19:12:36 +01:00
penguindark 15a63b5bcb regex fixes 2020-01-25 19:12:23 +01:00
Alexander Medvednikov 222fc4b04f parser: no struct fields warnings in C struct initializations 2020-01-25 07:15:49 +01:00
joe-conigliaro 71b50ae7fd fix empty config struct with msvc 2020-01-25 02:11:07 +01:00
ka-weihe 7d797090ff map: bring back b-tree 2020-01-24 20:13:59 +01:00
ka-weihe 6fd175d9be hashmap: new and fast hashmap with dynamic size 2020-01-24 20:13:17 +01:00
Delyan Angelov 219239eadc string.split_nth - return the rest of the string as the last value in the result array 2020-01-24 20:12:36 +01:00
Alexander Medvednikov f55646746c handle empty config structs 2020-01-24 18:57:32 +01:00
joe-conigliaro 2897bac549 crypto: remove extraneous casts & rename rand_lin to rand_linux 2020-01-23 22:49:13 +01:00
nsauk dd61a22367 compiler: remove --lzma option from upx call 2020-01-23 22:06:49 +01:00
Delyan Angelov 7b18e5d198 compiler: add 'use -- instead of -= 1' 2020-01-23 21:09:47 +01:00
joe-conigliaro 6d6b2fdda8 compiler: fix depgraph. will also make it work with new b-tree map 2020-01-23 21:08:17 +01:00
joe-conigliaro 20f6cdc53a compiler: fix module alias resolution 2020-01-23 21:07:53 +01:00
toman222 0a93d3b714 sha512: remove unnecessary cast warnings 2020-01-23 21:07:16 +01:00
Henrixounez f3f50349b2 compiler: fix check restricted names in for..in statement 2020-01-23 21:06:57 +01:00
Shun Sakai c8c43a2475 update copyright year 2020-01-23 21:04:46 +01:00
joe-conigliaro 82da001faf
sokol: fix issue causing win test to fail introduced in 0502a54 2020-01-23 21:56:12 +11:00
joe-conigliaro 543e8dc78a
v2: fix bug in scanner, introduced in da9b639 (_ in num literals) 2020-01-23 21:47:13 +11:00
penguindark da9b6394e8 0bxxxx binary literal support; _ in literals (1_000_000) 2020-01-23 03:28:25 +01:00
S-YOU 7b345e207d pico.v and dependencies 2020-01-23 03:26:30 +01:00
toman222 5c6032d272 math.bits: fix warnings regarding unnecessary casts 2020-01-22 22:06:40 +01:00
Alexander Medvednikov a6e1a74f1d gg: windows fix 2020-01-22 21:36:52 +01:00
Alexander Medvednikov 59b3fc75d0 tmp fix generic test 2020-01-22 21:30:35 +01:00
Alexander Medvednikov 0502a54a36 new gg/freetype modules with sokol/fontstash backends 2020-01-22 20:54:36 +01:00
Abdullah Atta 43ba6766ba improve eventbus 2020-01-22 17:41:08 +01:00
Charles WANG 136c469ef7 array: more eq functions 2020-01-21 18:49:30 +01:00
Jeremy Andrews dd5751df0c v test v has been deprecated 2020-01-21 18:48:32 +01:00
Delyan Angelov f4834bd85d compiler: fix stuck parsing of 'enum{}' + handle such bugs 2020-01-21 18:47:52 +01:00
KJ Lawrence ae3d84df6b os: add open_file function 2020-01-21 16:58:47 +01:00
d2verb 5deb29a7c9 compiler: update cheaders.v for NetBSD support 2020-01-21 16:55:07 +01:00
Delyan Angelov d92291dd76 repl: execute REPL tests ~1.5x to 2x faster 2020-01-20 23:04:26 +01:00
Delyan Angelov 64a9f43405 Make REPL tests parallel too 2020-01-20 17:06:36 +01:00
nsauk 84438c0139 time: add str() 2020-01-20 15:06:15 +01:00
Alexander Medvednikov d1664dc511 freetype: max_width 2020-01-20 05:14:49 +01:00
Alexander Medvednikov ab368bdc53
array: test `arr << arr` 2020-01-19 22:15:37 +01:00
Delyan Angelov 0d52cc97e4 sync: make new_mutex() and new_waitgroup() return &Mutex and &Waitgroup 2020-01-19 20:32:22 +01:00
Delyan Angelov bc64263dd8 freetype: fix placement of highdpi and lowdpi texts 2020-01-19 20:30:53 +01:00
Delyan Angelov bfaf2a4a62 freetype: cleanup calculation of text y position while drawing the text 2020-01-19 16:01:08 +01:00
sha0coder 990e44cd14 ftp: protocol compatibility 2020-01-19 13:53:13 +01:00
joe-conigliaro 3a8b437b8d v2: move array_init to checker 2020-01-19 13:52:34 +01:00
Alexander Medvednikov cf1fd6e950 array: fix arr << arr bug 2020-01-19 12:11:58 +00:00
Alexander Medvednikov b1602c72ad v2: a simple fix 2020-01-19 02:44:18 +01:00
joe-conigliaro 09d1eb7c55 v2: type checker + lots of other changes 2020-01-18 23:26:14 +01:00
Delyan Angelov 8c1b03c731 freetype: text_size() so that users can retrieve the vertical size of a text too 2020-01-18 20:08:11 +01:00
S-YOU 09e390eac5 remove string clone because cJSON already did internally 2020-01-18 17:40:58 +01:00
penguindark 36660ce749 regex: bug fixes, docs 2020-01-18 07:38:00 +01:00
Alexander Medvednikov b2be36d92e fix sokol on windows 2020-01-18 06:27:39 +01:00
Delyan Angelov 24d34a4f2c sokol: fix building of examples and ci tests 2020-01-17 20:05:45 +01:00
Alexander Medvednikov 3d57d3bb7b cc.v: fix C error message part 2 2020-01-17 19:44:03 +01:00
Alexander Medvednikov 2cd24ea722 cc.v: fix C error message 2020-01-17 19:30:45 +01:00
vitalyster 436603aa44 compiler: show last 200 lines in partial output 2020-01-17 14:09:37 +01:00
Delyan Angelov ddc04979a4 deprecate `v runrepl` in favour of `v repl` 2020-01-17 14:09:26 +01:00
Alexander Medvednikov 62481e88f3 sokol and fontstash modules 2020-01-16 20:45:52 +01:00
Delyan Angelov cc606623bb enable `$if !network {` checks in net tests 2020-01-16 19:44:16 +01:00
Alexander Medvednikov e1132156f5 make sqlite.DB public; make string.left/right private 2020-01-16 18:41:38 +01:00
Chris Watson 84a6c019e8 http: refactor and reduce duplication 2020-01-16 18:16:11 +01:00
Alexander Medvednikov 756c6d2858 freetype: fix align.right rendering 2020-01-16 17:03:34 +01:00
Delyan Angelov 57f72f6cd8 compiler: support optional custom comptime defines: $if custom ? { 2020-01-16 15:28:23 +01:00
penguindark d6448ee5d6 regex: update README.md 2020-01-16 02:07:36 +01:00
penguindark 25fabac059 regex 0.9c 2020-01-16 00:39:33 +01:00
Alexander Medvednikov de3ad2b04f fix vweb tutorial project; clean up gg functions a bit 2020-01-15 22:17:45 +01:00
Mateo Pidal 502ee8a56c android symlink fix 2020-01-15 19:40:03 +01:00
Kai 9f31390ff1 http: PATCH, DELETE, and PUT methods 2020-01-14 23:19:50 +01:00
Delyan Angelov 4838dda59a compiler: make [live] fn unlock its mutex on early return 2020-01-14 18:58:46 +01:00
Swastik Baranwal 26374971ab time: fix logic 2020-01-14 18:12:28 +01:00
Swastik Baranwal 2741c0b211 string: new type conversion functions 2020-01-14 18:05:38 +01:00
Alexander Medvednikov 6b3f54692a allow short struct initialization with Config structs 2020-01-14 15:34:47 +01:00
Alexander Medvednikov 0b235cc893 temporary nil fn check 2020-01-14 13:15:09 +01:00
penguindark 25e7ceeef0 regex 0.9b 'replace' and 'find_all' added 2020-01-14 02:45:08 +01:00
Mateo Pidal e87e5e33a7 fix symlink for Termux on Android 2020-01-14 01:34:30 +01:00
Delyan Angelov fcc10d6358 gg: fixes same image twice lead to invisible rectangles sometimes 2020-01-13 19:59:31 +01:00
invisiblesoldiers 74713ffb62 encoding.binary: removed unneeded castings, rename function 2020-01-13 19:58:14 +01:00
Delyan Angelov 4a82770f16 fix warnings about clipboard when building ui on linux 2020-01-13 17:53:56 +01:00
Alexander Medvednikov 4c55d3677d ui: skip initialization warning for now 2020-01-13 13:40:50 +01:00
penguindark 8ea0c08a38 vlib.regex module in pure V 2020-01-13 13:30:41 +01:00
Alexander Medvednikov 6733b12ec3 android: use __ANDROID__ 2020-01-13 00:20:16 +01:00
Alexander Medvednikov e72dfc3212 freetype: remove unused import 2020-01-12 20:08:24 +01:00
Alexander Medvednikov 4c7df98ac9 make private struct warning an error 2020-01-12 19:59:57 +01:00
Alexander Medvednikov e159347c10 gg: remove 2 prints 2020-01-12 19:54:47 +01:00
Frederico Silva 2678f9289e pg: connect, use password 2020-01-12 19:35:20 +01:00
Delyan Angelov f317b65808 ui: fixes so that the ui demo works on linux too
* Implement os.resource_abs_path/1 .
* Implement glfw.get_window_size and glfw.get_framebuffer_size .
2020-01-12 19:35:06 +01:00
Alexander Medvednikov b6c0b22742 interfaces fixes; freetype.text_width(); gl and stbi fixes 2020-01-12 16:11:28 +01:00
Alexander Medvednikov 938f27e391 remove ui example now that ui has been moved to a separate repo 2020-01-12 03:05:04 +01:00
Delyan Angelov ba699d8b4f compiler: fix error in case of void function used as a value 2020-01-12 01:46:25 +01:00
Don Alfons Nisnoni f7f5f43c48 mysql: add select_db method 2020-01-11 13:25:59 +01:00
Swastik Baranwal e3db628d0c parser: add checks for if statement 2020-01-11 13:21:35 +01:00
Delyan Angelov 06f581e146 vfmt: support for vid like projects having many module main .v files 2020-01-10 23:33:35 +01:00
Swastik Baranwal 5537b09492 parser: add check for string casting 2020-01-10 19:59:15 +01:00
vitalyster 66a6fa163e windows: read console using ReadFile/ReadConsole (#3387) 2020-01-10 14:06:40 +01:00
vitalyster 8412c6f03f windows: println using WriteFile/WriteConsole 2020-01-09 22:47:13 +01:00
Delyan Angelov 7bf49aba54 vv: make warns/errors usable in emacs/vim 2020-01-09 14:08:33 +01:00
Delyan Angelov 7882312697 rename $if mac => $if macos , _mac.v => _darwin.v 2020-01-09 11:12:35 +01:00
Alexander Medvednikov 29564ed63d interface fix 2020-01-09 01:40:10 +01:00
Delyan Angelov c1cc203c17 tools: bugfixes and new features for oldv and performance_compare 2020-01-08 21:45:47 +01:00
Delyan Angelov 0d93eeb3fe compiler: move prelude files to tools/preludes/ 2020-01-08 17:57:41 +01:00
Contextualist 2a98cacecd tools: distinguish complier args and tool args 2020-01-08 17:15:05 +01:00
joe-conigliaro 38e5f0d1cf v: initial type work for methods / struct fields 2020-01-08 17:14:42 +01:00
Alexander Medvednikov e70ef5334a fix array copy; ci: test prebuilt Windows package 2020-01-08 11:33:09 +01:00
Alexander Medvednikov e3275f6083 fix array_test.v 2020-01-08 10:27:20 +01:00
Alexander Medvednikov 3c0fca9258 register methods (wip) 2020-01-08 10:19:18 +01:00
Krzysztof Starzyk 3425934c39 flag: remove println from parse_raw 2020-01-07 18:37:01 +01:00
Alexander Medvednikov 9861b24bc3 struct field check + enable v2 again 2020-01-07 16:09:20 +01:00
joe-conigliaro 2ab7b40f2f v: clean up enum vals; make array_init return array 2020-01-07 15:46:57 +01:00
Delyan Angelov fb0817277f compiler: force .exe extension, when compiling on windows 2020-01-07 15:42:14 +01:00
Alexander Medvednikov d823d82207 array type fix; method registration 2020-01-07 13:10:09 +01:00
Delyan Angelov 6d30697d9b time: move time.random() to time.misc module
avoids importing rand to programs that do not need pseudo random generation).
2020-01-07 12:58:24 +01:00
Shivanjan Chakravorty a0c8ad7398 post increment/decrement repl fix 2020-01-07 12:26:49 +01:00
Alexander Medvednikov 706c6066d5 index expression 2020-01-07 12:18:13 +01:00
joe-conigliaro b7509577b5 v: cleanup & fixes. update variadic & multiple return 2020-01-07 12:10:07 +01:00
Alexander Medvednikov 8c5923297e do not run cgen_test.v on windows 2020-01-07 01:57:38 +01:00
Alexander Medvednikov 69f3c42b99 method calls; skip string interpolation for now; fix () 2020-01-07 01:08:24 +01:00
Alexander Medvednikov 48ea1153a5 for ;; syntax 2020-01-07 00:14:19 +01:00
Alexander Medvednikov 1e28c1d4fd clean up the parser a bit; run vfmt; add x64 to ci 2020-01-06 23:15:37 +01:00
Alexander Medvednikov b815878d60
simplify and improve pratt 2020-01-06 16:13:12 +01:00
r00ster 025efcb731 os: add is_executable, is_writable and is_readable 2020-01-06 09:15:06 +01:00
Alexander Medvednikov 126289c19b make the unchanged mutable variable error a warning in non-prod builds 2020-01-06 00:28:29 +01:00
Delyan Angelov 4c3df963fa v repl: fix println regression on linux 2020-01-05 22:49:09 +01:00
Delyan Angelov 8053175ead android: fix os.create and builtin 2020-01-05 20:13:35 +01:00
Delyan Angelov c24a1b3786 compiler: fix unused import warnings 2020-01-05 16:29:33 +01:00
Ricardo Tomasi 868d6c808b compiler: avoid redeclaration of var during reassignment with optional value 2020-01-05 11:53:40 +01:00
joe-conigliaro 5a6f9024d3 v: small fixes typo & register struct & and add array elem pointer 2020-01-05 11:52:03 +01:00
joe-conigliaro 2061394ad7 v: initial impl of new type sys w/ pointer & placeholder support (#3323) 2020-01-04 17:57:25 +01:00
Delyan Angelov 778a1cc34a make g_str_buf a static buffer of size 1K (#3321) 2020-01-04 17:53:37 +01:00
Alexander Medvednikov 7bc5cfc53a fix windows test 2020-01-04 00:24:30 +01:00
Alexander Medvednikov 3344111a03 minor fixes and cleaning up 2020-01-04 00:06:06 +01:00
Delyan Angelov aeda48d94e vpm: add support for other VCS for modules, like hg
Add ability to pass flags to vpm.

Implement -help , -verbose and -server-url ,
to enable easier diagnostics and testing with a local server.
2020-01-03 22:07:58 +01:00
Delyan Angelov ddd83c2108 pg: add db.exec_param_many() 2020-01-03 22:07:28 +01:00
Delyan Angelov 67f397f888 os: implement os.cachedir() . Use it inside os.tmpdir() too 2020-01-03 19:46:23 +01:00
joe-conigliaro 43895269ff compiler: implement direct cast for sum type 2020-01-03 14:42:48 +01:00
Alexander Medvednikov 520ec0f53a fix cgen_test 2020-01-03 11:41:39 +01:00
Alexander Medvednikov 7c47f345be mingw on macos 2020-01-03 11:38:30 +01:00
joe-conigliaro 343ded18fd parser: dot fix 2020-01-03 11:36:17 +01:00
Alexander Medvednikov 492dfebd15 SelectorExpr; receivers; struct field check; if expression 2020-01-02 20:09:23 +01:00
sh0f 3c65af8b9a cli: fix warning 2020-01-02 18:09:24 +01:00
Charles WANG 7a031d5e23 update and rename ui_win.v to ui_windows.v 2020-01-02 18:09:09 +01:00
Charles WANG 166dc28480 update ui_linux.v: module ui to `uiold` 2020-01-02 18:08:54 +01:00
Alexander Medvednikov a6a9958cfc register fn args; remove dup code 2020-01-02 08:37:41 +01:00
Alexander Medvednikov 460b35137a handle unknown fns; fn.v; type fixes 2020-01-02 08:30:15 +01:00
Alexander Medvednikov e7e07be38c handle unknown functions; fix var types 2020-01-01 23:15:20 +01:00
Alexander Medvednikov b1d6021875 x64 fixes 2020-01-01 22:34:46 +01:00
Alexander Medvednikov 807c16dd1b uiold fixes 2020-01-01 13:27:21 +01:00
Alexander Medvednikov e8bbb00bde ui is in a separate repo for now, rename it to avoid conflicts 2020-01-01 13:14:01 +01:00
Alexander Medvednikov e53bb6a9d4 parser: wrong `else` 2020-01-01 13:12:38 +01:00
Alexander Medvednikov 327314c2c3 parser: unknown function error 2020-01-01 13:08:05 +01:00
sh0f f87177d34d base64: fix warnings 2020-01-01 12:58:32 +01:00
Alexander Medvednikov b7663848ef os: fix create() 2020-01-01 12:57:27 +01:00
Alexander Medvednikov 47908c22df cgen_test: skip empty lines; os: make vc_gen compile 2020-01-01 12:50:25 +01:00
Alexander Medvednikov 78c706ab71 Revert "enable macos syscalls"
This reverts commit d226fa7b17.
2020-01-01 12:24:50 +01:00
Alexander Medvednikov d226fa7b17 enable macos syscalls 2020-01-01 12:10:39 +01:00
Alexander Medvednikov 2f8969c604 time: Windows fix 2020-01-01 12:01:03 +01:00
Alexander Medvednikov 79b4a757c4 fix cgen_test.v 2020-01-01 10:32:22 +01:00
Alexander Medvednikov 4794598d06 if x := opt() {} else {} 2020-01-01 10:31:50 +01:00
Alexander Medvednikov 96d02849aa parser: parse_file(path) 2020-01-01 10:15:05 +01:00
Alexander Medvednikov 87cff0386c time: gmt offset; macos syscalls 2020-01-01 10:09:19 +01:00
sh0f 3c17851200 time: add test for #3291 2020-01-01 08:00:23 +01:00
sh0f a99f214a0f time: fix error: array index out of range 2020-01-01 07:27:48 +01:00
Alexander Medvednikov c75cb86203 0.1.24 2019-12-31 20:49:11 +01:00
Alexander Medvednikov 4d31d5882d x64, v2 backends 2019-12-31 19:42:16 +01:00
Delyan Angelov 222f2f08f6 vfmt: fix formatting of 'import mod as alias' 2019-12-31 19:26:44 +01:00
lutherwenxu 286a0a1371 time: rewrite unix() function 2019-12-31 17:11:47 +01:00
Alexander Medvednikov da5fb5dcbd Revert "x64, v2 backends"
This reverts commit 81ae54d9bd.
2019-12-31 13:23:12 +01:00
Alexander Medvednikov 81ae54d9bd x64, v2 backends 2019-12-31 13:21:22 +01:00
Alexander Medvednikov 907254b9e8 Revert "B-tree map "
This reverts commit 8a4bce667c.
2019-12-31 12:46:56 +01:00
Alexander Medvednikov 4424f83470 os: disable write_bytes_at() and read_bytes_at() for now 2019-12-31 11:43:10 +00:00
Alexander Medvednikov f9cc419dba os: syscalls 2019-12-31 10:16:34 +00:00
joe-conigliaro 80da2341aa v: fix unary `+`,`-` & rename token.TokenKind to token.Kind 2019-12-31 10:53:30 +01:00
Alexander Medvednikov 3a7f1db947 fix parser tests 2019-12-30 17:05:32 +01:00
Alexander Medvednikov 093a025ebf parse_files(); ast.File 2019-12-30 16:55:59 +01:00
Delyan Angelov d2f2ac523f flag: fix displaying of both abbreviated and long options
Add tests for the usage screen
2019-12-30 16:38:32 +01:00
joe-conigliaro d07953b0f0 v: fix postfix unary `++` `--` operators & some cleanup 2019-12-30 15:06:56 +01:00
Charles WANG ca62b66665 sqlite: a minor fix 2019-12-30 10:49:36 +01:00
Delyan Angelov 25beb7b3f4 in errors, print array_ instead of [] in function names 2019-12-30 10:48:08 +01:00
Alexander Medvednikov cba6a6fdea `as` casting 2019-12-30 10:47:34 +01:00
Alexander Medvednikov 2d597d7804 array initialization 2019-12-30 10:37:09 +01:00
Alexander Medvednikov 1d9916f93e fix fn main generation 2019-12-30 09:29:07 +01:00
Alexander Medvednikov f725aa2e8d rename cgen module to gen; jsgen 2019-12-30 09:21:48 +01:00
Alexander Medvednikov edf8a2cd08 fix bool expressions 2019-12-30 08:17:58 +01:00
Alexander Medvednikov 806691c1db for loop; struct decl; struct init; < > <= >= 2019-12-30 08:05:20 +01:00
ka-weihe 8a4bce667c B-tree map 2019-12-30 06:57:56 +01:00
Alexander Medvednikov 2d2e0307b8 fn call; if expression; bool literals; 100k line program gen
fix

yay

lovely
2019-12-30 05:57:36 +01:00
Abdullah Atta 63b70ddb06 move http module to net.http 2019-12-30 05:42:23 +01:00
mY9Yd2 6cee50afda os: fix tmpdir on unix 2019-12-30 05:25:26 +01:00
Ulises Jeremias Cornejo Fandos 89d3075f88 math: update complex operators for multiplication and division 2019-12-30 05:24:30 +01:00
Delyan Angelov a0f32f5c29 tests: improved test output formatting 2019-12-30 05:23:54 +01:00
Abdullah Atta 4f173c8900 vpm: implement & improve install, search, update, remove 2019-12-30 05:22:28 +01:00
Johan Hillerström 2d5f5a0c25 remove debug printing of sum types 2019-12-30 05:21:46 +01:00
radare 49430a5c31 flag help message is now a bit more compact 2019-12-30 05:21:22 +01:00
Alexander Medvednikov 349576b5cd fn call + fn args 2019-12-29 08:47:41 +01:00
Alexander Medvednikov c915c58d12 local vars + Parser.errror() 2019-12-29 07:14:29 +01:00
Alexander Medvednikov c81fbee4ab fix parser_test.v 2019-12-29 06:49:52 +01:00
Alexander Medvednikov 5a6428f1ff AssignStmt 2019-12-29 06:37:08 +01:00
Alexander Medvednikov b5fe40624c staments + a sum type fix 2019-12-28 18:53:08 +01:00
Delyan Angelov 68e1d8e8eb net.ftp: make ftp's tests just compile (not run) on CI 2019-12-28 13:55:53 +01:00
Alexander Medvednikov 48585e54df fix parser_text.v 2019-12-28 13:51:36 +01:00
Alexander Medvednikov 59c784ae57 fix cgen_test.v 2019-12-28 12:06:53 +01:00
Alexander Medvednikov 651c7e8de1 cgen tests 2019-12-28 11:55:14 +01:00
Alexander Medvednikov 379c79025b run vfmt on v/ 2019-12-28 10:38:29 +01:00
Alexey e02d6a3b04 ftp: flatten tests 2019-12-28 09:41:54 +01:00
Delyan Angelov 72acbad3f0 v help: document -verbose flag 2019-12-28 09:41:21 +01:00
Alexander Medvednikov ec6a8cc9fd move ftp to net/ftp 2019-12-28 09:16:27 +01:00
joe-conigliaro a986321b6d v: update parser / token & split parsing into methods 2019-12-28 09:15:32 +01:00
Alexey f40f023487 ftp: cosmetic fixes
Use single quotes for strings.
Use string interpolation instead of concatenation.
Don't print messages in non-debug mode.
Fix typos in error messages.
Add space after comma, add spaces between operators.
extract code to separate functions
2019-12-28 08:53:28 +01:00
Nicolas Sauzede 4925aa594b os: fix deprecated os.dir to work as advertised 2019-12-28 08:49:27 +01:00
joe-conigliaro a214778b74 fix bug with sum type 2019-12-28 08:48:55 +01:00
Don Alfons Nisnoni 06fba73ab9 os: add os.symlink() function 2019-12-27 19:10:06 +01:00
sha0coder 7518d2d0dc FTP module 2019-12-27 19:08:44 +01:00
vitalyster 2f23ee4818 windows: cleanup after bootstrapping with unicode entrypoint 2019-12-27 19:07:31 +01:00
Alexander Medvednikov 796c376408 fix parser_test.v 2019-12-27 18:55:51 +01:00
Alexander Medvednikov 66a07d7fe0 FnDecl, Return, statement block 2019-12-27 18:39:19 +01:00
Delyan Angelov 6c16bac908 vfmt: it can now be used for _platform.v files too, no matter the host os 2019-12-27 17:59:04 +01:00
Alexander Medvednikov 4da21d80e3 fix () warning 2019-12-27 10:16:00 +01:00
Alexander Medvednikov fc5f4ff326 make types.check public 2019-12-27 10:12:40 +01:00
Alexander Medvednikov d27c5eb345 handle floats 2019-12-27 10:09:06 +01:00
Alexander Medvednikov 1af274a714 test_parser + minor fixes 2019-12-27 10:00:44 +01:00
vitalyster 3f0f8bac49 windows: do not link gdi32/shell32 to console applications
* read os.args from argv when we have console
* dynamically load CommandLineToArgvW when we are GUI app
* link gdi32/shell32 in glfw module
2019-12-27 11:27:19 +03:00
Alexander Medvednikov 55dbb8b81c v.types module 2019-12-27 09:09:55 +01:00
Alexander Medvednikov 14e9c3c7bb rename compiler2.parser to v.parser etc 2019-12-27 06:09:16 +01:00
BigBlack 98b81252b7 fix #3217 (string.replace) 2019-12-27 07:20:06 +03:00
Alexander Medvednikov e20ca28d5c fix v prod build 2019-12-27 07:04:41 +03:00
Alexander Medvednikov 0a3adb5de8 ast: return types, variable declaration 2019-12-27 07:01:22 +03:00
BigBlack 320174bd5b fix #3202 2019-12-27 06:09:09 +03:00
Ulises Jeremias Cornejo Fandos 1277ce22f8 math: factorial submodule 2019-12-27 06:08:17 +03:00