Joe Conigliaro
efbf114a2f
checker: ref & deref in prefix expr
2020-03-22 02:41:01 +11:00
penguindark
421f5b6fdf
builtin: int to str without offset buffer
2020-03-21 16:00:58 +01:00
Joe Conigliaro
fc43294efc
checker: deref fix
2020-03-22 01:27:10 +11:00
Joe Conigliaro
9d80d261b9
gen: rename _init() to _vinit() in cheaders.v
2020-03-22 00:22:43 +11:00
Joe Conigliaro
f7042e9038
cgen: sum type cast & map str() receiver
2020-03-21 23:57:11 +11:00
Alexander Medvednikov
0f1371e1c9
cgen: fix tests
2020-03-21 13:56:21 +01:00
ka-weihe
bf97afb9ed
map: small cleanup
2020-03-21 13:55:07 +01:00
Alexander Medvednikov
f962d92623
cgen: use _vinit instead of _init to avoid conflicts on Linux
2020-03-21 13:28:41 +01:00
Joe Conigliaro
eb8d64999f
checker: temp map str() method fix
2020-03-21 22:31:25 +11:00
radare
cc75fe4fe5
builtin: Fix undefined behaviour when allocating empty structs ( #4088 )
2020-03-21 12:24:34 +01:00
Alexander Medvednikov
7b1b647832
parser: disable parser_test.v for now
2020-03-21 11:55:49 +01:00
Alexander Medvednikov
7ad1441c81
cgen: fix the tests
2020-03-21 11:47:23 +01:00
Alexander Medvednikov
b2d1f55702
cgen_test fixes
2020-03-21 11:17:17 +01:00
Alexander Medvednikov
c12985d1d7
cgen: for in; init fixes
2020-03-21 10:22:19 +01:00
Delyan Angelov
ba088056ed
solaris: make 'v test-compiler' pass (stage 2)
2020-03-21 09:48:02 +01:00
Alexander Medvednikov
e57804e6c2
cgen: generate init()
2020-03-21 09:29:16 +01:00
Alexander Medvednikov
c93f515a54
cgen: add _STR definition
2020-03-21 07:10:53 +01:00
Alexander Medvednikov
5f61fbcbe3
fix prod build
2020-03-21 07:04:53 +01:00
Alexander Medvednikov
5072320803
cgen/ast/checker: string interpolation
2020-03-21 07:01:11 +01:00
radare
c21e976cad
builtin: do not use unsafe sprintf/vsprintf functions
2020-03-21 06:37:58 +01:00
Alexander Medvednikov
b4561fa814
Revert "term: make compilable with v2 on windows"
2020-03-20 21:15:45 +01:00
Alexander Medvednikov
0f1f724a91
term: make compilable with v2 on windows
2020-03-20 21:12:37 +01:00
Alexander Medvednikov
ec003ff897
cgen: temporary lld fix
2020-03-20 20:46:42 +01:00
Alexander Medvednikov
4b36098e07
cgen: 1 error left
2020-03-20 20:35:00 +01:00
Alexander Medvednikov
8077a7534e
cgen: 7 errors left
2020-03-20 20:22:37 +01:00
yuyi
e6a679b019
flag: octal format
2020-03-20 20:21:16 +01:00
Delyan Angelov
f89f83deb6
solaris: _solaris.v and #flag solaris (stage 1)
2020-03-20 20:20:01 +01:00
Alexey
9c668072b9
fmt: fix ForInStmt
2020-03-20 20:19:43 +01:00
Alexander Medvednikov
5a7f683f61
cgen: minor fixes
2020-03-20 17:20:53 +01:00
Alexander Medvednikov
6b571155f4
cgen: fix print(struct); use automatic referencing
2020-03-20 17:11:58 +01:00
Alexander Medvednikov
078f498b17
cgen: fix `vals[i].field = x`
2020-03-20 17:03:41 +01:00
Alexander Medvednikov
4fac09bcb4
array: simplify reverse() memcpy call
2020-03-20 16:51:36 +01:00
yuyi
2f27758a4b
os: realpath => real_path
2020-03-20 16:41:18 +01:00
Joe Conigliaro
15d4b5fcdb
checker/fmt/cgen: fun vfmt on changes from previous commit
2020-03-21 00:46:00 +11:00
Joe Conigliaro
a331abf675
ast/cgen/parser: combine IfExpr branches into single node
2020-03-21 00:39:56 +11:00
Alexander Medvednikov
c993489fe9
cgen: optional expr fix
2020-03-20 13:03:42 +01:00
joe-conigliaro
ed50fef1c0
cgen: dont add overidden fields in assoc
2020-03-20 15:05:50 +11:00
joe-conigliaro
1fb2c3f5b4
cgen: multi return optional fix
2020-03-20 14:59:06 +11:00
joe-conigliaro
525639b42f
cgen: fix tests after array.first fix
2020-03-20 14:24:18 +11:00
Alexander Medvednikov
f37b9d99fe
cgen: last/first fix
2020-03-19 19:36:15 +01:00
Alexander Medvednikov
b7a036945d
cgen: in [] optimization
2020-03-19 16:12:49 +01:00
yuyi
010f3efcf0
os: filename => file_name
2020-03-19 15:49:07 +01:00
Alexander Medvednikov
216c7a16d8
cgen: filter + expected_type fix
2020-03-19 15:18:29 +01:00
Delyan Angelov
0fbb056ac7
hotreload: fix compilation of .so file on macos
2020-03-19 14:50:37 +01:00
Alexander Medvednikov
dd96421a9f
compiler: remove old vh generator
2020-03-19 13:24:57 +01:00
Joe Conigliaro
0f08a92302
cgen: fix return formatting
2020-03-19 22:27:47 +11:00
Alexander Medvednikov
b290efa394
ast: TypeOf
2020-03-19 12:15:42 +01:00
Joe Conigliaro
79077b0025
gen: fix multi return optional
2020-03-19 22:13:17 +11:00
Joe Conigliaro
97fbbac973
checker: enum value, use base type no extra info
2020-03-19 21:52:47 +11:00
Alexander Medvednikov
74616d2900
cgen: fix optional functions that return other optional functions
2020-03-19 11:44:27 +01:00
Alexander Medvednikov
b2f05e56b8
cgen: fix tests
2020-03-19 11:23:05 +01:00
Joe Conigliaro
e457bedaa7
gen: remove enum value typedefs :D
2020-03-19 21:21:08 +11:00
Joe Conigliaro
408553e967
gen: add typedefs for optional enums & array clone receiver type fix
2020-03-19 21:04:51 +11:00
Alexander Medvednikov
be01a32f0b
math: use automatic dereferencing
2020-03-19 10:24:51 +01:00
Alexander Medvednikov
b5cb1b1fe2
cgen: map_get/map_set
2020-03-19 10:07:31 +01:00
Joe Conigliaro
6c56528cd7
checker: update assoc type
2020-03-19 19:52:33 +11:00
Joe Conigliaro
a456c21249
gen: cgen sum cast in struct init
2020-03-19 19:40:21 +11:00
Joe Conigliaro
6e5b58413a
checker: check assoc field exprs
2020-03-19 18:57:33 +11:00
Alexander Medvednikov
013fd5abfe
cgen: fix array.last()
2020-03-19 08:49:47 +01:00
Joe Conigliaro
3e70e5f2f1
gen: add `in` for map and string to cgen
2020-03-19 18:32:42 +11:00
Alexander Medvednikov
28309da1f1
cgen: assoc
2020-03-19 08:14:09 +01:00
Alexander Medvednikov
3dc3b11435
parser: $if blocks for headers
2020-03-19 07:59:01 +01:00
SleepyRoy
f798a0937a
expression: set floats as f64 by default
2020-03-19 07:24:49 +01:00
fantassin
5824d28a03
term: Solaris headers
2020-03-19 07:07:43 +01:00
Delyan Angelov
cc847f83a8
compiler: when compiling a single .v file, check that it is not a folder
2020-03-19 07:07:02 +01:00
yuyi
9ef8499183
flag: unify apis
2020-03-19 07:06:37 +01:00
Alexander Medvednikov
66639924a4
map: make compilable with V2
2020-03-19 07:05:20 +01:00
ka-weihe
bd0548548a
map: new memory layout and map.get2()
2020-03-19 06:52:34 +01:00
Alexander Medvednikov
c3d7c57096
cgen: more minor fixes
2020-03-18 19:56:59 +01:00
Alexander Medvednikov
ca0bae0fcd
array: fix reverse()
2020-03-18 18:54:11 +01:00
Alexander Medvednikov
fe6707b26d
cgen: minor fixes
2020-03-18 16:47:37 +01:00
Alexander Medvednikov
c514f0b672
cgen: automatic dereference and match fix
2020-03-18 16:07:54 +01:00
fantassin
d81d804cb6
cgen: add c headers for Solaris / Illumos
2020-03-18 15:48:42 +01:00
lydiandy
04184f1715
ast: make ReturnStmt field public
2020-03-18 15:39:26 +01:00
Joe Conigliaro
c4f6125a31
gen/checker: add errors for as cast & for in var
2020-03-19 00:50:21 +11:00
Joe Conigliaro
96af21ff68
gen: impl as cast
2020-03-18 23:55:46 +11:00
Joe Conigliaro
5fb90e12b1
checker: ForInStmt only call table.value_type once
2020-03-18 23:29:28 +11:00
Joe Conigliaro
4262ff76c3
checker/parser: check & gen stmts for ForIn & fix key, val vars
2020-03-18 23:18:18 +11:00
Alexander Medvednikov
91378583cc
cgen: another expected_type fix
2020-03-18 12:34:27 +01:00
Alexander Medvednikov
af289da844
ast: MatchExpr: expr_type => cond_type
2020-03-18 12:23:32 +01:00
Alexander Medvednikov
256a93e6e6
checker: expected_type fixes
2020-03-18 12:18:48 +01:00
Joe Conigliaro
5fc057d8ac
cgen: fix error in expr_with_cast
2020-03-18 20:42:56 +11:00
Joe Conigliaro
54c38e3e3a
parser: remove option from err var type
2020-03-18 20:00:33 +11:00
Joe Conigliaro
126ef0f5c2
checker/gen: add unchecked exprs & small fixes
2020-03-18 19:56:19 +11:00
Alexander Medvednikov
a011b8951a
cgen: if/match expressions and other fixes
2020-03-18 08:41:49 +01:00
Joe Conigliaro
3fecf154aa
gen: move helper fns to ast
2020-03-18 11:19:23 +11:00
Joe Conigliaro
6ca47aeb4b
gen: blank identifier fixes
2020-03-18 10:41:04 +11:00
Joe Conigliaro
330745da30
gen: restructure if guard to support else
2020-03-18 04:01:36 +11:00
Joe Conigliaro
91e47caf38
gen: add if guard to cgen
2020-03-18 02:40:41 +11:00
Joe Conigliaro
f965a7d0e6
gen: fix sum type casting & map init
2020-03-18 01:13:55 +11:00
radare
f5e44fbef2
compiler: better NetBSD and OpenBSD support in vfmt and $if
2020-03-17 12:43:59 +01:00
Major Taylor
e2eb0f17d7
string: separate strip_margin tests into different functions
2020-03-17 02:49:51 +01:00
Delyan Angelov
f73b38a0d8
vfmt2: fix literal integer number formatting
2020-03-17 02:49:15 +01:00
yuyi
456c0250b0
string: fix strip_margin
2020-03-16 15:46:09 +01:00
Alexander Medvednikov
d39dd53998
string: bring back test_strip_margins
2020-03-16 15:45:54 +01:00
yuyi
5ae04dca84
glfw: remove global scale variable
2020-03-16 15:44:26 +01:00
Ian M. Jones
93920a4bb0
vweb: set request data with body text to allow use in actions
2020-03-16 14:30:55 +01:00
Joe Conigliaro
d456cc479c
builtin: revert map to version before 35dd785
until bug is fixed
2020-03-16 23:01:31 +11:00
radare
5581b2bd3c
builtin: fix backtrace for OpenBSD and NetBSD
2020-03-16 12:10:58 +01:00
Alexander Medvednikov
900ada1112
cgen: match: do not use a temp var; minor fixes
2020-03-16 10:53:36 +01:00
Joe Conigliaro
cf094c6265
cgen: gen fn type declerations
2020-03-16 20:12:03 +11:00
Alexander Medvednikov
0f160707a4
cgen: GoStmt; experimental parallel parser
2020-03-16 08:33:42 +01:00
joe-conigliaro
c947e6ebe6
cgen: cast to sum type
2020-03-16 17:42:45 +11:00
Alexander Medvednikov
66adf7a6b9
cgen: minor sum type fix
2020-03-16 05:02:41 +01:00
Alexander Medvednikov
ac0b235d3a
cgen: sum type: `it` variable
2020-03-16 03:56:38 +01:00
Alexander Medvednikov
37504c487a
cgen: sum types: match
2020-03-16 03:19:26 +01:00
Alexander Medvednikov
98fc9ab65b
string: disable strip_margins test for now
2020-03-15 23:21:32 +01:00
Alexander Medvednikov
8a8f50a6a0
cgen: unwrapped optionals
2020-03-15 08:18:45 +01:00
Major Taylor
8d19ba9195
string: strip_margin: fix the error message for multiple args
2020-03-15 07:49:37 +01:00
Alexander Medvednikov
8e2537a366
cgen: array init fix;
2020-03-15 07:42:49 +01:00
Major Taylor
2d5c7c8e93
string: add `strip_margin`
2020-03-15 05:46:12 +01:00
Joe Conigliaro
3e05939b65
cgen: enum fixes
2020-03-15 12:51:31 +11:00
Joe Conigliaro
cfeafb9ab4
cgen: fix null termination bug gen tests to fail
2020-03-15 11:39:29 +11:00
Alexander Medvednikov
28fc9d332c
cgen: fix enum vals, includes, in strings
2020-03-15 01:36:20 +01:00
yuyi
a121dfd23a
glfw: high dpi on windows
2020-03-15 01:16:55 +01:00
Alexander Medvednikov
843bb6dac1
cgen: lots of fixes
2020-03-15 00:46:08 +01:00
Joe Conigliaro
50ed4004f4
ast/table: use common struct fn decl arguments
2020-03-15 09:21:36 +11:00
yuyi
8bfa7f0d82
compiler: fix interface bug
2020-03-14 14:19:56 +01:00
Joe Conigliaro
217bbdfd66
cgen: small varg fixes
2020-03-14 23:42:27 +11:00
Joe Conigliaro
9dc79bae5f
cgen: fix varg call and struct gen
2020-03-14 23:15:07 +11:00
Joe Conigliaro
cc338df77f
parser/checker/gen: update call args to use ast.CallArg
2020-03-14 21:11:43 +11:00
Joe Conigliaro
6752fed9f2
parser: fix generated name for unnamed fn args
2020-03-14 20:24:45 +11:00
Alexander Medvednikov
e8c9f609a4
cgen: enum fixes; sum type definition; const bug fix
2020-03-14 05:20:15 +01:00
yuyi
424bd1c465
scanner: minor optimization
2020-03-13 22:22:59 +01:00
Delyan Angelov
19f9c18305
os: make executable() more robust
2020-03-13 22:19:02 +01:00
Joe Conigliaro
920ab79665
checker: check range exprs
2020-03-13 23:08:03 +11:00
Alexander Medvednikov
973b5c226a
cgen: optionals fixes
2020-03-13 12:22:36 +01:00
Alexander Medvednikov
b173cea177
cgen: optionals
2020-03-13 05:57:55 +01:00
Delyan Angelov
9bcb7d115f
panic: restore printing of detailed stack backtraces on linux
2020-03-13 04:32:44 +01:00
Ian M. Jones
0e68ca120e
vweb.assets: fix am is declared as mutable, but it was never changed message
2020-03-13 04:32:24 +01:00
Alexander Medvednikov
4b4c47461b
cgen: error fixes; table: simplify; compiler tests
2020-03-13 01:43:30 +01:00
Alexander Medvednikov
b43ac2783d
map: make compilable with the new compiler
2020-03-12 20:26:29 +01:00
ka-weihe
35dd7855a0
map: new memory layout and optimizations
2020-03-12 19:36:05 +01:00
Marko Zitkovic
26b9987880
compiler: fix panic when dealing with variadic functions
2020-03-12 18:21:02 +01:00
vitalyster
0df6eaa927
"#flag mingw ..." support
2020-03-12 18:20:19 +01:00
Joe Conigliaro
07921194f2
parser: revert changes to format_str
2020-03-13 00:32:26 +11:00
Joe Conigliaro
597811093c
parser/cgen: fix order of escape replacements
2020-03-13 00:21:43 +11:00
Joe Conigliaro
b750f1d1bb
compiler: prerequisite changes for upcoming map update
2020-03-12 22:19:13 +11:00
Joe Conigliaro
99398ba652
cgen: escape quotes & nl in string literals
2020-03-12 21:13:46 +11:00
Joe Conigliaro
bb5034f3fe
cgen: fix fixed array init assignment
2020-03-12 20:07:42 +11:00
Alexander Medvednikov
d2cf6894fe
cgen: fixed array fix
2020-03-12 09:29:52 +01:00
Alexander Medvednikov
92d6eec09a
cgen: fix remaining errors. hello world now compiles
2020-03-12 09:11:41 +01:00
joe-conigliaro
853bb4c41e
cgen: alias & map types & add map_string/map_int aliases
2020-03-12 17:56:44 +11:00
joe-conigliaro
dfaba54376
cgen: gen fn types in fn arguments
2020-03-12 14:34:00 +11:00
Alexander Medvednikov
bcdb897f07
cgen: fix tests
2020-03-11 23:43:01 +01:00
Alexander Medvednikov
a182b5c531
cgen: more errors fixed
2020-03-11 23:22:40 +01:00
Alexander Medvednikov
e0c85f87ae
cgen: args fixes
2020-03-11 21:11:27 +01:00
Alexander Medvednikov
aada19f574
cgen: fix [] => string casts and for in
2020-03-11 19:00:55 +01:00
Alexander Medvednikov
4470252913
parser: fix import's position
2020-03-11 18:52:55 +01:00
Delyan Angelov
de7fed45dc
builtin: implement []int.str()
2020-03-11 18:48:59 +01:00
Delyan Angelov
dff17ee0d7
compiler: pass -shared to build a .so file from a module
2020-03-11 17:31:20 +01:00
Joe Conigliaro
01004bc5d8
checker: remove test println from previous commit
2020-03-12 02:29:02 +11:00
Joe Conigliaro
a1314bd199
checker/gen/table: impl fn types & sum/other fixes & tidy
2020-03-12 02:10:46 +11:00
Joe Conigliaro
1cea85df0c
compiler: save mutability of unnamed fn args
2020-03-12 01:44:41 +11:00
Joe Conigliaro
7309be55a0
table: fix error in field/method lookup from previous commit
2020-03-11 20:53:14 +11:00
Joe Conigliaro
7513dab185
table/checker: proper parent field/method lookup & cleanup
2020-03-11 20:48:45 +11:00
Alexander Medvednikov
0ad9eb5e16
scanner: remove the "too long name" error; checker: check string() cast arg
2020-03-11 06:46:14 +01:00
Alexander Medvednikov
cd0b81fc5f
cgen: fix a bug with [].repeat
2020-03-11 06:30:20 +01:00
Alexander Medvednikov
a2ff24c912
cgen: reference receiver test
2020-03-11 05:56:15 +01:00
Alexander Medvednikov
75db3e4416
cgen: fix ptr indexing
2020-03-11 05:25:15 +01:00
yuyi
9e14850bbf
vdoc: show map type correctly
2020-03-11 05:18:20 +01:00
Alexander Medvednikov
b9955aee84
cgen: fix tests
2020-03-11 04:10:42 +01:00
Alexander Medvednikov
7342dfdc6e
cgen: fix array_get()
2020-03-11 03:52:01 +01:00
Alexander Medvednikov
22e558aecb
cgen: fix C style loops without an init; fix integer consts
2020-03-11 02:44:30 +01:00
Alexander Medvednikov
0d45d21069
cgen: fix string <> methods and multiple returns
2020-03-11 02:28:19 +01:00
Joe Conigliaro
083964522b
cgen/fmt: fix assign_stmt fix & cgen test & hash tests & fmt
2020-03-11 11:31:24 +11:00
penguindark
630913d872
builtin: new str(), hex() functions without C.printf
2020-03-11 00:38:11 +01:00
Alexander Medvednikov
de55a26cfe
cgen: lots of fixes
2020-03-10 23:21:29 +01:00
Alexander Medvednikov
1143320b8b
vdoc: print structs and enums
2020-03-10 19:49:04 +01:00
Alexander Medvednikov
568d859fc0
bignum: move to math.big
2020-03-10 19:31:01 +01:00
Wing-Kam
f1274e34c2
cli: add pre_execute & post_execute
2020-03-10 16:11:17 +01:00
yuyi
8ff86dbee6
os: is_abs => is_abs_path
2020-03-10 16:09:37 +01:00
Alexander Medvednikov
324a48bc64
sha512: make it work with the new parser
2020-03-10 15:47:21 +01:00
Joe Conigliaro
bc184a9f02
checker: properly update var info in AssignStmt
2020-03-11 01:16:30 +11:00
yuyi
57b1b12ab6
os: tmpdir => temp_dir
2020-03-10 15:02:09 +01:00
Charles WANG
7e1870be3e
pg: create readme.md
2020-03-10 15:00:22 +01:00
Joe Conigliaro
ddd5a9443d
v: fix AssignStmt
2020-03-11 00:45:21 +11:00
Alexander Medvednikov
2f0bb11a96
parser: handle operator methods and fix them in vdoc
2020-03-10 14:40:35 +01:00
Delyan Angelov
7036ca55e6
os: implement os.environ() (part 2/2) ( #3971 )
2020-03-10 14:25:16 +01:00
Joe Conigliaro
c9d30f78b7
v: no optional for scope.innermost & more blank_ident
2020-03-10 23:35:25 +11:00
Joe Conigliaro
ee72474971
v: add multi assign cgen test
2020-03-10 22:26:13 +11:00
Joe Conigliaro
f7a93a69f6
v: fix/gen multi return/assign + merge VarDecl & AssignStmt
2020-03-10 22:01:37 +11:00
yuyi
876b73f92c
os: join => join_path
2020-03-09 02:23:34 +01:00
Alexander Medvednikov
e3687dc257
checker: check C args
2020-03-08 22:11:56 +01:00
Alexander Medvednikov
754a6cc93e
cgen: fix ->
2020-03-08 19:38:27 +01:00
Delyan Angelov
f6480be3aa
add C.environ to cheaders.v
2020-03-08 17:38:53 +01:00
yuyi
a569959fb8
os api: cachedir => cache_dir
2020-03-08 15:57:47 +01:00
Alexey
83b6292105
fmt: split tests
2020-03-08 15:57:16 +01:00
Delyan Angelov
5f08253f36
vfmt: add support for _keep.vv files, that v fmt should keep without changes
2020-03-08 15:46:04 +01:00
yuyi
23b11c84b1
os api: basedir => base_dir
2020-03-08 15:43:56 +01:00
Delyan Angelov
2bed0d1bb5
fmt: extract array_slices_input.vv from simple_input.vv
2020-03-08 15:42:38 +01:00
Ian M. Jones
c731615dbb
vweb: cater for trailing slashes being used in handle_static call
2020-03-08 15:41:59 +01:00
Delyan Angelov
8df265a581
sync: protect against sporadic failing tests in macos
2020-03-08 15:40:50 +01:00
hazohelet
ee6f2f84bb
compiler: fix redefinition error message for consts
2020-03-08 15:40:07 +01:00
Alexander Medvednikov
d9854f2abd
cgen: fix mutable receivers
2020-03-07 22:37:03 +01:00
yuyi
783dee1f48
os: merge with filepath
2020-03-07 22:26:26 +01:00
Delyan Angelov
5e541e1f11
vfmt: alias type and sum type + sum type fix
2020-03-07 17:37:55 +01:00
Alexander Medvednikov
fbf80dc315
cgen: array_set()
2020-03-07 16:39:15 +01:00
Alexander Medvednikov
63032c4bb7
cgen: minor fixes
2020-03-07 16:23:10 +01:00
Alexander Medvednikov
24bcc7a93b
cgen: array and fixed array fixes
2020-03-07 14:31:40 +01:00
Ian M. Jones
750f37fde7
vweb: fix serving static files
2020-03-07 14:16:03 +01:00
Delyan Angelov
d2ab9d3e77
compiler: fix generation of default .str() methods in interpolation
2020-03-07 14:13:53 +01:00
Joe Conigliaro
09d9dd2607
v: add map init
2020-03-07 18:13:00 +11:00
Alexey
e26907f079
fmt: fix errors in test files
2020-03-07 06:04:33 +01:00
Alexander Medvednikov
150994a933
cgen: fix tests
2020-03-07 06:02:32 +01:00
Alexander Medvednikov
260f708bb2
cgen: array << val
2020-03-07 05:19:15 +01:00
Alexander Medvednikov
c14c81ace6
cgen: fix ->
2020-03-07 04:45:35 +01:00
Nguyen Viet Hung
f5a8d883d2
gx: add hex to rgb color
2020-03-07 04:30:35 +01:00
Alexander Medvednikov
58fb055763
cgen: fix string args in C calls; lower case consts in atof; fix struct types
2020-03-07 01:05:19 +01:00
Alexander Medvednikov
968e310793
cgen: fix match
2020-03-07 00:47:49 +01:00
Alexander Medvednikov
9846fecd84
eval: fix test
2020-03-07 00:42:52 +01:00
Alexander Medvednikov
f699dcac94
checker: check println arg
2020-03-07 00:38:35 +01:00
Alexander Medvednikov
180b9b971a
cgen: string_add()
2020-03-07 00:34:14 +01:00
Alexander Medvednikov
3c7b0d6d05
cgen: fix []
2020-03-07 00:19:27 +01:00
Alexander Medvednikov
124f754443
cgen: typ()
2020-03-06 22:36:51 +01:00
Alexander Medvednikov
1a8b7d0447
cgen: fix slices
2020-03-06 22:24:42 +01:00
Alexey
81ce524705
ast: add Expr to AsCast
2020-03-06 22:12:15 +01:00
Alexey
06df6d25a2
sdl: update readme
2020-03-06 20:43:33 +01:00
Alexander Medvednikov
8a711a8376
cgen: fix tests
2020-03-06 20:25:38 +01:00
Alexander Medvednikov
a277f7d6ab
cgen: string[i]; pointers
2020-03-06 20:23:01 +01:00
lutherwenxu
aab31f4b35
cmd/v: rewrite flags
2020-03-06 18:53:29 +01:00
Ian M. Jones
522de0871a
pg: fix zero being used for port when not specified in pg.Config
2020-03-06 18:40:24 +01:00
Alexey
5142747ceb
examples: move SDL examples from vlib to examples dir
2020-03-06 18:39:40 +01:00
Alexander Medvednikov
5c8617ec68
ast: set IndexType.container_type; array_get()
2020-03-06 17:06:03 +01:00
Joe Conigliaro
ea2a79ec20
v: cgen fix struct ordering
2020-03-07 02:57:27 +11:00
Alexander Medvednikov
be2480c320
cgen: fix several errors
2020-03-06 16:31:44 +01:00
yuyi
ed9075b937
v doc: don't show 'pub' at the beginning
2020-03-06 16:28:20 +01:00
Joe Conigliaro
db22bc579a
v: update resovled call expr name
2020-03-07 01:02:40 +11:00
Joe Conigliaro
89cbe76193
v: run cast expr through checker
2020-03-07 00:36:32 +11:00
Alexander Medvednikov
6b6031a3d9
cgen: fix struct init; match SumType1, SumType2
2020-03-06 14:14:33 +01:00
Joe Conigliaro
3de3b38dc1
v: udpate elem_type in ArrayInit node & tests
2020-03-07 00:06:52 +11:00
Alexander Medvednikov
fb785b8adf
cgen: optimize const definitions
2020-03-06 14:03:35 +01:00
Alexander Medvednikov
91269961d0
cgen: array types
2020-03-06 13:44:13 +01:00
Joe Conigliaro
7f6b98669e
v2: fix tests - gen output
2020-03-06 22:06:41 +11:00
Joe Conigliaro
24dbfbcccf
v2: fix struct sorting & cgen tests
2020-03-06 22:01:56 +11:00
Joe Conigliaro
49f3ce0571
v2: add method call receiver to cgen & check method args
2020-03-06 20:52:03 +11:00
Alexander Medvednikov
7a92a47eb3
flag: fix array boundary check
2020-03-06 02:02:32 +01:00
Alexander Medvednikov
efb45579aa
pg: add port to config
2020-03-06 02:01:53 +01:00
Joe Conigliaro
7008b1a92c
v2: update ident name for resolved const/fn objects
2020-03-06 10:10:01 +11:00
Alexander Medvednikov
04d5dd8997
cgen: sort structs
2020-03-05 23:27:24 +01:00
Alexander Medvednikov
a8e45251c4
sync.pool: simplify usages of pool.work_on_items
2020-03-05 18:37:57 +01:00
Alexander Medvednikov
9c1e50b1aa
vdoc: don't show deprecated functions
2020-03-05 16:13:14 +01:00
Alexander Medvednikov
6659f1751e
ast: make IdentInfo public
2020-03-05 14:16:08 +01:00
Joe Conigliaro
8ad8d03bc8
v2: remove test code from last commit in parser
2020-03-06 00:00:34 +11:00
Joe Conigliaro
272eaaa704
v2: remove type fields from parser & some cleanup
2020-03-05 23:57:05 +11:00
Alexander Medvednikov
38a54b08e3
doc: don't modify path to vlib
2020-03-05 13:48:06 +01:00
Joe Conigliaro
9921897aa6
v2: add some comments in parser & checker
2020-03-05 22:44:33 +11:00
Joe Conigliaro
6de44db4eb
v2: update checker. missing from previous commits
2020-03-05 22:30:16 +11:00
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