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
Alexey
a5b43e1f4d
strconv: fix tests
2019-12-27 06:07:09 +03:00
Alexander Medvednikov
6363118aa9
remove ScalarExpr
2019-12-26 13:21:41 +03:00
Alexander Medvednikov
9b37fc7310
clean up parser_test.v
2019-12-26 13:05:06 +03:00
Alexander Medvednikov
d9835c1ecf
move atofq.v to a separate module
2019-12-26 11:56:21 +03:00
Alexander Medvednikov
8d9f89e728
compiler2: proof of concept cgen
2019-12-26 07:47:33 +03:00
joe-conigliaro
fe8a6abb41
compiler2: update operator precedence and associativity ( #3218 )
2019-12-26 05:40:18 +03:00
Delyan Angelov
ae4c8af674
fmt: fixes for option syntax formatting
2019-12-25 16:08:52 +03:00
vitalyster
1d86f4b5d1
ensure that `v fmt` can be run over most .v files on each PR
2019-12-25 15:54:48 +03:00
Alexey
ccb041c831
arrays: improve `range` function
2019-12-25 15:52:27 +03:00
Alexey
f2bab4ab9a
atoi: add tests
2019-12-25 15:42:00 +03:00
joe-conigliaro
de1be1dc66
compiler2: start implementing pratt style parser
2019-12-25 15:39:58 +03:00
Alexander Medvednikov
ca284482cb
new AST built with sum types
2019-12-24 16:04:49 +03:00
Alexander Medvednikov
803ded3dec
sum type `type Foo = Bar | Baz`
2019-12-24 16:04:49 +03:00
Delyan Angelov
96fa15c125
v fmt: process .v files from a module too
2019-12-24 05:43:31 +03:00
Don Alfons Nisnoni
4498dc6a47
tools/fast: remove unused function
2019-12-23 13:37:52 +03:00
yatsen1
137a473bb7
add time.parse_iso
2019-12-23 13:36:51 +03:00
yatsen1
d03f0ec294
fix time.parse()
2019-12-23 13:25:44 +03:00
Charles WANG
b1013697d1
vlib/vweb.v: add public const and functions
2019-12-23 13:24:53 +03:00
Delyan Angelov
cf37028a52
test: use 'stty size' for vtest --- line instead of 'tput cols'
2019-12-23 13:23:53 +03:00
Alexey
dced76d1a4
os, filepath: reorganize functions
2019-12-23 13:09:22 +03:00
Delyan Angelov
6e130cd446
compiler: support for custom flags
...
[if custom]fn..{} , #flag custom, $if custom {}
2019-12-23 13:09:00 +03:00
Delyan Angelov
42b1660c7e
move vfmt frontend program to tools/vfmt.v
2019-12-23 13:02:50 +03:00
Alexander Medvednikov
28594a65a8
fix enum bitfield
2019-12-23 07:05:52 +03:00
Alexander Medvednikov
7ab993c218
sum types
2019-12-23 06:14:31 +03:00
Alexey
dacc129fd8
time: improve tests
2019-12-22 22:58:41 +03:00
Alexander Medvednikov
a251db068f
run vfmt on math and sha; add vfmt check to test-compiler
2019-12-22 02:50:20 +03:00
Alexey
b88cb1ca69
extend tests for `strings` module
2019-12-22 02:05:30 +03:00
Alexander Medvednikov
848cd3cb3e
run vfmt on http, net, sync, strconv
2019-12-22 01:57:50 +03:00
れもん
28ecfb231d
compiler: map[string]pointer, ?pointer, fix []pointer
2019-12-22 01:44:16 +03:00
Alexander Medvednikov
b76227b781
small vfmt fixes
2019-12-22 01:39:04 +03:00
Alexander Medvednikov
749d3ec14d
do not define __offsetof twice
2019-12-22 01:39:04 +03:00
penguindark
5cfbc7bab5
float: bug fix on +zero
2019-12-22 01:38:02 +03:00
Alexander Medvednikov
ef28a6b872
final vfmt run before CI check
2019-12-22 00:58:57 +03:00
Alexander Medvednikov
2b9392c46c
move hashmap to its own module for now
2019-12-22 00:54:25 +03:00
Emily Hudson
8512c9fc9d
compiler: __offsetof keyword for C offsetof() macro
2019-12-22 00:46:09 +03:00
Alexander Medvednikov
31b7991a93
negative enum vals + `[10]C.Foo` fix
2019-12-22 00:17:13 +03:00
Charles WANG
24739c9f5a
sqlite: add Ubuntu instructions
2019-12-21 10:00:28 +03:00
joe-conigliaro
4dc4f12ccd
hashmap: use fnv32 as hash algo
2019-12-21 09:59:12 +03:00
joe-conigliaro
6763a92834
fix multiple type parameters
2019-12-21 09:54:43 +03:00
joe-conigliaro
f7c1b78ec2
clean up generic structs
2019-12-21 05:33:59 +03:00
Alexander Medvednikov
61bfecfa09
vweb: minor fixes
2019-12-21 05:19:26 +03:00
joe-conigliaro
fbd9fedbfb
implement generic structs
2019-12-21 03:53:57 +03:00
Changsen XU 徐昶森
b3a402eb82
add mysql -I flag for ubuntu 18.04 ( #3153 )
2019-12-20 23:18:23 +03:00
Don Alfons Nisnoni
090f444d8f
scanner: small DRY
2019-12-20 23:15:16 +03:00
Steve Phillips
6e9493887d
builtin/array.v: Fixed typo in new_array (cap -> cap_)
2019-12-20 23:09:59 +03:00
Delyan Angelov
b62e28dba5
compiler: fix interface generation for unused interfaces
2019-12-20 23:06:11 +03:00
Alexander Medvednikov
00b8a5d3e4
vfmt: enum fix
2019-12-20 02:38:11 +03:00
Alexander Medvednikov
6af54d0207
fix windows build
2019-12-20 02:20:03 +03:00
Alexander Medvednikov
6210984c97
run vfmt
2019-12-20 02:09:56 +03:00
Alexander Medvednikov
b6fe2ebc0b
fix tools test
2019-12-20 00:20:22 +03:00
Alexander Medvednikov
d082b3f4b9
run vfmt on vlib/builtin
2019-12-20 00:12:29 +03:00
Alexander Medvednikov
76c800ffb6
bring back array.eq
2019-12-19 23:49:40 +03:00
Alexander Medvednikov
d38687f893
run vfmt on cc, cgen, comptime, if_match
2019-12-19 23:43:23 +03:00
Alexander Medvednikov
ce86626ec2
run vfmt on table.v
2019-12-19 23:26:23 +03:00
Alexander Medvednikov
1679457f6b
clean up math_test.v
2019-12-19 22:16:10 +03:00
BigBlack
a38a0f4fb7
parser: fix x.function_pointer()
2019-12-19 21:23:29 +03:00
Alexander Medvednikov
2096018b00
map: another fix + test
2019-12-19 21:17:12 +03:00
Alexander Medvednikov
26f5d34e64
map: fix a bug with an incorrect size after delete()
2019-12-19 21:11:42 +03:00
Alexander Medvednikov
519f2990f2
vfmt: minor fixes
2019-12-19 10:02:47 +03:00
penguindark
929e7c1193
strconv: atof_quick for tasks that need speed but not big accuracy
2019-12-19 03:37:53 +03:00
Alexander Medvednikov
df2f98e276
run vfmt on more files
2019-12-19 02:38:54 +03:00
Alexander Medvednikov
1cef83aea4
run vfmt on array.v
2019-12-18 21:20:41 +03:00
Charles WANG
0ebe86fbd5
sqlite: readme
2019-12-18 13:22:22 +03:00
BigBlack
2f218b878b
fix fn type call
2019-12-18 13:21:49 +03:00
Delyan Angelov
4b7aa4ec09
freebsd: fix compilation
2019-12-18 13:21:20 +03:00
Alexander Medvednikov
67bdc2c7a9
vfmt: fn args fixes
2019-12-18 11:11:47 +03:00
Alexander Medvednikov
569b32bd1e
run vfmt on fn.v
2019-12-18 10:07:30 +03:00
Alexander Medvednikov
81045023c4
run vfmt on scanner.v
2019-12-18 08:26:51 +03:00
Abdullah Atta
20e73ff69a
os: fix nreadelements naming
2019-12-18 08:22:52 +03:00
Abdullah Atta
489ec05b23
eventbus: remove hacks, add sender
2019-12-18 08:16:33 +03:00
Alexander Medvednikov
02939d776b
vfmt: fix in, |, or {}
2019-12-18 08:01:29 +03:00
Alexander Medvednikov
3d1db3519d
test enum printing
2019-12-18 05:45:48 +03:00
Alexander Medvednikov
7456d556e1
fix 2 repl tests
2019-12-18 05:02:23 +03:00
Alexander Medvednikov
a46a2e4715
run vfmt on parser.v
2019-12-18 04:43:41 +03:00
Alexander Medvednikov
ad211a86a6
vfmt: re-write V files + fix {}
2019-12-18 04:33:02 +03:00
Alexander Medvednikov
53b334145b
lots of vfmt fixes
2019-12-18 04:15:41 +03:00
BigBlack
67cf7f18e6
array of pointers support
2019-12-18 03:26:04 +03:00
prime31
f00f9fbf5a
os: fix bug where read_bytes would return only the first byte
2019-12-18 00:16:56 +03:00
BigBlack
e68200538a
parser: call struct field fns
2019-12-17 22:00:08 +03:00
Delyan Angelov
d405cfbcf7
gg: remove spurious printing of gl.TEXT_VERT
2019-12-17 19:17:48 +03:00
Delyan Angelov
ba519f105a
compiler: option/command parsing bugfix
2019-12-17 16:00:10 +03:00
Alexander Medvednikov
37add98043
fix programs without fn main
2019-12-17 05:05:10 +03:00
Alexander Medvednikov
84f535d242
atof: remove extra() causing warnings
2019-12-17 01:47:30 +03:00
Alexander Medvednikov
ea781a557f
array: slice_clone()
2019-12-17 01:29:40 +03:00
Alexander Medvednikov
562f24336d
add ./v2 to gitignore
2019-12-17 01:21:18 +03:00
Johan Hillerström
6008fa44c6
parser: fix generic function call in `for in` expression
2019-12-17 01:08:30 +03:00
penguindark
3dbf7a4039
atof implementation in V
2019-12-17 01:07:13 +03:00
Alexander Medvednikov
5a56ca0892
parser: handle operator overloading type errors
2019-12-17 00:50:41 +03:00
Alexander Medvednikov
560d1383d1
fix optional struct field assignment
2019-12-17 00:36:28 +03:00
Alexander Medvednikov
54707ff81d
do not allow calloc(0)
2019-12-16 22:48:55 +03:00
Alexander Medvednikov
e7856a1afc
do not allow malloc(0)
2019-12-16 21:29:32 +03:00
Alexander Medvednikov
10718557a2
increase the name limit to 15
2019-12-16 19:36:29 +03:00
Alexander Medvednikov
bcde155da7
test the recent type alias string; print vweb templates in verbose mode
2019-12-16 19:34:04 +03:00
BigBlack
8c0e0f8ab7
parser: fix type alias type check
2019-12-16 19:06:40 +03:00
Delyan Angelov
b7c477cc18
freestanding: ptr_str, string concat, struct declaration
...
* compiler: extract c_common_macros from c_headers, and use it in bare_c_headers too. Support for ptr_str and string concatenation in -freestanding mode.
* Add tests for structs and string concatenation in -freestanding mode .
* Move check_string_add_works to string/string.v .
2019-12-16 19:05:33 +03:00
lutherwenxu
dadf147382
flag: implement *_opt() and *_multi()
...
It's very often that someone will need to process values that were not
provided separately (eg. generating a complex default value like in V).
This commit allows the user to call the *_opt() functions instead of
forcing them to provide some magical default values.
* flag: Implement int_multi(), float_multi() and string_multi()
These 3 functions are useful when the application expects a flag to be
repeated more than once.
A sample would be:
v -cflags someflag -cflags secondflag
This feature exposes the raw array that the flag parser internally keeps
and allow the application to parse it however they want instead of
dropping everything except the first element.
* flag: Add documentation
Add comments describing what *_opt() and *_multi() do.
2019-12-16 19:03:38 +03:00
vitalyster
d1714c4a2a
cc.v: build thirdparty objfiles with msvc when no cc installed
2019-12-16 18:56:37 +03:00
Delyan Angelov
7e0a9fb83a
compiler: fix regression for -d option flag
2019-12-16 18:55:10 +03:00
João Victor Oliveira Couto
b30f989f44
builder_js: fix mutable error
2019-12-16 18:54:44 +03:00
Kaito Sugimoto
9dd86a2de6
math: fix abs (-0.0)
2019-12-15 19:37:17 +03:00
Delyan Angelov
faa04c586f
compiler: restore ability to pass -prod option to run and runrepl. ( #3095 )
2019-12-15 21:21:37 +11:00
joe-conigliaro
f2c40bf49d
compiler: fix for -Wl -Wa -Wp dont like spaces ( #3091 )
2019-12-15 16:24:12 +11:00
joe-conigliaro
717740cfcf
simplify cflag parsing
2019-12-15 06:18:14 +03:00
joe-conigliaro
be60193588
workaround for -g with default optional value
2019-12-15 06:11:02 +03:00
Alexander Medvednikov
54b0097cee
fix repl_test.v
2019-12-15 05:51:00 +03:00
Alexander Medvednikov
68357876ca
fix v_command()
2019-12-15 05:44:34 +03:00
Alexander Medvednikov
12ebed0589
error on an incorrect V command
2019-12-15 05:35:17 +03:00
Alexander Medvednikov
48ea136a9a
tutorials: vweb: add an article
2019-12-15 00:56:08 +03:00
BigBlack
fc33f9d49c
type alias check
2019-12-14 22:01:20 +03:00
Alexander Medvednikov
2e23592264
for: check for redefinitions
2019-12-14 20:00:03 +03:00
Alexander Medvednikov
45695543ba
tutorial: minor fixes
2019-12-14 18:59:02 +03:00
Delyan Angelov
1cd5fab21d
testing: support for internal module testing
2019-12-14 15:57:28 +03:00
joe-conigliaro
cb9e9286ef
compiler: fixes issue #3074 - can't call a generic function twice with the same data type
2019-12-14 17:54:34 +11:00
prime31
75c01dec30
cleanup SDL event system
2019-12-14 03:31:07 +03:00
Alexander Medvednikov
8581c11900
update malloc
2019-12-14 02:46:55 +03:00
Alexander Medvednikov
962109e855
parser: verify async functions
2019-12-14 02:33:19 +03:00
Alexander Medvednikov
ef562413cd
-prealloc
2019-12-14 02:28:15 +03:00
Alexander Medvednikov
88cde6e4e6
orm: skip fields
2019-12-14 02:07:06 +03:00
Alexander Medvednikov
797d4364e7
vweb: fix reading request's body/headers
2019-12-13 23:46:11 +03:00
Alexander Medvednikov
fb3da327d6
vweb: fix a cookie bug
2019-12-13 21:11:40 +03:00
Alexander Medvednikov
83b8d642b4
fix csv/writer.v
2019-12-13 20:45:48 +03:00
Alexander Medvednikov
c72bf0e1b1
global access modifier
2019-12-13 20:28:28 +03:00
Alexander Medvednikov
dc83e30a44
access modifiers: update tests/examples
2019-12-13 20:09:11 +03:00
Alexander Medvednikov
78131e78bc
fix sruct access modifiers (pub, pub mut, mut)
2019-12-13 20:00:38 +03:00
Delyan Angelov
fc64238a39
testing: allow tests to import the same module with no custom options
2019-12-13 19:28:39 +03:00
Robert Cristof
ec36755407
mysql: add mysql.escape_string()
2019-12-13 19:12:42 +03:00
Alexander Medvednikov
569a64068a
ui/examples: users: fix button click
2019-12-12 23:42:51 +03:00
Alexander Medvednikov
cddfbf7395
parser: allow public types `pub type Foo Bar`
2019-12-12 22:57:47 +03:00
Alexander Medvednikov
b8f728590b
string: last_index ?int
2019-12-12 21:54:48 +03:00
penguindark
8e1c27d129
utf8: punctuation
2019-12-12 21:08:44 +03:00
Alexander Medvednikov
0eeb607ffd
fix fopen definition
2019-12-12 21:03:08 +03:00
Alexander Medvednikov
bd833deef3
assoc: verify the field exists and verify the type
2019-12-12 20:38:49 +03:00
Alexander Medvednikov
6982f4a5a2
parser: force {} blocks on new lines
2019-12-12 20:27:05 +03:00
Alexander Medvednikov
02c29624d8
freetype: minor fixes
2019-12-12 14:44:29 +03:00
Alexander Medvednikov
8ba29f968a
cc.v: hide "mingw" not found message
2019-12-12 14:27:47 +03:00
Alexander Medvednikov
88ec9c235d
sort structs: handle fixed size arrays
2019-12-12 14:21:22 +03:00
Alexander Medvednikov
576618d8cc
string cloning; fix `foo.str += 's'`
2019-12-12 05:20:52 +03:00
Alexander Medvednikov
e182274fe7
free memory block
2019-12-11 23:58:51 +03:00
Alexander Medvednikov
ad250523cd
fix parser.fileis()
2019-12-11 21:42:22 +03:00
Alexander Medvednikov
6ffed854cc
cgen.prepend_to_statement()
2019-12-11 20:51:58 +03:00
Alexander Medvednikov
47f9c02331
Revert "cgen.prepend_to_statement()"
...
This reverts commit 507c71ad80
.
2019-12-11 20:37:39 +03:00
Alexander Medvednikov
507c71ad80
cgen.prepend_to_statement()
2019-12-11 19:33:54 +03:00
taojy123
28f76f10db
vweb: fix empty post request blocking
2019-12-11 19:20:46 +03:00
Alexander Medvednikov
7dcd47369b
option to pre-allocate a memory block
2019-12-11 18:41:25 +03:00
Delyan Angelov
13769f440f
vweb: continue after bad http client connection; performance fixes
...
* Enable compiling vweb with -prod (by supressing 'declared and not used' warning about 'reset') .
* Fix http responses (now wrk is happy and shows no errors) by adding a Content-Length header.
* Fix -g compilation for urllib.v .
* vweb: println action= only in debug mode.
* vweb: max request headers counting fix.
* Make vweb.html get a 'ctx mut Context' param, just like the other methods.
* vweb: simplify add_header.
* Use a string builder for the most common html case so that the response http text can be send in one go.
* vweb: reduce _STR/string interpolation usage in the most common html response case.
* vweb: refactor common http response formatting into Context.send_response_to_client/2 method.
2019-12-11 17:32:54 +03:00
Alexander Medvednikov
cfeec92826
use -Wunused-function for now
2019-12-11 15:51:12 +03:00
joe-conigliaro
3486118ab7
compiler: force custom struct .str() methods to be defined public
2019-12-11 03:24:26 +03:00
Alexander Medvednikov
f286387647
vweb: secure HttpOnly cookies
2019-12-11 03:20:30 +03:00
Alexander Medvednikov
cdfbb2978d
strings: replace_each([]); orm: update
2019-12-10 23:57:49 +03:00
joe-conigliaro
4e69c40e12
parser: fix use blank ident as value
2019-12-10 21:35:59 +03:00
Alexander Medvednikov
9726e18c0a
string: optimize replace()
2019-12-10 18:50:21 +03:00
joe-conigliaro
6d5e9f88f8
parser: allow enums to be used as bitfield flags
2019-12-10 06:16:47 +03:00
Alexander Medvednikov
0650d58818
vweb: readme: list some features of vweb
2019-12-10 00:16:39 +03:00
Alexander Medvednikov
51051cdf92
vweb: enable @ logic in the header + fix the example
2019-12-09 23:34:38 +03:00
Alexander Medvednikov
6f49d4c1d2
orm: bool support; vweb fixes
2019-12-09 23:20:29 +03:00
Delyan Angelov
32b0225079
remove os/time references from live programs, fix warnings
2019-12-09 18:53:17 +03:00
Alexander Medvednikov
8082a5e7f4
fix benchmarking stats
2019-12-09 17:25:56 +03:00
Alexander Medvednikov
75280bb54c
fix int.str() memory bug
2019-12-09 16:41:13 +03:00
Delyan Angelov
f68d9d1a16
live: always add os and time when compiling -live programs
...
Fixes fail when -live user programs do not use os and time.
2019-12-09 13:48:41 +03:00
sha0coder
7ffa315566
vlib/http: ssl handshake fix
2019-12-09 13:31:24 +03:00
Delyan Angelov
ed5c9a20e5
update brew instructions for sdl dependencies
2019-12-09 03:18:08 +03:00
Alexander Medvednikov
b2207c3d28
do not prepend module to external fn name
2019-12-09 00:24:50 +03:00
Alexander Medvednikov
4ebf53c6e9
allow non snake_case fn names in imported fns
2019-12-08 23:56:31 +03:00
prime31
faedebbb4e
sdl: separate sdl module into multiple, dependent submodules
2019-12-08 23:30:38 +03:00
penguindark
9730164613
atoi: fix leading zeros in string to int conversion
2019-12-08 23:22:33 +03:00
Alexander Medvednikov
8f9b6ac248
'$foo()' string interpolation
2019-12-08 23:18:11 +03:00
Alexander Medvednikov
874ff42687
temporary fix of "v -g v.v"
2019-12-08 20:58:16 +03:00
Delyan Angelov
1bb38a38bb
tooling: add tools/oldv , for use with 'git bisect', or for testing with older V
2019-12-08 20:21:17 +03:00
Alexander Medvednikov
4d1f721558
fix "" string interpolation bug
2019-12-08 20:06:00 +03:00
Alexander Medvednikov
d58982a6f6
vweb: fix tests
2019-12-08 18:07:04 +03:00
Alexander Medvednikov
1c6f7180b2
vweb: fix form parsing
2019-12-08 17:37:23 +03:00
Alexander Medvednikov
02eee49d25
fix defer_test
2019-12-08 15:30:14 +03:00
Alexander Medvednikov
c9886e6f42
use ++ everywhere
2019-12-08 14:34:51 +03:00
Alexander Medvednikov
cc682eafe1
require ++ instead of += 1
2019-12-08 14:11:25 +03:00
Nicolas Sauzede
8bc94947e5
tvintris: fix else cases
2019-12-08 13:45:29 +03:00
bogen85
8178e1f7da
freestanding: malloc/free with mm_alloc an mm_free
...
Added more array support that depends on malloc. Added string clone (that uses malloc). Added test for it. Eliminated stack allocated buffers from most of the unit checks.
2019-12-08 13:44:52 +03:00
Alexander Medvednikov
6ec626c5e9
improve invalid character errorrs
2019-12-08 12:57:40 +03:00
Alexander Medvednikov
8b0de95c0a
improve the C struct check
2019-12-08 04:23:22 +03:00
Alexander Medvednikov
6ae51b2cbf
handle unknown C types
2019-12-08 04:10:56 +03:00
Alexander Medvednikov
7adda3b71a
vweb: fix get_cookie()
2019-12-08 01:48:49 +03:00
Alexander Medvednikov
b1174428a5
vweb: fix redirect()
2019-12-08 01:05:57 +03:00
Alexander Medvednikov
30fc29fa6d
fix csv test
2019-12-08 01:03:35 +03:00
Alexander Medvednikov
7069cd6ab5
a separate scope for x := opt, part 2
2019-12-08 00:45:42 +03:00
Alexander Medvednikov
b26a0bde38
a separate scope for x := opt, part 1
2019-12-08 00:34:04 +03:00
Alexander Medvednikov
06a0f39f7b
a separate scope for
2019-12-08 00:30:06 +03:00
Alexander Medvednikov
dc2da1de98
fix V build
2019-12-08 00:27:24 +03:00
Alexander Medvednikov
8ebc2fe601
do not allow redefinition in `x := opt() {`
2019-12-07 23:09:48 +03:00
Alexander Medvednikov
b79588dc69
handle bad value in `if x := opt() {`
2019-12-07 23:05:54 +03:00
Alexander Medvednikov
49f960aea5
fix some windows cast warnings
2019-12-07 22:42:20 +03:00
Alexander Medvednikov
c019dd6f98
test assert in functions that return values
2019-12-07 22:42:20 +03:00
bogen85
751ba48bf5
freestanding improvements (exit, function checks)
...
Fixed exit for freestanding (as assert now uses it).
Running each function check now in a forked process so they can be killed or return other exit codes (and so each function runs, even if others crash)
2019-12-07 22:25:19 +03:00
Alexander Medvednikov
d73586743b
fix assert in functions that return values
2019-12-07 19:33:59 +03:00
Alexander Medvednikov
b9a24e3b51
Revert "use stdint.h with msvc"
...
This reverts commit 93529031de
.
2019-12-07 19:25:17 +03:00
Alexander Medvednikov
93529031de
use stdint.h with msvc
2019-12-07 19:20:53 +03:00
Alexander Medvednikov
63ec3c0486
fix a wrong "0 character in a string literal" error
2019-12-07 18:19:48 +03:00
Alexander Medvednikov
7b0e378947
fix clipboard_linux.v
2019-12-07 18:16:19 +03:00
Alexander Medvednikov
e1ad1794e3
fix readline_linux.v
2019-12-07 17:46:01 +03:00
Alexander Medvednikov
9cba3bdf78
windows: WideCharToMultiByte() returns an int
2019-12-07 17:31:07 +03:00
Alexander Medvednikov
ad6adf327e
vlib: fix missing `else{}` in match statements
2019-12-07 17:23:37 +03:00
Alexander Medvednikov
2fb7fba856
require `else` in `match` statements
2019-12-07 17:01:44 +03:00
Alexander Medvednikov
a594e009f2
test high order function
2019-12-07 16:13:25 +03:00
Alexander Medvednikov
f51784ee01
remove unnecessary casts everywhere
2019-12-07 15:51:00 +03:00
Alexander Medvednikov
d7ccbba2c9
do not allow casting a type to itself
2019-12-07 15:31:56 +03:00
Alexander Medvednikov
a854d396ff
clipboard: fix mutability on macOS and Windows
2019-12-07 15:22:28 +03:00
Alexander Medvednikov
c2814c1ada
vlib: fix remaining mutability errors
2019-12-07 15:13:23 +03:00
Alexander Medvednikov
329485d4b6
vweb: fix headers and cookies
2019-12-07 15:04:05 +03:00
Alexander Medvednikov
cc834dd7a7
parser: `x in []` is always false
2019-12-07 03:05:19 +03:00
João Victor Oliveira Couto
5a8c07dcf5
strings: builder: write_b()
2019-12-06 23:02:09 +03:00
Alexander Medvednikov
55f32fc413
more mutability fixes
2019-12-06 19:23:24 +03:00
Alexander Medvednikov
e3b5d7fd7c
rename if_st to if_statement
2019-12-06 19:21:26 +03:00
Alexander Medvednikov
bf1b751f47
cli: update mutability
2019-12-06 19:12:01 +03:00
Alexander Medvednikov
c8d111924d
check unused and unmodified vars in all modules, not just main
2019-12-06 18:43:56 +03:00
Delyan Angelov
353805e170
os: test is_link()
2019-12-06 12:09:35 +03:00
Alexander Medvednikov
aed22a57e3
fixed size array with const length (`[N]int`)
2019-12-06 02:41:03 +03:00
Alexander Medvednikov
be323e2fb6
ci: set up pg database to test ORM
2019-12-06 02:11:39 +03:00
Alexander Medvednikov
71c0c4803f
ORM fixes
2019-12-06 02:00:37 +03:00
Alexander Medvednikov
79b26b1654
use get_type2 in struct.v
2019-12-05 19:02:33 +03:00
Alexander Medvednikov
cca650c655
better `foo must return (int, int)` error
2019-12-05 18:55:27 +03:00
Alexander Medvednikov
cb46bf314e
get_type.v
2019-12-05 18:48:39 +03:00
BilligsterUser
0a38b307cd
os_test: use rmdir() to del dirs
2019-12-05 17:08:55 +03:00
Delyan Angelov
98374ea6fe
CI: fix msvc (temporary work around dialogs poping up)
2019-12-05 17:08:18 +03:00
Alexander Medvednikov
4888d27b71
fix v -live on macOS
2019-12-05 14:40:14 +03:00
Alexander Medvednikov
2a1b0a8cae
rename table.register_type2()
2019-12-05 14:24:25 +03:00
Nicolas Sauzede
2e30e1453d
sdl: fix old vsdl2 references
2019-12-05 12:58:48 +03:00
Alexander Medvednikov
90e3ab8c1e
debugging v -live message.v
2019-12-05 12:48:23 +03:00
Nicolas Sauzede
9d854c5df0
vlib: sdl module + tVintris example
2019-12-05 11:25:55 +03:00
Alexander Medvednikov
6dd1270539
builtin: remove an unnecessary malloc() call
2019-12-05 11:08:41 +03:00
Alexander Medvednikov
867f952d6b
for: ranging through fixed size arrays
2019-12-05 02:17:17 +03:00
Alexander Medvednikov
fb546f376e
set max module depth to 5
2019-12-05 01:27:04 +03:00
Alexander Medvednikov
e707ac4f28
test v -live message.v
2019-12-05 00:17:38 +03:00
Alexander Medvednikov
2144c162c4
os: is_link()
2019-12-04 23:53:11 +03:00
Alexander Medvednikov
a57e29dfc5
os: replace dir_exists with is_dir; file_exists() => exists()
2019-12-04 23:17:45 +03:00
Alexander Medvednikov
fb237b9e53
parser: check types in `a in b` expressions
2019-12-04 22:17:24 +03:00
Alexander Medvednikov
d9248e8d52
parser: fix a wrong index in an error
2019-12-04 13:36:35 +03:00
Delyan Angelov
9a6711fa1b
compiler: c'str' now has type charptr
2019-12-04 13:34:06 +03:00
Alexander Medvednikov
40df0644ca
fix all Foo{!}
2019-12-04 13:08:28 +03:00
Alexander Medvednikov
e32cbfcca7
error on C.Foo{!}
2019-12-04 12:56:59 +03:00
Alexander Medvednikov
b2b34e18e4
use the new &C.Foo(0) cast
2019-12-04 12:19:32 +03:00
Alexander Medvednikov
2bafd41183
`&C.Foo(0)` cast to replace `&C.Foo{!}` hack
2019-12-04 12:13:17 +03:00
bogen85
a9aaa13a09
freestanding: sys_getuid, sys_waitid; minimal fork check; remove bare.S
2019-12-04 11:46:09 +03:00
Alexander Medvednikov
47f5e1178f
-output-cross-platform-c for creating a single x-platform C file
2019-12-04 02:02:52 +03:00
Delyan Angelov
eb20dd39b1
freestanding: init consts
2019-12-04 01:40:26 +03:00
Alexander Medvednikov
c4a43633da
i8, i18, u16 str()
2019-12-03 21:14:17 +03:00
Alexander Medvednikov
66f271f100
fix a string interpolation bug
2019-12-03 20:41:49 +03:00
Alexander Medvednikov
f192429c8a
$if mac => $if macos
2019-12-03 16:29:37 +03:00
Alexander Medvednikov
ff80e3a5fa
i8 print test + $if mac => $if macos
2019-12-03 16:09:43 +03:00
Delyan Angelov
b907cf2179
sync/waitgroup: force sleeping for 1ms
...
fixes issues #2874 and #2961
2019-12-03 15:05:08 +03:00
Delyan Angelov
0a8d2d5dc7
compiler: guess cc kind for -prod builds, to know when to add -flto
2019-12-03 13:58:24 +03:00
Ulises Jeremias Cornejo Fandos
b31ec4ca9a
math: add factorial function (via factorial table)
2019-12-03 11:34:26 +03:00
Enrico Lefass
6d28a80bf8
haiku support (part 2)
2019-12-03 11:26:47 +03:00
Don Alfons Nisnoni
f806e0f9e5
mysql: add error handling
2019-12-03 11:18:20 +03:00
Don Alfons Nisnoni
33793a869f
mysql: make the struct public & update some code
2019-12-02 17:26:58 +03:00
Alexander Medvednikov
c0bb88dfb0
allow # in webview module
2019-12-02 12:31:49 +03:00
Alexander Medvednikov
753e926356
debug v symlink error
2019-12-02 12:16:55 +03:00
Don Alfons Nisnoni
254afcb2d0
*C.char => charptr
2019-12-02 11:37:35 +03:00
penguindark
322733d59a
encoding.utf8 fixes
2019-12-01 20:41:29 +03:00
radare
5ff387bbe4
strings: split_nth and add tests
2019-12-01 16:10:13 +03:00
Delyan Angelov
ec15bfb7d1
v test v => v test-compiler
2019-12-01 12:50:13 +03:00
bogen85
854309a7d8
freestanding: add array support (stack only for now)
2019-12-01 11:27:36 +03:00
Alexander Medvednikov
3fea8f3de5
*char => charptr everywhere
2019-12-01 10:33:26 +03:00
Alexander Medvednikov
698c3823ee
charptr fix
2019-12-01 10:11:29 +03:00
Alexander Medvednikov
0999273d32
CReserved => c_reserved; charptr
2019-12-01 09:56:53 +03:00
Alexander Medvednikov
a23a4ed98a
update all index() uses
2019-11-30 15:27:16 +03:00
Alexander Medvednikov
2651b8957a
parser: fix unreachable code error in if a := opt()
2019-11-30 15:17:27 +03:00
Alexander Medvednikov
81d4f66fbb
string: make `index()` return `?int` instead of `int`/-1
2019-11-30 13:21:21 +03:00
Alexander Medvednikov
cc2bd0bb68
string: make substr private
2019-11-30 12:50:57 +03:00
Alexander Medvednikov
1a0b78ae2f
fix the cli module
2019-11-30 12:44:50 +03:00
Alexander Medvednikov
7e4799334f
array: make left/right/slice private
2019-11-30 12:37:34 +03:00
Alexander Medvednikov
b38283dcf1
string: make left/right private
2019-11-30 12:06:17 +03:00
prime31
ff216e7d50
append module name for module search path
2019-11-30 11:17:37 +03:00
Alexander Medvednikov
68b4dab582
parser: another infinite loop fix
2019-11-30 10:37:28 +03:00
Alexander Medvednikov
c00a7f3a5e
parser: fix infnite loop with `fn foo(&) {}`
2019-11-30 10:21:58 +03:00
Alexander Medvednikov
d71532b64e
optimize `for c in str {`
2019-11-30 09:41:35 +03:00
Delyan Angelov
c7f8f2175b
move vlib/builtin/utf8_util.v to vlib/encoding/utf8/utf8_util.v
2019-11-30 08:52:37 +03:00
Emily Hudson
661ddf3d1e
compiler: realpath before trying to basefilename
2019-11-30 08:01:31 +03:00
Alexander Medvednikov
850788c4bb
parser: fix a bug with & and ==
2019-11-29 23:18:10 +03:00
Alexander Medvednikov
4c11eb5ddc
-bare => -freestanding
2019-11-29 22:49:05 +03:00
Alexander Medvednikov
f724a956b3
parser: fix `a & b == c` precedence
2019-11-29 22:42:32 +03:00
Alexander Medvednikov
881584d04c
V 0.1.23
2019-11-29 20:00:33 +03:00
Alexander Medvednikov
1bfcdaa2cc
ci: test the new prebuilt packages
2019-11-29 19:14:26 +03:00
Alexander Medvednikov
71378b8041
parser: better syntax error for unexpected tokens
2019-11-29 17:06:49 +03:00
joe-conigliaro
11aaee685a
generics: fix errors & simplify
2019-11-29 16:46:43 +03:00
penguindark
82d4a731f3
utf8 functions (to_lower etc)
2019-11-29 16:25:25 +03:00
Alexander Medvednikov
431568faad
x64: fix off by one error in for loops
2019-11-29 12:33:36 +03:00
Alexander Medvednikov
9e19472c33
show an info message if a C compiler is not installed
2019-11-29 12:12:06 +03:00
bogen85
e31d892598
make _V_mret_ unique by putting p.token_idx in it
2019-11-29 11:11:53 +03:00
bogen85
729f9c3391
bare: add mm_alloc, mm_free
...
also split errno from return value in existing Linux syscall wrappers
update applicable syscall wrapper checks
2019-11-29 10:14:17 +03:00
Alexander Medvednikov
52d25336db
x64: function calls; http: download_file()
2019-11-28 13:24:02 +03:00
prime31
208f67132d
added -user_mod_path command line option to add a module search path
2019-11-28 13:04:57 +03:00
Delyan Angelov
7545ea709a
enable alpine/musl CI tests
2019-11-28 11:46:52 +03:00
bogen85
3b7466a13d
ci: rename multiret_with_ptrtype.v
2019-11-28 09:46:52 +03:00
bogen85
f6ec1b29f9
strconv: make string.int() stop parsing on invalid digit
2019-11-28 09:46:10 +03:00
bogen85
9374168b26
compiler: allow function expecting a void* to receive a byteptr
2019-11-28 09:44:43 +03:00
bogen85
e63300e286
temporary fix for issue #2897
2019-11-27 19:55:32 +03:00
sh0f
dbaa37ea46
urllib: fix string length in escape()
2019-11-27 12:15:05 +03:00
れもん
584786d87c
parser: fix `in` expression
2019-11-27 08:48:04 +03:00
Alexander Medvednikov
a3b14e00a2
vweb fixes
2019-11-26 16:08:16 +03:00
Alexander Medvednikov
cb8a19efaf
vweb: bring back html() test
2019-11-26 09:34:09 +03:00
joe-conigliaro
3107618732
vweb: remove no longer needed special case & fix tmpl
2019-11-26 09:23:11 +03:00
ʇʞʌp
6349bd33d3
compiler: Allow `or` usage when assigning to struct fields. ( #2893 )
2019-11-26 09:07:35 +03:00
ʇʞʌp
79a02a4c09
parser: make `p.opt()?` work for methods
2019-11-26 09:04:59 +03:00
joe-conigliaro
385c045e5a
don't add generic parsers to v.files
2019-11-26 09:04:11 +03:00
Alexander Medvednikov
8d241cc164
vweb fixes; ORM fixes; freeing strings
2019-11-26 07:47:16 +03:00
Ned Palacios
bac3c0a63e
compiler: add "modules/ " folder for searching local modules
2019-11-26 06:45:26 +03:00
ʇʞʌp
81d552038c
parser: allow constant usage in assoc
2019-11-26 06:41:56 +03:00
bogen85
5c217b9e61
fix hexadecimal constants + freestanding fixes
2019-11-26 06:12:37 +03:00
joe-conigliaro
92f920b2b8
make errors from code parsed with statements_from_text show correctly
2019-11-25 22:22:40 +03:00
joe-conigliaro
edd4706480
compiler: parser fixes for vweb
2019-11-25 15:29:55 +03:00
M
837af9b230
freebsd: backtrace
2019-11-25 13:54:56 +03:00
Delyan Angelov
30042ab54b
cfns: fix some declarations
2019-11-25 13:54:07 +03:00
joe-conigliaro
7158a012c3
compiler: update to get vweb working
2019-11-25 13:48:25 +03:00
joe-conigliaro
475807566d
fix get_last_nl_from_pos when error is last token ( #2882 )
2019-11-25 20:58:22 +11:00
Delyan Angelov
f7c103d5d2
compiler: remove legacy current workdir from module search
2019-11-25 11:32:11 +03:00
_leif
ee52b4166f
log: enum for logger level
2019-11-25 07:50:59 +03:00
Alexander Medvednikov
9bfea5e60b
pg: define all C functions
2019-11-25 06:55:29 +03:00
Alexander Medvednikov
feacc2441f
socket: fix sizeof
2019-11-25 06:23:09 +03:00
Alexander Medvednikov
a4ab7b14c1
wrap up struct default vals + tests
2019-11-25 05:59:58 +03:00
Unknown User
268a6dc6d9
add missing cfns
2019-11-25 04:35:41 +03:00
Delyan Angelov
5794594e19
compiler: fix vpath module search order regression
2019-11-24 19:39:30 +03:00
Enrico Lefass
f496c1b27b
haiku: adding support to v #1
2019-11-24 19:39:04 +03:00
Alexander Medvednikov
19b4cf66ac
Windows should work now
2019-11-24 15:31:51 +03:00
Alexander Medvednikov
748e8b7ce4
more Windows definitions
2019-11-24 15:29:11 +03:00
Alexander Medvednikov
b44cbc9b13
define RegQueryValueEx on Windows
2019-11-24 15:21:49 +03:00
Alexander Medvednikov
558024696c
lots of C Windows function definitions
2019-11-24 15:16:19 +03:00
Abdullah Atta
d4ae39348f
eventbus: make it usable and add README
2019-11-24 14:27:50 +03:00
Alexander Medvednikov
a74f4a661d
fix C.GetStdHandle() on Windows
2019-11-24 14:07:14 +03:00
Alexander Medvednikov
24b40be548
default struct vals
2019-11-24 13:53:59 +03:00
Alexander Medvednikov
7cc21be7de
clipboard: make compile on Linux
2019-11-24 13:22:57 +03:00
Alexander Medvednikov
81c17e55a6
more C fn definitions
2019-11-24 13:16:11 +03:00
Alexander Medvednikov
f4fe90ea6d
C fn definitions on Linux
2019-11-22 19:00:56 +03:00
Alexander Medvednikov
e9e931fe4a
force C function definitions
2019-11-24 12:14:22 +03:00
Alexander Medvednikov
1f93bb5a9a
os: windows fixes
2019-11-23 21:40:32 +03:00
Alexander Medvednikov
cfd4f0c69c
os: fix fullpath call on windows
2019-11-23 21:05:49 +03:00
Alexander Medvednikov
ccb261f00d
os: fix unreachable code
2019-11-23 21:00:20 +03:00
Alexander Medvednikov
0aa2196eec
os: fix realpath on windows
2019-11-23 20:56:22 +03:00
Alexander Medvednikov
1bd8c465d3
do not allow casting bool to int
2019-11-23 20:40:59 +03:00
Don Alfons Nisnoni
3a6ccf7f31
os: mkdir() error handling
2019-11-23 19:55:18 +03:00
Alexander Medvednikov
0fb0c43c0a
pg: minor fixes
2019-11-23 19:48:00 +03:00
Dwight Schauer
e724792a67
freestanding: add core linux syscalls and associated tests
2019-11-23 19:35:57 +03:00
joe-conigliaro
666509623e
compiler: use token.pos instead of token.col, calculate col when needed
2019-11-23 19:31:28 +03:00
Delyan Angelov
f42be0622e
examples/game_of_life: add a GUI frontend; compiler: local modules relative to a main module
2019-11-23 16:33:25 +03:00
れもん
3d235169c8
parser: fix if expression
2019-11-23 14:25:57 +03:00
Abdullah Atta
0382331499
vlib: add eventbus module
2019-11-23 14:24:25 +03:00
Delyan Angelov
9b4bc0189b
backtraces: cleaner looking backtrace output on linux
2019-11-23 14:22:55 +03:00
joe-conigliaro
9c1107f723
compiler: generics fix byteptr support
2019-11-23 10:06:14 +03:00
Alexander Medvednikov
57fbf0b8a9
map: fix `in` for deleted keys
2019-11-22 20:05:43 +03:00
Alexander Medvednikov
94318b1287
x64: use correct exe name and set +x
2019-11-22 19:09:14 +03:00
joe-conigliaro
c11025f01f
compiler: clean up & optimize generics. add comments & support all param types ( #2845 )
2019-11-23 00:09:53 +11:00
Alexander Medvednikov
9712213f50
x64 machine code generation (ELF)
2019-11-22 14:33:22 +03:00
joe-conigliaro
ab91733a28
small optimization with generics and use os.is_dir in vweb again
2019-11-22 10:55:20 +03:00
Dwight Schauer
4edade5067
compiler: fix a deferencing cast was causing a segfault
2019-11-22 09:11:06 +03:00
joe-conigliaro
8fbfceed30
compiler: generics - support across modules/files
2019-11-22 08:22:11 +03:00
Unknown User
7c802f31d3
parser: fix unused variable warning
2019-11-22 05:23:01 +03:00
Delyan Angelov
d569f23e1c
compiler: fix undeclared errors with [][]u16,u32,u64
2019-11-22 05:22:18 +03:00
gabixdev
76cd70c232
compiler: add -vpath and -vlib_path options
2019-11-21 15:06:19 +03:00
Tim Basel
597a6fead2
vlib: cli module
2019-11-21 15:03:12 +03:00
pfefferminz132
dcea76ff41
fix "v symlink" with relative paths
2019-11-21 04:34:08 +03:00
Alexander Medvednikov
8e32ef382a
fix `v symlink`
2019-11-20 18:27:46 +03:00
Alexander Medvednikov
3e564a2506
parser: fix register() bug in interfaces
2019-11-20 18:19:13 +03:00
Alexander Medvednikov
759644ab36
examples: empty gg/freetype project
2019-11-20 07:26:52 +03:00
ʇʞʌp
26fb7e0821
compiler: emit Option_ typedef for fn args and struct fields
2019-11-20 00:58:31 +03:00
kevin70g
5536eb581c
time: C.timeval struct member definitions fix
2019-11-19 18:28:29 +03:00
cloudsong
787f49b7a0
interface: enable calling interface with multi-args
2019-11-19 18:27:32 +03:00
joe-conigliaro
4bbed4f910
parser: fix default optional value
2019-11-19 17:47:49 +03:00
Alexander Medvednikov
ddcff7e9c5
rand/pcg32: make the struct public
2019-11-19 14:26:18 +03:00
Delyan Angelov
a620e66af5
compiler: add os.mv_by_cp and use it for the temporary files
2019-11-19 12:55:02 +03:00
Alexander Medvednikov
0cf232d692
parser: a better [] error message
2019-11-19 11:13:19 +03:00
PoLLeN
fe81ccab20
asm.v: fix a small typo
2019-11-19 09:43:02 +03:00
Silvan Büdenbender
94b36250a1
bitfield: fix bit order
2019-11-19 03:32:44 +03:00
Alexander Medvednikov
20d6492775
os: make read_lines() return ?[]string
2019-11-19 02:25:55 +03:00
Alexander Medvednikov
52e3586be3
os: use mkdir() on Linux for now
2019-11-19 00:33:43 +03:00
Alexander Medvednikov
c98db8c437
array: fix sort() for ints
2019-11-19 00:27:35 +03:00
Delyan Angelov
c73f34cc5f
net: make net.socket.write, net.socket.read_line more robust
2019-11-19 00:13:14 +03:00
Alexander Medvednikov
1ccd1979a4
vfmt: line comments fixes
2019-11-18 15:12:35 +03:00
Alexander Medvednikov
439bb0c5de
foo()? test
2019-11-18 12:11:25 +03:00
Alexander Medvednikov
4c0269597d
fix repl tests; change asm syntax a bit
2019-11-18 11:59:13 +03:00
Alexander Medvednikov
f7c7ffecb3
makefile: pre-build builtin modules
2019-11-18 03:51:14 +03:00
Alexander Medvednikov
e081791eaf
fix repl tests
2019-11-18 02:34:49 +03:00
Jiten Palaparthi
32fbc2bdf3
remove pub for a private function in array.v
2019-11-18 00:43:23 +03:00
Don Alfons Nisnoni
78c2f8cab3
http: add some docs
2019-11-18 00:42:25 +03:00
Alexander Medvednikov
4fb0b49806
parser: fix the no fn main error in script mode
2019-11-18 00:40:59 +03:00
Alexander Medvednikov
ffb72e855a
vhelp: compress option
2019-11-17 15:35:05 +03:00
joe-conigliaro
6d7fe1f83c
fix vtool used with paths w/spaces (win/nix)
2019-11-17 14:36:05 +03:00
Alexander Medvednikov
6ae8457f35
fix strings.Builder.str()
2019-11-17 07:05:13 +03:00
Delyan Angelov
be7cf3e812
compiler: support storing temporary files under TMPDIR/v/
...
Fix for filepath.join not \0 terminating its result
2019-11-17 06:45:20 +03:00
Abdullah Atta
200fcd41ce
vlib: add a clipboard module (Windows, macOS, X)
2019-11-17 05:40:03 +03:00
Alexander Medvednikov
2391c72e4b
tcc: 64 bit by default
2019-11-17 01:14:05 +03:00
Alexander Medvednikov
6c51d0bb78
another inline asm test + disable on msvc
2019-11-17 01:07:21 +03:00
Alexander Medvednikov
2964bf9e23
inline assembly
2019-11-17 00:59:49 +03:00
Alexander Medvednikov
5a1de13e10
bare: fix str[idx]
2019-11-16 23:22:40 +03:00
Alexander Medvednikov
0c5854e371
add a c/raw string interpolation test
2019-11-16 22:17:01 +03:00
Swastik Baranwal
5d5268a53d
expression: add a check for raw strings
2019-11-16 22:15:22 +03:00
Alexander Medvednikov
8d1eb759f7
fix v -o foo.c build module foo
2019-11-16 21:49:58 +03:00
Michiel Vlootman
328ccebf06
readme: fix link to vweb example
2019-11-16 19:58:55 +03:00
Alexander Medvednikov
dc50ed69cf
bare: fix str[idx]
2019-11-16 11:33:04 +03:00
Alexander Medvednikov
a545ccb740
bare: stdint.h
2019-11-16 11:24:25 +03:00
Alexander Medvednikov
56fee6835a
http: remove confusing comments and dead code
2019-11-16 10:32:17 +03:00
Alexander Medvednikov
d1b8d34dd5
os_linux.v
2019-11-16 09:16:51 +03:00
Nicolas Sauzede
1dadf9d966
fix Windows warnings
2019-11-16 02:30:50 +03:00
Delyan Angelov
e577b40743
compiler: add support for $if x32, x64, big_endian, little_endian
2019-11-15 16:14:28 +03:00
Alexander Medvednikov
96cde10696
C string literals (c'str'); bare builtin module; bare println()
2019-11-15 02:29:20 +03:00
Alexander Medvednikov
bd97dc0134
os: realpath potential fix
2019-11-15 01:07:38 +03:00
Alexander Medvednikov
a04c3bac83
CI: ubuntu-musl target
2019-11-15 00:46:40 +03:00
Alexander Medvednikov
9499275180
os: mkdir syscall on linux
2019-11-15 00:15:23 +03:00
Alexander Medvednikov
2dcb8b3bb0
bare: ArchLinux fix?
2019-11-14 22:18:22 +03:00
Alexander Medvednikov
a8b5c00939
parser: allow << >> with enums
2019-11-14 22:14:14 +03:00
Delyan Angelov
a329104dcb
compiler: remove dead code (a tcc bug fix)
2019-11-14 11:57:28 +03:00
Alexander Medvednikov
34c4565f7c
wrap up -bare
2019-11-14 11:11:52 +03:00
Alexander Medvednikov
6eaa2db533
fix V.js
2019-11-14 10:05:41 +03:00
Alexander Medvednikov
7d924679a6
[]: update all examples and tests
2019-11-14 10:00:22 +03:00
Alexander Medvednikov
96b530cf85
update []
2019-11-14 09:53:05 +03:00
Alexander Medvednikov
4a833d8151
parser: clean up all []
2019-11-14 09:21:20 +03:00
Alexander Medvednikov
5df5f97daf
parser: allow `arr = []` instead of `arr = []string`
2019-11-14 07:15:17 +03:00
Alexander Medvednikov
8d4ef822b6
1
2019-11-14 07:08:11 +03:00
Alexander Medvednikov
1d460c4d49
-bare option
2019-11-14 06:50:21 +03:00
Alexander Medvednikov
b1fa0d25f0
foo()? syntax
2019-11-14 06:15:45 +03:00
BigBlack
72249ce889
fix duplicate #define generation
2019-11-13 23:35:14 +03:00
Alexander Medvednikov
861f2d4bc0
parser: skip $if windows etc blocks on a different os
2019-11-13 21:14:37 +03:00
Alexander Medvednikov
3b929cdd03
update repls tests
2019-11-13 20:40:01 +03:00
Silvan Büdenbender
f30b0f1017
bitfield: add from_bytes() function
2019-11-13 19:48:00 +03:00
Alexander Medvednikov
ffa6bcfff5
vfmt: handle comments
2019-11-13 11:54:22 +03:00
Steven Gay
51663520c8
MSVC backtrace
2019-11-13 11:05:06 +03:00
Alexander Medvednikov
10b0432eca
parser: fix mutable map args
2019-11-12 22:35:53 +03:00
Don Alfons Nisnoni
d732be64f6
array: update docs
2019-11-12 19:26:04 +03:00
Delyan Angelov
3643dcbf4b
sqlite: use in-memory database in examples and tests
2019-11-12 19:25:30 +03:00
Delyan Angelov
32473eeafe
net and http: more consistent error messages
2019-11-12 19:23:53 +03:00
BigBlack
99169ae4ff
parser: ptr++,*(ptr+1)
2019-11-11 23:39:16 +03:00