Daniel Däschle
7cf9b32742
cmd: show cleaner messages, when v can not compile a tool, or update itself
2020-04-07 17:56:33 +03:00
Daniel Däschle
0024ff848d
parser: check if the last or {} block expression is valid
...
These checks allows for:
a) `x := call() or { 'abc' }`
b) `x := call() or { panic('abc') }`
c) `x := call() or { exit(123) }`
d) `x := call() or { continue }`
e) `x := call() or { break }`
f) `x := call() or { return }`
... but produce errors for:
g) `x := call() or { println('an error') }` , etc.
2020-04-07 17:36:00 +03:00
Alexander Medvednikov
275b20a184
vfmt: handle for ;; loops; run vfmt on parser.v
2020-04-07 15:48:13 +02:00
Alexander Medvednikov
8f9a8e1e7f
vfmt: small fixes + run on checker.v and fmt.v
2020-04-07 15:15:49 +02:00
Alexander Medvednikov
890940292b
Revert "cgen: print bool in struct correctly"
...
This reverts commit 78440be2b2
.
2020-04-07 12:56:05 +02:00
Daniel Däschle
78440be2b2
cgen: print bool in struct correctly
2020-04-07 12:39:10 +02:00
yuyi
08d90afb8c
builder: fix an error on windows
2020-04-07 12:32:49 +02:00
yuyi
426eb46166
test: fix windows test error
2020-04-07 12:32:09 +02:00
Daniel Däschle
fe0942043c
checker: check if BranchStmt is in a loop
2020-04-07 12:29:11 +02:00
Alexander Medvednikov
fd75cce0f3
vfmt: minor fixes + tests
2020-04-07 04:05:59 +02:00
Daniel Däschle
b0dacef32b
time: change unix timestamp to u64
2020-04-07 03:35:47 +02:00
lutherwenxu
a8c92e6dff
checker: remove hack and enforce type checking
2020-04-07 03:27:06 +02:00
Alexander Medvednikov
fa5fcee584
cmd/v: fix run args
2020-04-07 03:21:32 +02:00
Alexander Medvednikov
33644a4f91
cmd/v: fix `run`
2020-04-07 01:09:25 +02:00
Alexander Medvednikov
b7560fe4bf
parser: do not allow duplicate methods; builder: cleaning up
2020-04-07 01:02:48 +02:00
Alexander Medvednikov
8d150d427a
merge and simplify cmd/v and v.builder
2020-04-07 00:44:31 +02:00
Delyan Angelov
8da12eb8a7
errors: column index tweaks for emacs/vim
2020-04-06 23:15:53 +03:00
Delyan Angelov
333e725380
errors: remove 0 from caret line
2020-04-06 20:41:33 +03:00
Delyan Angelov
bc2ea2f3d4
errors: fix caret position on lines with tabs
2020-04-06 20:35:24 +03:00
Delyan Angelov
3b3d248637
scanner: use formatted errors for s.error too
2020-04-06 19:58:32 +03:00
ka-weihe
5be892c635
cheaders: update wyhash to version gamma
2020-04-06 18:47:29 +02:00
Alexander Medvednikov
7f516dbae2
cgen: minor optionals fixes
2020-04-06 18:46:50 +02:00
Delyan Angelov
d74eb99066
errors: do not bold the actual error message content
2020-04-06 19:46:23 +03:00
Delyan Angelov
7a99949f0e
errors: print more informative and pretty errors
2020-04-06 19:40:20 +03:00
Alexander Medvednikov
d865fc26eb
http: fix method_and_url_to_response definition
2020-04-06 17:42:47 +02:00
lutherwenxu
e8b26b1b8d
checker: make struct_init check more robust
2020-04-06 17:39:52 +02:00
yuyi
4d5fe14968
log: fix example error
2020-04-06 17:22:53 +02:00
Alexander Medvednikov
2006995020
cmd/v: remove clang-format (the generated code is pretty from the start)
2020-04-06 17:11:01 +02:00
Alexander Medvednikov
87c00a61da
strconv: fix compilation
2020-04-06 14:53:28 +02:00
Alexander Medvednikov
35fbac8d56
parser/cgen: default struct field values
2020-04-06 14:45:48 +02:00
Major Taylor
f099f90f50
string: fix trim_right, add tests
2020-04-06 14:30:25 +02:00
Alexander Medvednikov
f59c9133da
cgen: temporary headers fix
2020-04-06 14:22:59 +02:00
Alexander Medvednikov
be014fcdd6
checker: << check; initial #flag os support
2020-04-06 02:05:11 +02:00
ka-weihe
a30d292385
map: fix leaksfree fix ( #4254 )
2020-04-05 23:31:53 +02:00
Alexander Medvednikov
edb93914bb
vfmt: re-run on fmt.v
2020-04-05 23:30:16 +02:00
Alexander Medvednikov
852ec61b34
vfmt: fix single line if
2020-04-05 23:00:21 +02:00
ka-weihe
307daacf67
depgraph/map: fix memory bug
2020-04-05 22:09:52 +02:00
Alexander Medvednikov
ffe8452f02
vfmt: fix imports
2020-04-05 21:53:00 +02:00
Alexander Medvednikov
08bbc251ff
vfmt: fix multiline comments
2020-04-05 19:35:10 +02:00
Alexander Medvednikov
8260236331
vfmt: run on fmt.v
2020-04-05 18:15:50 +02:00
Alexander Medvednikov
e464c4acc5
vfmt: more fixes + run on cgen.v
2020-04-05 18:03:36 +02:00
Alexander Medvednikov
df45932c03
vfmt: fix same line stmt comments
2020-04-05 16:38:33 +02:00
Alexey
781c20a6ae
cgen: bring back Windows fixes
2020-04-05 16:08:16 +02:00
Delyan Angelov
206c1f4ca1
os: implement os.is_writable_folder/1
2020-04-05 16:56:54 +03:00
Delyan Angelov
f139e98745
launch_tool: use println for verbose messages instead of eprintln
2020-04-05 15:31:09 +03:00
Delyan Angelov
44a271d9e9
v version: show only vhash, when vhash and current_hash are the same
2020-04-05 14:47:01 +03:00
lydiandy
35fab2bb7b
ast: pub interface field
2020-04-05 12:31:39 +02:00
Alexey
9c1eaaeb49
cgen: declare empty structs correctly
2020-04-05 12:31:25 +02:00
Alexander Medvednikov
de701ccfac
fmt: struct field comments on the same line
2020-04-05 12:25:39 +02:00
Delyan Angelov
75518e5bb9
ci: extract separate working_with_an_empty_struct_test.v
2020-04-05 12:55:54 +03:00
Delyan Angelov
5e76d53fcd
compiler: support default values in optional blocks
2020-04-05 11:59:15 +03:00
Alexander Medvednikov
05fbe5ab7a
parser: move comments
2020-04-05 04:05:09 +02:00
Alexander Medvednikov
2a06263a5b
vfmt: more fixes; enable `v fmt` and `v fmt -w`
2020-04-05 03:37:38 +02:00
Alexander Medvednikov
97db4c0e9a
vfmt: comments and other fixes
2020-04-05 02:08:13 +02:00
Delyan Angelov
45fdbc4df7
support pretty printing of StringInterLiteral in asserts too
2020-04-05 00:51:49 +03:00
Daniel Däschle
e077cce103
vlib: add inode/mode information functionality ( #4242 )
...
* vlib: add inode/mode information functionality
* vlib: add docs to inode
2020-04-05 00:37:13 +03:00
Alexey
98086d7259
strconv: fix atof test
2020-04-04 23:28:47 +02:00
Delyan Angelov
774fb7e850
fix 'assert false' pretty printing
2020-04-05 00:12:16 +03:00
Delyan Angelov
45401954fa
fix vlib/os/os_test.v
2020-04-04 23:06:47 +03:00
Delyan Angelov
b0567543c9
add support for errcode in or{} optional blocks.
2020-04-04 21:47:57 +03:00
Alexey
abd0686043
cgen: fix struct initialization
2020-04-04 17:59:49 +02:00
Alexey
bb587c27a8
bitfield: update module
2020-04-04 17:59:26 +02:00
Delyan Angelov
8f06d60084
fix vlib/bitfield/bitfield_test.v
2020-04-04 18:03:06 +03:00
Alexander Medvednikov
33b03449d5
tools: remove vnames.v for now
2020-04-04 16:39:08 +02:00
Alexander Medvednikov
e600feda98
cgen: __argc is already used on windows
2020-04-04 15:59:46 +02:00
Alexey
b8f1152408
clipboard: fix build on Windows
2020-04-04 15:37:13 +02:00
Alexey
6455e57e82
fmt: process C function declarations correctly
2020-04-04 15:36:46 +02:00
krischerven
1960c6f4cb
checker: make an error message less ambiguous
2020-04-04 15:36:12 +02:00
Delyan Angelov
4c8703416e
fix vlib/math/math_test.v
2020-04-04 16:07:42 +03:00
Alexander Medvednikov
f748390172
parser: do no allow var names with __; cgen: use __argc
2020-04-04 14:55:40 +02:00
Alexander Medvednikov
95a1bd8470
cgen: handle C typedefs
2020-04-04 14:32:42 +02:00
Alexander Medvednikov
440f1cf4c6
map: remove old get methods
2020-04-04 14:22:39 +02:00
Alexander Medvednikov
46aed151ab
parser: snake_case check; array: mutable array test
2020-04-04 14:09:58 +02:00
krischerven
4c6db7a64e
cgen: fix mutable arrays
2020-04-04 14:08:38 +02:00
Delyan Angelov
133842bf95
Remove unused self import of v.util into v.util .
2020-04-04 14:49:08 +03:00
joe-conigliaro
b4e5e36d4a
checker: var opt & temp `[]` & non array init error & bug notes
2020-04-04 22:32:16 +11:00
Alexander Medvednikov
d1f653f9bd
parser: fix GG struct init
2020-04-04 13:11:50 +02:00
Alexander Medvednikov
c0d4503f25
gl/glfw: update C definitions
2020-04-04 12:56:35 +02:00
Alexey
d56276017c
cgen: fix variadics called with 0 vargs
2020-04-04 12:54:45 +02:00
yuyi
8ba6e45d83
time: fix unix_time
2020-04-04 12:10:56 +02:00
Alexey
c6fabea49d
cgen: generate code for `go` statement for Windows
2020-04-04 12:09:05 +02:00
yuyi
0796eb4149
os: optimize os_windows.v
2020-04-04 11:59:25 +02:00
Alexey
5313a1401f
checker: show actual field name in warn message
2020-04-04 11:57:45 +02:00
Alexey
72df30050d
term: fix `get_terminal_size` on Windows
2020-04-04 11:56:43 +02:00
joe-conigliaro
97d8633557
checker: constant cycle & test fix
2020-04-04 17:05:26 +11:00
joe-conigliaro
c9e290b36f
table: simplify/generalise type fns & remove calls
2020-04-04 16:37:11 +11:00
joe-conigliaro
bf59828897
ast: const impl & global scope & objects
2020-04-04 14:14:40 +11:00
yuyi
bb5ed66bb4
eval: fix new_checker call
2020-04-04 02:03:41 +02:00
Alexander Medvednikov
1d2de44e19
cgen: fix print(ptr); checker: uninitialized reference error/warning
2020-04-03 20:17:53 +02:00
Alexander Medvednikov
436ef12730
cgen: str(): handle empty structs
2020-04-03 18:49:15 +02:00
Delyan Angelov
b411d29577
v2: fix support for 'go fn()' in modules. sync.pool is again multithreaded.
2020-04-03 19:44:49 +03:00
Alexander Medvednikov
c32ed8af51
cgen: struct str() generation; go() fixes
2020-04-03 18:05:53 +02:00
Delyan Angelov
31c4b1cda6
v2: compile vfmt again; consistent colored error messages
2020-04-03 18:42:22 +03:00
Alexander Medvednikov
52f096f5d9
cgen: `go xxx()`
2020-04-03 15:18:20 +02:00
Alexey
6a5cc0fa19
tests: update assert output
2020-04-03 13:39:11 +02:00
Alexey
6c4de001b8
cgen: add `builtin.init` call inside of `_vinit`
2020-04-03 13:27:19 +02:00
Alexey
4cde6c0865
fmt: process TypeOf node
2020-04-03 11:59:53 +02:00
Alexander Medvednikov
87a185ea9c
checker: remove newlines after errors
2020-04-03 11:09:02 +02:00
Alexander Medvednikov
0dad1a89e6
checker: much less verbose error messages
2020-04-03 11:01:09 +02:00
Alexander Medvednikov
1d52847924
checker: error on an unknown ident
2020-04-03 10:52:48 +02:00
Alexander Medvednikov
a25f47124d
cgen: make array_set/map_set work with pointers
2020-04-03 10:41:01 +02:00
Alexey
ef339a4896
rand: update module
2020-04-03 08:53:57 +02:00
yuyi
5e6aa5371a
scanner: minor optimization ( #4211 )
2020-04-03 09:46:54 +03:00
Delyan Angelov
6b9bf8cbf7
v2: fixes for most of vlib/builtin/map_test.v .
2020-04-03 00:42:08 +03:00
Delyan Angelov
07c53b1b70
v2: report ill defined consts by name/line, not only how many they are
2020-04-02 22:33:36 +03:00
Alexey
5b6ec8996a
sync: fix build on Windows
2020-04-02 20:58:07 +02:00
hazohelet
0e6fe0a4f2
V: fix const bugs and pass const_test.v ( #4206 )
...
* fix const bug in v2
* v2: fix const decl
* small comment fix
2020-04-02 19:39:17 +02:00
Alexey
6309e699e5
builtin: add operator precedence test
2020-04-02 19:02:49 +02:00
Alexander Medvednikov
804d303487
cgen: add () for | and ^
2020-04-02 18:26:56 +02:00
Delyan Angelov
abf15e863c
v2: compile vrepl, 'fn main(){println(2+2)}' runs now
...
It works if you give it complete V programs like
fn main(){println(2+2)}
but not for single expressions like 2+2 or statements like a:='abc'
2020-04-02 19:21:12 +03:00
Alexander Medvednikov
fd12e4e826
fix compiler_test.v
2020-04-02 18:12:10 +02:00
Delyan Angelov
61f79270a8
v2: compiler_test.v should fail on errors.
2020-04-02 19:01:31 +03:00
penguindark
83289d74a7
builtin: fix int to hex
2020-04-02 17:16:17 +02:00
Alexey
8c050eff07
msvc: add a workaround to fix backtrace ( #4200 )
2020-04-02 17:11:12 +02:00
Alexander Medvednikov
40fd924b15
parser: match must be exhaustive; cmd/v: one verbosity level, simpler version
2020-04-02 16:51:16 +02:00
Alexander Medvednikov
f087e819d7
cli: minor fixes
2020-04-02 16:04:57 +02:00
SleepyRoy
d5b2eb3c23
test: remove old num_lit_call_method
2020-04-02 15:52:46 +02:00
Delyan Angelov
ad9848d983
fix cmd/tools/vtest.v build
...
This PR enables building them again with v2, by making vlib/sync/pool.v
single threaded for now, and by removing the use of generics till they
are fixed in v2.
2020-04-02 15:52:23 +02:00
Delyan Angelov
4ada412a05
v2: stage 2 for enhancing 'v version' with the current git commit hash
2020-04-02 15:51:48 +02:00
Alexey
01aa2b86f5
array, map: cast voidptr to byteptr
2020-04-02 15:31:44 +02:00
Alexander Medvednikov
d4df916581
array: cast data to byteptr
2020-04-02 14:58:45 +02:00
Alexander Medvednikov
be327962d3
strconv: remove an assert for now
2020-04-02 14:26:35 +02:00
Alexander Medvednikov
5b53b3d7e3
cgen/os: minor fixes
2020-04-02 14:00:28 +02:00
Alexander Medvednikov
6e380b8897
cgen: brin back hashes()
2020-04-02 13:49:59 +02:00
Alexander Medvednikov
5b835d294c
more windows fixes + bring back windows ci
2020-04-02 13:44:46 +02:00
Alexander Medvednikov
1178bfa578
windows: a temp SUCCESS fix
2020-04-02 13:31:37 +02:00
Delyan Angelov
084f853a2a
v2: enhance version with current git commit hash. Cleanup redundant code.
2020-04-02 13:31:02 +02:00
Alexander Medvednikov
d9c7253836
windows: "".to_wide() fixes
2020-04-02 13:24:23 +02:00
Alexander Medvednikov
1fe2933dd9
cgen: windows fixes
2020-04-02 13:09:39 +02:00
Alexander Medvednikov
4981c5a870
parser: fix public interfaces
2020-04-02 12:53:25 +02:00
yuyi
86ea886ad7
scanner: uniform bool type variable names
2020-04-02 12:23:18 +02:00
Delyan Angelov
12b8dc2613
v2: fix version
2020-04-02 10:48:29 +02:00
Alexander Medvednikov
d57b1ca962
fix valgrind test
2020-04-02 10:44:35 +02:00
Alexander Medvednikov
461a5b2c18
cgen: fix raw strings
2020-04-02 10:15:35 +02:00
Alexander Medvednikov
683aa75b8d
cgen: fix filter()
2020-04-02 09:32:10 +02:00
yuyi
24499aa6de
scanner: minor refactoring
2020-04-02 09:27:00 +02:00
krischerven
dac304195e
cgen: print: support all the same functionality as println
2020-04-02 09:19:57 +02:00
Major Taylor
3eff266eb9
cgen: vcleanup call fix ( #4186 )
2020-04-02 09:18:45 +02:00
krischerven
561b7a0ea5
enum: make .str() print the name instead of the value
2020-04-02 03:27:06 +02:00
Alexander Medvednikov
07ea1eff81
glfw: more fn definitions
2020-04-02 02:02:12 +02:00
Alexander Medvednikov
507f4ce87a
array: handle "0" strings
2020-04-02 01:47:32 +02:00
Alexander Medvednikov
88d15c6611
gl, glfw, freetype fixes
2020-04-02 01:45:22 +02:00
Alexander Medvednikov
1cfe44d9c6
fix windows build
2020-04-02 01:15:00 +02:00
SleepyRoy
74bdc57fad
tests: fix num_lit_call_method_test
2020-04-02 00:18:29 +02:00
Alexander Medvednikov
fb4b93dfc0
ci fixes
2020-04-02 00:10:11 +02:00
Alexander Medvednikov
91ffeeb73b
parser: fix `(x mut &X)`
2020-04-01 23:56:55 +02:00
Alexander Medvednikov
c6cf8ace22
glfw and tetris fixes; temporary ci fixes
2020-04-01 23:49:11 +02:00
Alexander Medvednikov
24fc4a4c04
use autofree only with -autofree for now
2020-04-01 23:28:56 +02:00
Alexander Medvednikov
39434155f8
short struct init syntax
2020-04-01 23:23:20 +02:00
Alexander Medvednikov
d9af06f2ad
remove remaining files in vlib/compiler
2020-04-01 22:19:09 +02:00
Alexander Medvednikov
8dfb14b1c4
remove 15k lines of code of the old backend; make V2 the default backend
2020-04-01 21:25:31 +02:00
Alexander Medvednikov
30f306dc1a
another vfmt2 fix
2020-04-01 18:25:05 +02:00
Alexander Medvednikov
f657c4b514
another vfmt2 fix
2020-04-01 18:16:56 +02:00
Alexander Medvednikov
3ef6436bef
fix fmt2 test
2020-04-01 17:52:50 +02:00
Alexander Medvednikov
e3713de41d
fix compilation
2020-04-01 17:17:35 +02:00
Alexander Medvednikov
0de853a2ab
v2: lots of minor test fixes
2020-04-01 17:14:21 +02:00
joe-conigliaro
6764c7dd5c
parser/cgen: typeof test fixes - match & fixed array order
2020-04-02 02:13:21 +11:00
yuyi
bd8d51fc95
token: small optimizations
2020-04-01 16:50:56 +02:00
Alexander Medvednikov
5a0bfa03b3
fix tests
2020-04-01 15:39:54 +02:00
Alexander Medvednikov
3dae1cc131
move sdl module to github.com/vlang/sdl
2020-04-01 15:27:28 +02:00
Alexander Medvednikov
7fd81d3abb
parser: fix ^=; disable generics and interface map tests for now
2020-04-01 15:15:21 +02:00
Alexander Medvednikov
b1b811b5ed
v2: static (for translated code only)
2020-04-01 13:38:05 +02:00
Alexander Medvednikov
48832200bb
parser: allow types that start with &&; cgen: allow ++/-- exprs for now
2020-04-01 13:18:58 +02:00
yuyi
56a9196be8
token: fix nr_tokens
2020-04-01 12:12:25 +02:00
yuyi
b28e372106
scanner: small optimization
2020-04-01 12:11:52 +02:00
Major Taylor
9bb1b5d1bb
v2: enum fields separated by commas
2020-04-01 12:11:00 +02:00
Delyan Angelov
5b990078f9
more precise support for internal module tests
2020-03-31 23:42:30 +02:00
Alexander Medvednikov
2ac074655f
fix interface test
2020-03-31 21:05:48 +02:00
Alexander Medvednikov
050ec5d9e3
parser: do not allow string{} outside of builtin
2020-03-31 21:03:21 +02:00
Alexander Medvednikov
a3bd19ce73
cgen: generate enums earlier
2020-03-31 20:26:15 +02:00
Alexander Medvednikov
2b563bc69f
v2: initial interface support; fix enum_hex_test.v
2020-03-31 19:59:41 +02:00
Delyan Angelov
50143ad9bf
v2: be silent by default
2020-03-31 19:58:44 +02:00
Alexander Medvednikov
2fe0e80569
cgen: enum default values
2020-03-31 19:43:11 +02:00
Alexander Medvednikov
43f72246aa
checker: fix index type check
2020-03-31 17:51:16 +02:00
Alexander Medvednikov
f98cc9c017
cgen: fix ARR_LEN
2020-03-31 17:16:12 +02:00
Alexander Medvednikov
9d630dff30
allow slicing of fixed size arrays
2020-03-31 16:48:00 +02:00
joe-conigliaro
d048bf66b0
cgen: optimize/generalize typ method
2020-04-01 00:18:25 +11:00
Alexander Medvednikov
956bf23390
memory fixes: 21% of V compiler leaks fixed
2020-03-31 14:33:16 +02:00
SleepyRoy
9b9c1cc834
scanner: fix number literal calling method
2020-03-31 12:47:32 +02:00
Delyan Angelov
b62035e3d0
solaris & termux: fix both, using the more portable termios.h
2020-03-31 12:46:46 +02:00
joe-conigliaro
21e4f2422d
cgen: clarify field name
2020-03-31 19:11:47 +11:00
joe-conigliaro
f8169fee48
table: add i8 to number_type_idxs
2020-03-31 16:17:26 +11:00
joe-conigliaro
f58875a202
table: i8 -128 was being cast to int closes #4164
2020-03-31 16:07:30 +11:00
joe-conigliaro
3b621c0ce6
checker: make var_scope mutable
2020-03-31 15:41:14 +11:00
joe-conigliaro
602bc06bee
ast: use multi return optional for find_scope_and_var
2020-03-31 15:39:14 +11:00
joe-conigliaro
71ca553190
cgen: multi return/assign optionals
2020-03-31 15:34:59 +11:00
Delyan Angelov
07de351546
v2: support -stats for _test.v files
2020-03-30 17:21:32 +02:00
joe-conigliaro
3440d7edd8
ast: first step merging CallExpr & MethodCallExpr
2020-03-30 21:39:20 +11:00
Delyan Angelov
7785583b34
android: fix termux build
2020-03-29 20:54:21 +02:00
hazohelet
ec025f2020
compiler: use type `unresolved` for unresolved consts
2020-03-29 19:26:55 +02:00
yuyi
c9eed0b89b
cgen: optimize a replace call
2020-03-29 10:09:27 +02:00
Alexey
a333ac1888
all: remove redundant parentheses in `if` statements
2020-03-29 10:08:42 +02:00
Delyan Angelov
e09447d011
v and v2: support @VEXE
2020-03-28 21:51:45 +01:00
vamsi-shankar
715d4f6601
math: copysign()
2020-03-28 18:32:38 +01:00
Delyan Angelov
a9724fd38d
v2: typeof()
2020-03-28 17:37:22 +01:00
joe-conigliaro
837bffd03a
parser: parse type - fix multiple &
2020-03-29 01:15:10 +11:00
Alexander Medvednikov
831be43740
checker: check ! operator
2020-03-28 14:38:16 +01:00
joe-conigliaro
718819eb7a
map/scope/checker: update just var type & ret zero in map.get3
2020-03-29 00:00:28 +11:00
yuyi
9fb218d379
glfw: temporary fix
2020-03-28 12:47:24 +01:00
Alexey
cedf185b41
v2: fix Windows errors
2020-03-28 10:19:38 +01:00
Alexander Medvednikov
f627710870
fix repl tests
2020-03-27 20:49:20 +01:00
Alexander Medvednikov
98a0beab03
cgen: generate str() methods; merge c tests
2020-03-27 20:33:30 +01:00
Alexander Medvednikov
eed7c91e87
move compiler tests from compiler/ to v/
2020-03-27 18:01:46 +01:00
Alexander Medvednikov
f6db36d7f0
fix parser_test and vfmt.v
2020-03-27 15:24:08 +01:00
Alexander Medvednikov
7369cb7b86
fmt: fix tests
2020-03-27 15:19:13 +01:00
Alexander Medvednikov
473d9fef55
checker: do not allow extra () in if conditions
2020-03-27 14:57:19 +01:00
Alexander Medvednikov
1a751208ca
cgen: skip $if os {} block
2020-03-27 14:44:30 +01:00
Alexander Medvednikov
7fdce50718
cgen: write defer statements at the end of the function
2020-03-27 11:21:00 +01:00
Joe Conigliaro
fd8bb2c95c
tests: small array/struct test notes & tmp fix
2020-03-27 20:47:24 +11:00
r00ster
bee8972632
readline: make some functions public
2020-03-27 09:55:15 +01:00
Alexander Medvednikov
db59c621e8
v2: minor fixes
2020-03-27 08:47:02 +01:00
Joe Conigliaro
883a105aca
cgen: fix tests
2020-03-27 17:28:04 +11:00
Joe Conigliaro
7ce7151ad2
cgen: v2 compiles itself - defer stmt / if * in opt parens.
2020-03-27 17:21:22 +11:00
penguindark
8de027c4b4
strconv: fix on ftoa string decimal aproximation, 'nan' string fix
2020-03-26 22:39:46 +01:00
Alexander Medvednikov
9185de3fb7
cgen: fix tests
2020-03-26 22:28:24 +01:00
Alexander Medvednikov
f0334b2e12
cgen: fix `arr[i] *= x` and `2d_arr << arr`
2020-03-26 22:09:25 +01:00
Delyan Angelov
f489c89987
v2: more informative assert output; string interpolation formatting
2020-03-26 19:17:14 +01:00
yuyi
6892a3e0a8
glfw: remove excess `glfw.` in module glfw
2020-03-26 17:32:08 +01:00
Alexander Medvednikov
eb57f192d4
cgen: fix test
2020-03-26 17:21:52 +01:00
Alexander Medvednikov
75c2ef7947
cgen: fix octal and hex int literals
2020-03-26 17:14:24 +01:00
Alexander Medvednikov
ed3e0c43bc
cgen: for c in string; short struct init syntax fixes;
2020-03-26 17:03:14 +01:00
Alexander Medvednikov
c71d36356b
v2: optionals fixes
2020-03-26 14:58:11 +01:00
Alexander Medvednikov
b288bf2e7c
cgen: or{} for methods
2020-03-26 14:42:14 +01:00
yuyi
9c5de77f12
os: ext => file_ext
2020-03-26 14:18:08 +01:00
yuyi
a6347118cd
pg: add windows include and lib flag
2020-03-26 14:17:13 +01:00
Joe Conigliaro
1d0f3abadf
cgen/checker: variadic method call fix
2020-03-26 22:40:14 +11:00
Joe Conigliaro
b1d15afe61
checker: array slice type
2020-03-26 22:04:24 +11:00
Alexander Medvednikov
fc86269bc9
checker: array str fixes
2020-03-26 11:32:32 +01:00
Joe Conigliaro
f452518a63
cgen: fix typo & use expected type
2020-03-26 21:11:56 +11:00
Joe Conigliaro
9c6ac7cb71
cgen: fix variadics called with 0 vargs
2020-03-26 21:09:59 +11:00
Alexander Medvednikov
f2c9592b86
cgen: fix () in & exprs
2020-03-26 10:44:59 +01:00
Alexander Medvednikov
1f3428f282
cgen: basic assert
2020-03-26 10:27:46 +01:00
Alexander Medvednikov
ec4be80bcc
Revert "db: increase db module level in vlib "
...
This reverts commit cd6d175180
.
2020-03-26 09:23:54 +01:00
yuyi
cd6d175180
db: increase db module level in vlib
2020-03-26 09:21:34 +01:00
Delyan Angelov
fb4f7b6827
v2: enable compilation of short programs with no 'import os'
2020-03-26 09:20:55 +01:00
hazohelet
d8bcd13e86
compiler: fix #3973 by dealing with name mangling problem
2020-03-26 08:54:33 +01:00
Delyan Angelov
d54843275f
os_test.v: simplify cleanup
2020-03-26 00:09:30 +01:00
Alexander Medvednikov
aa34d3a4c4
cgen: remove a space
2020-03-25 23:57:46 +01:00
Alexander Medvednikov
25ee30d8cb
cgen: fix optional functions with unused return values
2020-03-25 23:57:22 +01:00
Alexander Medvednikov
89a05a474f
valgrind tests: skip C warnings for now
2020-03-25 21:46:46 +01:00
Alexander Medvednikov
3b4e0147cd
cgen: fix tests
2020-03-25 17:26:03 +01:00
Alexander Medvednikov
7070b1cda9
cgen: GotoStmt, err variable
2020-03-25 17:24:55 +01:00
Alexander Medvednikov
26fab9b274
cgen: fix mutable array args
2020-03-25 17:04:16 +01:00
Alexander Medvednikov
41a089e513
cgen: or block
2020-03-25 16:00:22 +01:00
Alexander Medvednikov
456750ac19
v2: array_test fixes
2020-03-25 14:24:48 +01:00
yuyi
aa0643f785
glfw: fix mut scale bug
2020-03-25 13:44:21 +01:00
Alexander Medvednikov
60fbceea43
memory: free_scope_vars()
2020-03-25 12:26:59 +03:00
Joe Conigliaro
bb76e5da91
parser: array map fixe
2020-03-25 20:09:50 +11:00
Joe Conigliaro
8ba46965b6
checker: array map fixes
2020-03-25 20:07:53 +11:00
Alexander Medvednikov
b495e78f0e
v2: add _vinit to tests' fn main
2020-03-25 00:17:39 +01:00
Alexander Medvednikov
a3046b68da
cgen: fix tests
2020-03-24 23:41:34 +01:00
Alexander Medvednikov
7f345e310b
cgen: fix const name
2020-03-24 22:41:01 +01:00
Alexander Medvednikov
cc9537dd8a
cgen: fix tests
2020-03-24 22:35:05 +01:00
Alexander Medvednikov
437bba5566
cgen: generate fn main for tests; fix consts bug
2020-03-24 22:24:03 +01:00
Delyan Angelov
2a7bc63919
vmft2: support for multiline comments, CompIf, AssertStmt, octal literals
2020-03-24 22:18:58 +01:00
Alexander Medvednikov
0e240458d3
os: fix os_test
2020-03-24 17:16:00 +01:00
Alexander Medvednikov
5d976d841b
v2: raw strings
2020-03-24 17:07:27 +01:00
Joe Conigliaro
4d3362358f
parser: array init &element fix
2020-03-25 02:24:23 +11:00
Alexander Medvednikov
32c8eb6490
os: vfmt os_test.v
2020-03-24 16:18:37 +01:00
Alexander Medvednikov
e012966291
parser/ast: Block
2020-03-24 15:44:17 +01:00
Joe Conigliaro
7aff0cb84f
cgen: remove special case for malloc
2020-03-25 00:46:00 +11:00
Joe Conigliaro
d98bb44490
cgen: remove 0 typ checks & unused var
2020-03-24 22:55:41 +11:00
Joe Conigliaro
9a8bd3f7fa
checker: variadic method fix
2020-03-24 22:39:11 +11:00
Alexander Medvednikov
f101e9b9e2
v2: string fixes, is_dir fix
2020-03-24 11:14:11 +01:00
Joe Conigliaro
3d2fafa580
cgen: variadic for in loop
2020-03-24 19:42:16 +11:00
joe-conigliaro
309a905409
cgen: remove unused var
2020-03-24 17:27:20 +11:00
joe-conigliaro
e5a111396c
cgen: add for map
2020-03-24 17:25:10 +11:00
Joe Conigliaro
0433e24b7f
cgen: array init fix
2020-03-24 13:31:16 +11:00
Delyan Angelov
efe21fed66
v2: fix hello world compilation with tcc
2020-03-23 21:26:48 +01:00
Alexander Medvednikov
9c536f2233
compiler: hide the u64 warning for now
2020-03-23 21:00:20 +01:00
Alexander Medvednikov
1cb45e9916
compiler_test: do not run on windows for now
2020-03-23 20:36:34 +01:00
Alexander Medvednikov
ae2d001261
tests: fix the new v2 output tests
2020-03-23 20:30:20 +01:00
SleepyRoy
67ba56c65c
expression: set integer literals as int by default
2020-03-23 20:05:37 +01:00
Major Taylor
5c9cbae10d
term: fix divide by 0 error on empty delimiter
2020-03-23 20:05:08 +01:00
Alexander Medvednikov
2e29e09b1b
cgen: fix map_get: use zero value if the key was not found
2020-03-23 20:02:09 +01:00
Joe Conigliaro
80676cf44f
cgen: fix struct init 0 fields & tests
2020-03-23 21:57:54 +11:00
Joe Conigliaro
e13bbd8c40
cgen: map init struct fields & fn type arg fix
2020-03-23 21:17:14 +11:00
Alexander Medvednikov
c808430643
cgen: optimize type_default()
2020-03-23 09:17:32 +01:00
Alexander Medvednikov
4867803f6b
cgen: zero struct fields during initialization
2020-03-23 08:59:34 +01:00
joe-conigliaro
a5bd98610f
cgen: call arg ref fix
2020-03-23 17:23:10 +11:00
Joe Conigliaro
89af7e7a5b
cgen: replace reserved C keywords in identifiers
2020-03-23 13:36:50 +11:00
yuyi
2efc37947d
time: calc_unix => unix_time
2020-03-22 19:43:59 +01:00
Chris
e78b97652b
glfw: fix "scale is declared as mutable"
2020-03-22 18:39:17 +01:00
Alexander Medvednikov
b69ebd73b2
cgen: minor fixes. v2 can now compile itself!
2020-03-22 16:55:42 +01:00
Joe Conigliaro
99de98ffc7
cgen: fix test
2020-03-23 02:30:45 +11:00
Joe Conigliaro
076bc2b773
cgen/checker: fixes & fixes & tmp fixes :D
2020-03-23 02:22:49 +11:00
Alexander Medvednikov
c0df54b7d3
checker: check $if else
2020-03-22 14:56:13 +01:00
Alexander Medvednikov
ce73ced932
cgen: #else
2020-03-22 14:54:31 +01:00
Alexander Medvednikov
2738a0c776
cgen: backtrace and sigaction fixes
2020-03-22 14:47:45 +01:00
Joe Conigliaro
0609756d36
cgen: fix sum type casts & else if formatting
2020-03-23 00:28:11 +11:00
Alexander Medvednikov
c2ce06eba7
cgen: generate #ifdefs
2020-03-22 13:55:39 +01:00
Alexander Medvednikov
8d8907b61e
memory: handle string assignments
2020-03-22 13:40:53 +01:00
Joe Conigliaro
043ea80fa9
checker: comptime if expr/stmts & type check fixes
2020-03-22 23:36:27 +11:00
Alexander Medvednikov
cf8776ac71
valgrind: update the test
2020-03-22 13:33:40 +01:00
Delyan Angelov
3f328a0242
test: fix 'v test vlib/v/tests'
2020-03-22 13:26:16 +01:00
Alexander Medvednikov
4cbba8c45d
memory: handle arrays
2020-03-22 13:19:45 +01:00
Alexander Medvednikov
3a938972df
memory: autofree fix
2020-03-22 12:06:33 +01:00
Alexander Medvednikov
7b689d8c52
ast: CompIf position
2020-03-22 11:53:08 +01:00
Alexander Medvednikov
ab3f6d9202
cgen: generate indents for more readable C code
2020-03-22 10:12:45 +01:00
Delyan Angelov
53a9329ab6
valgrind: nicer output
2020-03-22 09:44:15 +01:00
Alexander Medvednikov
1ad417734e
memory: remove if false
2020-03-22 08:59:44 +01:00
Naheel
c50c6812ce
os: fix cp() spaces in files names
2020-03-22 08:43:24 +01:00
Alexander Medvednikov
a02395fe2d
valgrind: run the tests
2020-03-21 20:31:30 +01:00
Alexander Medvednikov
85e411bd7c
fix valgrind test
2020-03-21 20:10:30 +01:00
Alexander Medvednikov
3e80e22f5d
fix prod build
2020-03-21 20:02:37 +01:00
Alexander Medvednikov
e5f6a0949f
cgen: autofree: first step
2020-03-21 19:52:19 +01:00
Joe Conigliaro
efbf114a2f
checker: ref & deref in prefix expr
2020-03-22 02:41:01 +11:00
penguindark
421f5b6fdf
builtin: int to str without offset buffer
2020-03-21 16:00:58 +01:00
Joe Conigliaro
fc43294efc
checker: deref fix
2020-03-22 01:27:10 +11:00
Joe Conigliaro
9d80d261b9
gen: rename _init() to _vinit() in cheaders.v
2020-03-22 00:22:43 +11:00
Joe Conigliaro
f7042e9038
cgen: sum type cast & map str() receiver
2020-03-21 23:57:11 +11:00
Alexander Medvednikov
0f1371e1c9
cgen: fix tests
2020-03-21 13:56:21 +01:00
ka-weihe
bf97afb9ed
map: small cleanup
2020-03-21 13:55:07 +01:00
Alexander Medvednikov
f962d92623
cgen: use _vinit instead of _init to avoid conflicts on Linux
2020-03-21 13:28:41 +01:00
Joe Conigliaro
eb8d64999f
checker: temp map str() method fix
2020-03-21 22:31:25 +11:00
radare
cc75fe4fe5
builtin: Fix undefined behaviour when allocating empty structs ( #4088 )
2020-03-21 12:24:34 +01:00
Alexander Medvednikov
7b1b647832
parser: disable parser_test.v for now
2020-03-21 11:55:49 +01:00
Alexander Medvednikov
7ad1441c81
cgen: fix the tests
2020-03-21 11:47:23 +01:00
Alexander Medvednikov
b2d1f55702
cgen_test fixes
2020-03-21 11:17:17 +01:00
Alexander Medvednikov
c12985d1d7
cgen: for in; init fixes
2020-03-21 10:22:19 +01:00
Delyan Angelov
ba088056ed
solaris: make 'v test-compiler' pass (stage 2)
2020-03-21 09:48:02 +01:00
Alexander Medvednikov
e57804e6c2
cgen: generate init()
2020-03-21 09:29:16 +01:00
Alexander Medvednikov
c93f515a54
cgen: add _STR definition
2020-03-21 07:10:53 +01:00
Alexander Medvednikov
5f61fbcbe3
fix prod build
2020-03-21 07:04:53 +01:00
Alexander Medvednikov
5072320803
cgen/ast/checker: string interpolation
2020-03-21 07:01:11 +01:00
radare
c21e976cad
builtin: do not use unsafe sprintf/vsprintf functions
2020-03-21 06:37:58 +01:00
Alexander Medvednikov
b4561fa814
Revert "term: make compilable with v2 on windows"
2020-03-20 21:15:45 +01:00
Alexander Medvednikov
0f1f724a91
term: make compilable with v2 on windows
2020-03-20 21:12:37 +01:00
Alexander Medvednikov
ec003ff897
cgen: temporary lld fix
2020-03-20 20:46:42 +01:00
Alexander Medvednikov
4b36098e07
cgen: 1 error left
2020-03-20 20:35:00 +01:00
Alexander Medvednikov
8077a7534e
cgen: 7 errors left
2020-03-20 20:22:37 +01:00
yuyi
e6a679b019
flag: octal format
2020-03-20 20:21:16 +01:00
Delyan Angelov
f89f83deb6
solaris: _solaris.v and #flag solaris (stage 1)
2020-03-20 20:20:01 +01:00
Alexey
9c668072b9
fmt: fix ForInStmt
2020-03-20 20:19:43 +01:00
Alexander Medvednikov
5a7f683f61
cgen: minor fixes
2020-03-20 17:20:53 +01:00
Alexander Medvednikov
6b571155f4
cgen: fix print(struct); use automatic referencing
2020-03-20 17:11:58 +01:00
Alexander Medvednikov
078f498b17
cgen: fix `vals[i].field = x`
2020-03-20 17:03:41 +01:00
Alexander Medvednikov
4fac09bcb4
array: simplify reverse() memcpy call
2020-03-20 16:51:36 +01:00
yuyi
2f27758a4b
os: realpath => real_path
2020-03-20 16:41:18 +01:00
Joe Conigliaro
15d4b5fcdb
checker/fmt/cgen: fun vfmt on changes from previous commit
2020-03-21 00:46:00 +11:00
Joe Conigliaro
a331abf675
ast/cgen/parser: combine IfExpr branches into single node
2020-03-21 00:39:56 +11:00
Alexander Medvednikov
c993489fe9
cgen: optional expr fix
2020-03-20 13:03:42 +01:00
joe-conigliaro
ed50fef1c0
cgen: dont add overidden fields in assoc
2020-03-20 15:05:50 +11:00
joe-conigliaro
1fb2c3f5b4
cgen: multi return optional fix
2020-03-20 14:59:06 +11:00
joe-conigliaro
525639b42f
cgen: fix tests after array.first fix
2020-03-20 14:24:18 +11:00
Alexander Medvednikov
f37b9d99fe
cgen: last/first fix
2020-03-19 19:36:15 +01:00
Alexander Medvednikov
b7a036945d
cgen: in [] optimization
2020-03-19 16:12:49 +01:00
yuyi
010f3efcf0
os: filename => file_name
2020-03-19 15:49:07 +01:00
Alexander Medvednikov
216c7a16d8
cgen: filter + expected_type fix
2020-03-19 15:18:29 +01:00
Delyan Angelov
0fbb056ac7
hotreload: fix compilation of .so file on macos
2020-03-19 14:50:37 +01:00
Alexander Medvednikov
dd96421a9f
compiler: remove old vh generator
2020-03-19 13:24:57 +01:00
Joe Conigliaro
0f08a92302
cgen: fix return formatting
2020-03-19 22:27:47 +11:00
Alexander Medvednikov
b290efa394
ast: TypeOf
2020-03-19 12:15:42 +01:00
Joe Conigliaro
79077b0025
gen: fix multi return optional
2020-03-19 22:13:17 +11:00
Joe Conigliaro
97fbbac973
checker: enum value, use base type no extra info
2020-03-19 21:52:47 +11:00
Alexander Medvednikov
74616d2900
cgen: fix optional functions that return other optional functions
2020-03-19 11:44:27 +01:00
Alexander Medvednikov
b2f05e56b8
cgen: fix tests
2020-03-19 11:23:05 +01:00
Joe Conigliaro
e457bedaa7
gen: remove enum value typedefs :D
2020-03-19 21:21:08 +11:00
Joe Conigliaro
408553e967
gen: add typedefs for optional enums & array clone receiver type fix
2020-03-19 21:04:51 +11:00
Alexander Medvednikov
be01a32f0b
math: use automatic dereferencing
2020-03-19 10:24:51 +01:00
Alexander Medvednikov
b5cb1b1fe2
cgen: map_get/map_set
2020-03-19 10:07:31 +01:00
Joe Conigliaro
6c56528cd7
checker: update assoc type
2020-03-19 19:52:33 +11:00
Joe Conigliaro
a456c21249
gen: cgen sum cast in struct init
2020-03-19 19:40:21 +11:00
Joe Conigliaro
6e5b58413a
checker: check assoc field exprs
2020-03-19 18:57:33 +11:00
Alexander Medvednikov
013fd5abfe
cgen: fix array.last()
2020-03-19 08:49:47 +01:00
Joe Conigliaro
3e70e5f2f1
gen: add `in` for map and string to cgen
2020-03-19 18:32:42 +11:00
Alexander Medvednikov
28309da1f1
cgen: assoc
2020-03-19 08:14:09 +01:00
Alexander Medvednikov
3dc3b11435
parser: $if blocks for headers
2020-03-19 07:59:01 +01:00
SleepyRoy
f798a0937a
expression: set floats as f64 by default
2020-03-19 07:24:49 +01:00
fantassin
5824d28a03
term: Solaris headers
2020-03-19 07:07:43 +01:00
Delyan Angelov
cc847f83a8
compiler: when compiling a single .v file, check that it is not a folder
2020-03-19 07:07:02 +01:00
yuyi
9ef8499183
flag: unify apis
2020-03-19 07:06:37 +01:00
Alexander Medvednikov
66639924a4
map: make compilable with V2
2020-03-19 07:05:20 +01:00
ka-weihe
bd0548548a
map: new memory layout and map.get2()
2020-03-19 06:52:34 +01:00
Alexander Medvednikov
c3d7c57096
cgen: more minor fixes
2020-03-18 19:56:59 +01:00
Alexander Medvednikov
ca0bae0fcd
array: fix reverse()
2020-03-18 18:54:11 +01:00
Alexander Medvednikov
fe6707b26d
cgen: minor fixes
2020-03-18 16:47:37 +01:00
Alexander Medvednikov
c514f0b672
cgen: automatic dereference and match fix
2020-03-18 16:07:54 +01:00
fantassin
d81d804cb6
cgen: add c headers for Solaris / Illumos
2020-03-18 15:48:42 +01:00
lydiandy
04184f1715
ast: make ReturnStmt field public
2020-03-18 15:39:26 +01:00
Joe Conigliaro
c4f6125a31
gen/checker: add errors for as cast & for in var
2020-03-19 00:50:21 +11:00
Joe Conigliaro
96af21ff68
gen: impl as cast
2020-03-18 23:55:46 +11:00
Joe Conigliaro
5fb90e12b1
checker: ForInStmt only call table.value_type once
2020-03-18 23:29:28 +11:00
Joe Conigliaro
4262ff76c3
checker/parser: check & gen stmts for ForIn & fix key, val vars
2020-03-18 23:18:18 +11:00
Alexander Medvednikov
91378583cc
cgen: another expected_type fix
2020-03-18 12:34:27 +01:00
Alexander Medvednikov
af289da844
ast: MatchExpr: expr_type => cond_type
2020-03-18 12:23:32 +01:00
Alexander Medvednikov
256a93e6e6
checker: expected_type fixes
2020-03-18 12:18:48 +01:00
Joe Conigliaro
5fc057d8ac
cgen: fix error in expr_with_cast
2020-03-18 20:42:56 +11:00
Joe Conigliaro
54c38e3e3a
parser: remove option from err var type
2020-03-18 20:00:33 +11:00
Joe Conigliaro
126ef0f5c2
checker/gen: add unchecked exprs & small fixes
2020-03-18 19:56:19 +11:00
Alexander Medvednikov
a011b8951a
cgen: if/match expressions and other fixes
2020-03-18 08:41:49 +01:00
Joe Conigliaro
3fecf154aa
gen: move helper fns to ast
2020-03-18 11:19:23 +11:00
Joe Conigliaro
6ca47aeb4b
gen: blank identifier fixes
2020-03-18 10:41:04 +11:00
Joe Conigliaro
330745da30
gen: restructure if guard to support else
2020-03-18 04:01:36 +11:00
Joe Conigliaro
91e47caf38
gen: add if guard to cgen
2020-03-18 02:40:41 +11:00
Joe Conigliaro
f965a7d0e6
gen: fix sum type casting & map init
2020-03-18 01:13:55 +11:00
radare
f5e44fbef2
compiler: better NetBSD and OpenBSD support in vfmt and $if
2020-03-17 12:43:59 +01:00
Major Taylor
e2eb0f17d7
string: separate strip_margin tests into different functions
2020-03-17 02:49:51 +01:00
Delyan Angelov
f73b38a0d8
vfmt2: fix literal integer number formatting
2020-03-17 02:49:15 +01:00
yuyi
456c0250b0
string: fix strip_margin
2020-03-16 15:46:09 +01:00
Alexander Medvednikov
d39dd53998
string: bring back test_strip_margins
2020-03-16 15:45:54 +01:00
yuyi
5ae04dca84
glfw: remove global scale variable
2020-03-16 15:44:26 +01:00
Ian M. Jones
93920a4bb0
vweb: set request data with body text to allow use in actions
2020-03-16 14:30:55 +01:00
Joe Conigliaro
d456cc479c
builtin: revert map to version before 35dd785
until bug is fixed
2020-03-16 23:01:31 +11:00
radare
5581b2bd3c
builtin: fix backtrace for OpenBSD and NetBSD
2020-03-16 12:10:58 +01:00
Alexander Medvednikov
900ada1112
cgen: match: do not use a temp var; minor fixes
2020-03-16 10:53:36 +01:00
Joe Conigliaro
cf094c6265
cgen: gen fn type declerations
2020-03-16 20:12:03 +11:00
Alexander Medvednikov
0f160707a4
cgen: GoStmt; experimental parallel parser
2020-03-16 08:33:42 +01:00
joe-conigliaro
c947e6ebe6
cgen: cast to sum type
2020-03-16 17:42:45 +11:00
Alexander Medvednikov
66adf7a6b9
cgen: minor sum type fix
2020-03-16 05:02:41 +01:00
Alexander Medvednikov
ac0b235d3a
cgen: sum type: `it` variable
2020-03-16 03:56:38 +01:00
Alexander Medvednikov
37504c487a
cgen: sum types: match
2020-03-16 03:19:26 +01:00
Alexander Medvednikov
98fc9ab65b
string: disable strip_margins test for now
2020-03-15 23:21:32 +01:00
Alexander Medvednikov
8a8f50a6a0
cgen: unwrapped optionals
2020-03-15 08:18:45 +01:00
Major Taylor
8d19ba9195
string: strip_margin: fix the error message for multiple args
2020-03-15 07:49:37 +01:00
Alexander Medvednikov
8e2537a366
cgen: array init fix;
2020-03-15 07:42:49 +01:00
Major Taylor
2d5c7c8e93
string: add `strip_margin`
2020-03-15 05:46:12 +01:00
Joe Conigliaro
3e05939b65
cgen: enum fixes
2020-03-15 12:51:31 +11:00
Joe Conigliaro
cfeafb9ab4
cgen: fix null termination bug gen tests to fail
2020-03-15 11:39:29 +11:00
Alexander Medvednikov
28fc9d332c
cgen: fix enum vals, includes, in strings
2020-03-15 01:36:20 +01:00
yuyi
a121dfd23a
glfw: high dpi on windows
2020-03-15 01:16:55 +01:00
Alexander Medvednikov
843bb6dac1
cgen: lots of fixes
2020-03-15 00:46:08 +01:00
Joe Conigliaro
50ed4004f4
ast/table: use common struct fn decl arguments
2020-03-15 09:21:36 +11:00
yuyi
8bfa7f0d82
compiler: fix interface bug
2020-03-14 14:19:56 +01:00
Joe Conigliaro
217bbdfd66
cgen: small varg fixes
2020-03-14 23:42:27 +11:00
Joe Conigliaro
9dc79bae5f
cgen: fix varg call and struct gen
2020-03-14 23:15:07 +11:00
Joe Conigliaro
cc338df77f
parser/checker/gen: update call args to use ast.CallArg
2020-03-14 21:11:43 +11:00
Joe Conigliaro
6752fed9f2
parser: fix generated name for unnamed fn args
2020-03-14 20:24:45 +11:00
Alexander Medvednikov
e8c9f609a4
cgen: enum fixes; sum type definition; const bug fix
2020-03-14 05:20:15 +01:00
yuyi
424bd1c465
scanner: minor optimization
2020-03-13 22:22:59 +01:00
Delyan Angelov
19f9c18305
os: make executable() more robust
2020-03-13 22:19:02 +01:00
Joe Conigliaro
920ab79665
checker: check range exprs
2020-03-13 23:08:03 +11:00
Alexander Medvednikov
973b5c226a
cgen: optionals fixes
2020-03-13 12:22:36 +01:00
Alexander Medvednikov
b173cea177
cgen: optionals
2020-03-13 05:57:55 +01:00
Delyan Angelov
9bcb7d115f
panic: restore printing of detailed stack backtraces on linux
2020-03-13 04:32:44 +01:00
Ian M. Jones
0e68ca120e
vweb.assets: fix am is declared as mutable, but it was never changed message
2020-03-13 04:32:24 +01:00
Alexander Medvednikov
4b4c47461b
cgen: error fixes; table: simplify; compiler tests
2020-03-13 01:43:30 +01:00
Alexander Medvednikov
b43ac2783d
map: make compilable with the new compiler
2020-03-12 20:26:29 +01:00
ka-weihe
35dd7855a0
map: new memory layout and optimizations
2020-03-12 19:36:05 +01:00
Marko Zitkovic
26b9987880
compiler: fix panic when dealing with variadic functions
2020-03-12 18:21:02 +01:00
vitalyster
0df6eaa927
"#flag mingw ..." support
2020-03-12 18:20:19 +01:00
Joe Conigliaro
07921194f2
parser: revert changes to format_str
2020-03-13 00:32:26 +11:00
Joe Conigliaro
597811093c
parser/cgen: fix order of escape replacements
2020-03-13 00:21:43 +11:00
Joe Conigliaro
b750f1d1bb
compiler: prerequisite changes for upcoming map update
2020-03-12 22:19:13 +11:00
Joe Conigliaro
99398ba652
cgen: escape quotes & nl in string literals
2020-03-12 21:13:46 +11:00
Joe Conigliaro
bb5034f3fe
cgen: fix fixed array init assignment
2020-03-12 20:07:42 +11:00
Alexander Medvednikov
d2cf6894fe
cgen: fixed array fix
2020-03-12 09:29:52 +01:00
Alexander Medvednikov
92d6eec09a
cgen: fix remaining errors. hello world now compiles
2020-03-12 09:11:41 +01:00
joe-conigliaro
853bb4c41e
cgen: alias & map types & add map_string/map_int aliases
2020-03-12 17:56:44 +11:00
joe-conigliaro
dfaba54376
cgen: gen fn types in fn arguments
2020-03-12 14:34:00 +11:00
Alexander Medvednikov
bcdb897f07
cgen: fix tests
2020-03-11 23:43:01 +01:00
Alexander Medvednikov
a182b5c531
cgen: more errors fixed
2020-03-11 23:22:40 +01:00
Alexander Medvednikov
e0c85f87ae
cgen: args fixes
2020-03-11 21:11:27 +01:00
Alexander Medvednikov
aada19f574
cgen: fix [] => string casts and for in
2020-03-11 19:00:55 +01:00
Alexander Medvednikov
4470252913
parser: fix import's position
2020-03-11 18:52:55 +01:00
Delyan Angelov
de7fed45dc
builtin: implement []int.str()
2020-03-11 18:48:59 +01:00
Delyan Angelov
dff17ee0d7
compiler: pass -shared to build a .so file from a module
2020-03-11 17:31:20 +01:00
Joe Conigliaro
01004bc5d8
checker: remove test println from previous commit
2020-03-12 02:29:02 +11:00
Joe Conigliaro
a1314bd199
checker/gen/table: impl fn types & sum/other fixes & tidy
2020-03-12 02:10:46 +11:00
Joe Conigliaro
1cea85df0c
compiler: save mutability of unnamed fn args
2020-03-12 01:44:41 +11:00
Joe Conigliaro
7309be55a0
table: fix error in field/method lookup from previous commit
2020-03-11 20:53:14 +11:00
Joe Conigliaro
7513dab185
table/checker: proper parent field/method lookup & cleanup
2020-03-11 20:48:45 +11:00
Alexander Medvednikov
0ad9eb5e16
scanner: remove the "too long name" error; checker: check string() cast arg
2020-03-11 06:46:14 +01:00
Alexander Medvednikov
cd0b81fc5f
cgen: fix a bug with [].repeat
2020-03-11 06:30:20 +01:00
Alexander Medvednikov
a2ff24c912
cgen: reference receiver test
2020-03-11 05:56:15 +01:00
Alexander Medvednikov
75db3e4416
cgen: fix ptr indexing
2020-03-11 05:25:15 +01:00
yuyi
9e14850bbf
vdoc: show map type correctly
2020-03-11 05:18:20 +01:00
Alexander Medvednikov
b9955aee84
cgen: fix tests
2020-03-11 04:10:42 +01:00
Alexander Medvednikov
7342dfdc6e
cgen: fix array_get()
2020-03-11 03:52:01 +01:00
Alexander Medvednikov
22e558aecb
cgen: fix C style loops without an init; fix integer consts
2020-03-11 02:44:30 +01:00
Alexander Medvednikov
0d45d21069
cgen: fix string <> methods and multiple returns
2020-03-11 02:28:19 +01:00
Joe Conigliaro
083964522b
cgen/fmt: fix assign_stmt fix & cgen test & hash tests & fmt
2020-03-11 11:31:24 +11:00
penguindark
630913d872
builtin: new str(), hex() functions without C.printf
2020-03-11 00:38:11 +01:00
Alexander Medvednikov
de55a26cfe
cgen: lots of fixes
2020-03-10 23:21:29 +01:00
Alexander Medvednikov
1143320b8b
vdoc: print structs and enums
2020-03-10 19:49:04 +01:00
Alexander Medvednikov
568d859fc0
bignum: move to math.big
2020-03-10 19:31:01 +01:00
Wing-Kam
f1274e34c2
cli: add pre_execute & post_execute
2020-03-10 16:11:17 +01:00
yuyi
8ff86dbee6
os: is_abs => is_abs_path
2020-03-10 16:09:37 +01:00
Alexander Medvednikov
324a48bc64
sha512: make it work with the new parser
2020-03-10 15:47:21 +01:00
Joe Conigliaro
bc184a9f02
checker: properly update var info in AssignStmt
2020-03-11 01:16:30 +11:00
yuyi
57b1b12ab6
os: tmpdir => temp_dir
2020-03-10 15:02:09 +01:00
Charles WANG
7e1870be3e
pg: create readme.md
2020-03-10 15:00:22 +01:00
Joe Conigliaro
ddd5a9443d
v: fix AssignStmt
2020-03-11 00:45:21 +11:00
Alexander Medvednikov
2f0bb11a96
parser: handle operator methods and fix them in vdoc
2020-03-10 14:40:35 +01:00
Delyan Angelov
7036ca55e6
os: implement os.environ() (part 2/2) ( #3971 )
2020-03-10 14:25:16 +01:00
Joe Conigliaro
c9d30f78b7
v: no optional for scope.innermost & more blank_ident
2020-03-10 23:35:25 +11:00
Joe Conigliaro
ee72474971
v: add multi assign cgen test
2020-03-10 22:26:13 +11:00
Joe Conigliaro
f7a93a69f6
v: fix/gen multi return/assign + merge VarDecl & AssignStmt
2020-03-10 22:01:37 +11:00
yuyi
876b73f92c
os: join => join_path
2020-03-09 02:23:34 +01:00
Alexander Medvednikov
e3687dc257
checker: check C args
2020-03-08 22:11:56 +01:00
Alexander Medvednikov
754a6cc93e
cgen: fix ->
2020-03-08 19:38:27 +01:00
Delyan Angelov
f6480be3aa
add C.environ to cheaders.v
2020-03-08 17:38:53 +01:00
yuyi
a569959fb8
os api: cachedir => cache_dir
2020-03-08 15:57:47 +01:00
Alexey
83b6292105
fmt: split tests
2020-03-08 15:57:16 +01:00
Delyan Angelov
5f08253f36
vfmt: add support for _keep.vv files, that v fmt should keep without changes
2020-03-08 15:46:04 +01:00
yuyi
23b11c84b1
os api: basedir => base_dir
2020-03-08 15:43:56 +01:00
Delyan Angelov
2bed0d1bb5
fmt: extract array_slices_input.vv from simple_input.vv
2020-03-08 15:42:38 +01:00
Ian M. Jones
c731615dbb
vweb: cater for trailing slashes being used in handle_static call
2020-03-08 15:41:59 +01:00
Delyan Angelov
8df265a581
sync: protect against sporadic failing tests in macos
2020-03-08 15:40:50 +01:00
hazohelet
ee6f2f84bb
compiler: fix redefinition error message for consts
2020-03-08 15:40:07 +01:00
Alexander Medvednikov
d9854f2abd
cgen: fix mutable receivers
2020-03-07 22:37:03 +01:00
yuyi
783dee1f48
os: merge with filepath
2020-03-07 22:26:26 +01:00
Delyan Angelov
5e541e1f11
vfmt: alias type and sum type + sum type fix
2020-03-07 17:37:55 +01:00
Alexander Medvednikov
fbf80dc315
cgen: array_set()
2020-03-07 16:39:15 +01:00
Alexander Medvednikov
63032c4bb7
cgen: minor fixes
2020-03-07 16:23:10 +01:00
Alexander Medvednikov
24bcc7a93b
cgen: array and fixed array fixes
2020-03-07 14:31:40 +01:00
Ian M. Jones
750f37fde7
vweb: fix serving static files
2020-03-07 14:16:03 +01:00
Delyan Angelov
d2ab9d3e77
compiler: fix generation of default .str() methods in interpolation
2020-03-07 14:13:53 +01:00
Joe Conigliaro
09d9dd2607
v: add map init
2020-03-07 18:13:00 +11:00
Alexey
e26907f079
fmt: fix errors in test files
2020-03-07 06:04:33 +01:00
Alexander Medvednikov
150994a933
cgen: fix tests
2020-03-07 06:02:32 +01:00
Alexander Medvednikov
260f708bb2
cgen: array << val
2020-03-07 05:19:15 +01:00
Alexander Medvednikov
c14c81ace6
cgen: fix ->
2020-03-07 04:45:35 +01:00
Nguyen Viet Hung
f5a8d883d2
gx: add hex to rgb color
2020-03-07 04:30:35 +01:00
Alexander Medvednikov
58fb055763
cgen: fix string args in C calls; lower case consts in atof; fix struct types
2020-03-07 01:05:19 +01:00
Alexander Medvednikov
968e310793
cgen: fix match
2020-03-07 00:47:49 +01:00
Alexander Medvednikov
9846fecd84
eval: fix test
2020-03-07 00:42:52 +01:00
Alexander Medvednikov
f699dcac94
checker: check println arg
2020-03-07 00:38:35 +01:00
Alexander Medvednikov
180b9b971a
cgen: string_add()
2020-03-07 00:34:14 +01:00
Alexander Medvednikov
3c7b0d6d05
cgen: fix []
2020-03-07 00:19:27 +01:00
Alexander Medvednikov
124f754443
cgen: typ()
2020-03-06 22:36:51 +01:00
Alexander Medvednikov
1a8b7d0447
cgen: fix slices
2020-03-06 22:24:42 +01:00
Alexey
81ce524705
ast: add Expr to AsCast
2020-03-06 22:12:15 +01:00
Alexey
06df6d25a2
sdl: update readme
2020-03-06 20:43:33 +01:00
Alexander Medvednikov
8a711a8376
cgen: fix tests
2020-03-06 20:25:38 +01:00
Alexander Medvednikov
a277f7d6ab
cgen: string[i]; pointers
2020-03-06 20:23:01 +01:00
lutherwenxu
aab31f4b35
cmd/v: rewrite flags
2020-03-06 18:53:29 +01:00
Ian M. Jones
522de0871a
pg: fix zero being used for port when not specified in pg.Config
2020-03-06 18:40:24 +01:00
Alexey
5142747ceb
examples: move SDL examples from vlib to examples dir
2020-03-06 18:39:40 +01:00
Alexander Medvednikov
5c8617ec68
ast: set IndexType.container_type; array_get()
2020-03-06 17:06:03 +01:00
Joe Conigliaro
ea2a79ec20
v: cgen fix struct ordering
2020-03-07 02:57:27 +11:00
Alexander Medvednikov
be2480c320
cgen: fix several errors
2020-03-06 16:31:44 +01:00
yuyi
ed9075b937
v doc: don't show 'pub' at the beginning
2020-03-06 16:28:20 +01:00
Joe Conigliaro
db22bc579a
v: update resovled call expr name
2020-03-07 01:02:40 +11:00
Joe Conigliaro
89cbe76193
v: run cast expr through checker
2020-03-07 00:36:32 +11:00
Alexander Medvednikov
6b6031a3d9
cgen: fix struct init; match SumType1, SumType2
2020-03-06 14:14:33 +01:00
Joe Conigliaro
3de3b38dc1
v: udpate elem_type in ArrayInit node & tests
2020-03-07 00:06:52 +11:00
Alexander Medvednikov
fb785b8adf
cgen: optimize const definitions
2020-03-06 14:03:35 +01:00
Alexander Medvednikov
91269961d0
cgen: array types
2020-03-06 13:44:13 +01:00
Joe Conigliaro
7f6b98669e
v2: fix tests - gen output
2020-03-06 22:06:41 +11:00
Joe Conigliaro
24dbfbcccf
v2: fix struct sorting & cgen tests
2020-03-06 22:01:56 +11:00
Joe Conigliaro
49f3ce0571
v2: add method call receiver to cgen & check method args
2020-03-06 20:52:03 +11:00
Alexander Medvednikov
7a92a47eb3
flag: fix array boundary check
2020-03-06 02:02:32 +01:00
Alexander Medvednikov
efb45579aa
pg: add port to config
2020-03-06 02:01:53 +01:00
Joe Conigliaro
7008b1a92c
v2: update ident name for resolved const/fn objects
2020-03-06 10:10:01 +11:00
Alexander Medvednikov
04d5dd8997
cgen: sort structs
2020-03-05 23:27:24 +01:00
Alexander Medvednikov
a8e45251c4
sync.pool: simplify usages of pool.work_on_items
2020-03-05 18:37:57 +01:00
Alexander Medvednikov
9c1e50b1aa
vdoc: don't show deprecated functions
2020-03-05 16:13:14 +01:00
Alexander Medvednikov
6659f1751e
ast: make IdentInfo public
2020-03-05 14:16:08 +01:00
Joe Conigliaro
8ad8d03bc8
v2: remove test code from last commit in parser
2020-03-06 00:00:34 +11:00
Joe Conigliaro
272eaaa704
v2: remove type fields from parser & some cleanup
2020-03-05 23:57:05 +11:00
Alexander Medvednikov
38a54b08e3
doc: don't modify path to vlib
2020-03-05 13:48:06 +01:00
Joe Conigliaro
9921897aa6
v2: add some comments in parser & checker
2020-03-05 22:44:33 +11:00
Joe Conigliaro
6de44db4eb
v2: update checker. missing from previous commits
2020-03-05 22:30:16 +11:00
Joe Conigliaro
ee6a8a41f5
v2: remove expr type from fn.v
2020-03-05 22:13:45 +11:00
Joe Conigliaro
4d55a4c097
v2: remove expr types & some dead code from parser
2020-03-05 22:08:43 +11:00
Alexander Medvednikov
bcaf72eccb
cgen: update the test
2020-03-05 01:36:44 +01:00
Alexander Medvednikov
484320ed08
cgen: receiver arg
2020-03-05 01:20:36 +01:00
Alexander Medvednikov
b32a94627c
cc: -ferror-limit
2020-03-05 00:45:43 +01:00
Alexander Medvednikov
4161cfcdb8
cgen: lots of fixes
2020-03-05 00:43:09 +01:00
Alexander Medvednikov
b7e2af8151
os: better deprecated message
2020-03-04 20:29:17 +01:00
Alexander Medvednikov
b0ece3a9d8
sync: implement pool.work_on_items to process a list of items in parallel
2020-03-04 20:28:42 +01:00
Alexander Medvednikov
136aa763a3
cgen: multi return structs + other fixes
2020-03-04 20:17:29 +01:00
Alexander Medvednikov
cd8a5d1f2e
fix parser_test.v and string_test.v
2020-03-04 17:39:27 +01:00
Alexander Medvednikov
237ce6ff84
cgen_test: skip definitions
2020-03-04 17:35:13 +01:00
Alexander Medvednikov
c203a744fe
glm: fix calloc
2020-03-04 17:22:20 +01:00
Alexander Medvednikov
f27f832ede
cgen: definitions + other fixes; calloc fix
2020-03-04 17:08:28 +01:00
Alexander Medvednikov
37453945d0
cgen: remaining nodes; match type fix; v2.c is now generated
2020-03-04 15:48:43 +01:00
Joe Conigliaro
8458ea40f0
v2: add UnsafeStmt to checker & byte/byteptr to check
2020-03-05 00:20:37 +11:00
Joe Conigliaro
7daf8f8fd0
v2: simplify MatchExpr in vfmt
2020-03-04 22:39:18 +11:00
Joe Conigliaro
5872961124
v2: update MatchExpr in vfmt
2020-03-04 22:14:37 +11:00
Joe Conigliaro
e71948461e
v2: update MatchExpr
2020-03-04 21:59:45 +11:00
Joe Conigliaro
ed763df42e
v2: tidy checker remove old comments & code
2020-03-04 21:08:46 +11:00
Joe Conigliaro
d501ea0afb
v2: fix array init
2020-03-04 12:50:32 +11:00
Joe Conigliaro
bac6fc6ee2
v2: remove test println from checker
2020-03-04 09:49:14 +11:00
Joe Conigliaro
ea26b5f30c
v2: fix fn call name lookup
2020-03-04 09:46:59 +11:00
Alexander Medvednikov
823b8ad244
table: Type str()
2020-03-03 18:38:41 +01:00
Alexander Medvednikov
2a99422386
cgen: more nodes; exit if there are checker errors
2020-03-03 18:37:38 +01:00
Alexander Medvednikov
0c67b3cff4
checker: fix match return type
2020-03-03 17:29:16 +01:00
Joe Conigliaro
c633dd09c6
v2: dont use type type in `<<` infix in parser
2020-03-04 02:08:40 +11:00
Joe Conigliaro
063ca3b644
v2: make array append `<<` right associative
2020-03-04 02:05:16 +11:00
Joe Conigliaro
147ecc5e17
v2: time - prefix C struct & ast.TypeName to ast.Type
2020-03-04 01:06:21 +11:00
yuyi
448ed41562
os api: rmdir_recursive => rmdir_all
2020-03-03 15:02:50 +01:00
yuyi
3f67ba08b1
glfw, freetype: remove the display of general information
2020-03-03 14:41:26 +01:00
Hugo Locurcio
69f256b900
use LF line endings in examples/quick_sort.v
2020-03-03 14:41:05 +01:00
Joe Conigliaro
af3159791f
v2: reset expr_mod after struct_init type is parsed
2020-03-04 00:24:15 +11:00
Delyan Angelov
90996269fd
compiler: more precise default error context for C errors
2020-03-03 12:01:23 +01:00
yuyi
ea10f44fe6
os api: flush_stdout => flush
2020-03-03 00:00:30 +01:00
Joe Conigliaro
895a1711cb
v2: fix type aliases & add check
2020-03-03 09:19:04 +11:00
yuyi
8ac0739858
os api: cp_r => cp_all
2020-03-02 19:30:04 +01:00
Alexander Medvednikov
22ffe336cb
checker: AsCast, CharLiteral, fix integer index check
2020-03-02 19:00:33 +01:00
Alexander Medvednikov
156e36c082
cgen: handle unhandled nodes
2020-03-02 18:43:41 +01:00
Alexander Medvednikov
07a2233220
fix prod build
2020-03-02 18:28:11 +01:00
Alexander Medvednikov
baaa55f196
cgen: fix methods; println
2020-03-02 18:27:00 +01:00
Alexey
78c885d657
fmt: add support for goto
2020-03-02 17:41:32 +01:00
Delyan Angelov
c6107276df
compiler: stabilize the interface code generation a little
2020-03-02 17:10:26 +01:00
Alexey
8fafaf38a3
fmt: add function with variadic arg to test file
2020-03-02 17:10:06 +01:00
Alexey
cca5c5537f
fmt: extract common code to methods
2020-03-02 17:09:45 +01:00
Joe Conigliaro
8497d637d9
v2: allow pointers to be initialized with 0
2020-03-02 23:52:41 +11:00
Joe Conigliaro
5b08f307c8
v2: fix map initialization
2020-03-02 22:34:02 +11:00
Joe Conigliaro
16528b12fa
v2: allow enum value to be used as int
2020-03-02 21:32:28 +11:00
Joe Conigliaro
f57a651e3b
v2: match expr fixes & tmp typeof skip
2020-03-02 20:53:38 +11:00
joe-conigliaro
a8f07157dd
v2: implement sym types & handle in table.check
2020-03-02 16:40:18 +11:00
joe-conigliaro
b65fad9ca8
v2: fix if guard var type & handle blank ident in assign
2020-03-02 16:05:40 +11:00
joe-conigliaro
a118c72423
v2: checker - save type in MapInit node
2020-03-02 14:24:45 +11:00
joe-conigliaro
b333d02e3b
v2: allow none & error for functions that return optional - checker
2020-03-02 13:58:36 +11:00
Alexander Medvednikov
d05bdad638
pratt: handle &=
2020-03-01 23:26:23 +01:00
Alexander Medvednikov
f921ea2fb7
cgen: test module fns and consts
2020-03-01 22:06:36 +01:00
Alexander Medvednikov
38de6c98fc
cgen: test local modules
2020-03-01 21:56:07 +01:00
Joe Conigliaro
a707ffc04a
v2: name_expr mod & type & var fixes
2020-03-02 02:14:52 +11:00
Delyan Angelov
1066ec5cd9
compiler: import modules relative to v.mod
2020-03-01 15:49:39 +01:00
Delyan Angelov
615a4b3452
builtin: add V64_PRINTFORMAT (part 2)
2020-03-01 15:48:54 +01:00
Delyan Angelov
2700fd712b
builtin: add V64_PRINTFORMAT (part 1)
2020-03-01 15:30:33 +01:00
Joe Conigliaro
1ab830da4b
v2: fix var mistaken for enum in parser
2020-03-02 01:19:10 +11:00
Alexander Medvednikov
82b0024758
fix v2 parser int.v error
2020-03-01 14:57:54 +01:00
Alexander Medvednikov
d7a8b1b4f2
checker: set fn arg expected_type
2020-03-01 14:10:10 +01:00
Nicolas Sauzede
becd87141c
fix linux warnings in generated C code
2020-03-01 13:26:09 +01:00
Alexander Medvednikov
7a499b3cd3
checker: fix first() and last(); call_args; method cgen
2020-03-01 13:07:51 +01:00
Joe Conigliaro
9978fb3e2c
v2: fix map_init return type in checker
2020-03-01 21:45:44 +11:00
Joe Conigliaro
00dcaf0e04
v2: ArrayInit + all errs & unhandled + arrange nodes + type fix
2020-03-01 15:14:36 +11:00
Alexey
cbffbf3438
array: reverse empty arrays correctly
2020-02-29 20:44:02 +01:00
Alexey
c1e095e587
fmt: process `MatchExpr`
2020-02-29 20:43:15 +01:00
Alexander Medvednikov
4e88c2286e
checker: IfGuard, map fixes
2020-02-29 20:11:04 +01:00
Alexander Medvednikov
ee05b51f47
checker: fix match expected_type
2020-02-29 18:34:25 +01:00
Alexander Medvednikov
a15dcbfb2d
checker: set expected_type in several places
2020-02-29 18:25:38 +01:00
Alexander Medvednikov
27ce38937c
checker: fix Assoc
2020-02-29 18:07:29 +01:00
Alexander Medvednikov
85f67a3f73
fix prod build
2020-02-29 17:53:04 +01:00
Alexander Medvednikov
d5faf36aa9
fmt: comments
2020-02-29 17:51:38 +01:00
Alexey
5a5f4ce99a
fmt: simplify `IndexExpr` processing
2020-02-29 17:45:08 +01:00
yuyi
a678be7195
fix interface on all platforms
2020-02-29 15:27:28 +01:00
Alexey
99cbc58db8
array: update `array.repeat`
2020-02-29 15:25:49 +01:00
Alexey
632a538eb3
string: update `string.repeat` behavior
...
Panic if a repeat count is negative.
Return an empty string if a repeat count is zero.
2020-02-29 15:25:31 +01:00
lydiandy
a485533dc9
make sure scanner and parser both check BOM
2020-02-29 15:05:25 +01:00
yuyi
6c85e285e7
vdoc: show variadic args correctly
2020-02-29 15:04:07 +01:00
Alexey
ee0a0afb25
v2: process `or` block for `CallExpr`
2020-02-29 15:03:32 +01:00
Alexey
efff66ada7
fmt: add `pub` modifier for public enums
2020-02-29 14:38:23 +01:00
Major Taylor
d4b0de2dce
log: extended logging level names when printed
2020-02-29 14:31:59 +01:00
Delyan Angelov
f9d5c0110f
compiler: @VMODULE
2020-02-29 14:23:45 +01:00
Joe Conigliaro
f67fca826e
v2: fix C function & type prefixing
2020-02-29 21:47:47 +11:00
Joe Conigliaro
48f912c2e9
v2: handle variadic in selector_expr
2020-02-29 19:04:47 +11:00
Joe Conigliaro
71b5b0d955
v2: fix C fn calls, save C fns with prefix besides odd cases
2020-02-29 17:24:28 +11:00
Joe Conigliaro
236b7b15bb
v2: handle optional in return stmt in checker
2020-02-29 16:32:00 +11:00
Joe Conigliaro
8e013d2174
v2: skip minus in string expr for now
2020-02-29 15:56:16 +11:00
Joe Conigliaro
eb80accfee
v2: add ParExpr to checker
2020-02-29 15:36:39 +11:00
Alexander Medvednikov
6855c746bb
vfmt: EnumDecl
2020-02-28 17:21:24 +01:00
Major Taylor
ee9cfe22ec
scanner: fix a typo in right_shift
2020-02-28 17:16:24 +01:00
Alexander Medvednikov
ccf4f61521
ast: ParExpr, OrExpr, IfGuardExpr; ForInStmt fix; remove all cap vars
2020-02-28 15:36:41 +01:00
Alexander Medvednikov
6a198df3af
v2: ParExpr; mut var decl
2020-02-28 14:41:19 +01:00
Alexander Medvednikov
7f5a15372f
os: fix get_raw_line() + minor v2 fixes
2020-02-28 14:05:20 +01:00
Joe Conigliaro
c4b9ef388f
v2: handle var decl & assign stmt together 1st step combining
2020-02-28 23:29:04 +11:00
Nicolas Sauzede
f5fdbfd004
os: fix getline warning for linux
2020-02-28 02:43:42 +01:00
penguindark
b8f6284daf
ftoa: tables with hex constants
2020-02-28 02:43:15 +01:00
Alexander Medvednikov
87205367d1
v2: minor fixes
2020-02-27 21:51:40 +01:00
Alexander Medvednikov
3204f036da
ast: move all str() methods to ast/str.v
2020-02-27 21:29:38 +01:00
Alexander Medvednikov
d619944cf5
vfmt: []xxx; mut args
2020-02-27 21:00:33 +01:00
Alexander Medvednikov
4f0d505c65
v2: `if x := `; fix `for key, val in`; CastExpr
2020-02-27 18:02:40 +01:00
Alexander Medvednikov
3bde876097
v2: checker: fix --/++
2020-02-27 17:31:10 +01:00
Alexander Medvednikov
09b7a7c872
v2: checker: handle clone()
2020-02-27 17:21:13 +01:00
Alexander Medvednikov
b1357d9641
v2: checker: fix filter()
2020-02-27 16:51:47 +01:00
yuyi
b580a497fe
compiler: fix an interface bug
2020-02-27 16:31:05 +01:00
Joe Conigliaro
aba0bb5e01
v2: fix condition in AssignStmt
2020-02-27 21:15:30 +11:00
Joe Conigliaro
237d83b2ee
v2: more work on AssignStmt & multi ret & initial blank ident
2020-02-27 21:12:30 +11:00
joe-conigliaro
cfbd8ab7e7
v2: parser - use defer to make sure scope is closed for filter
2020-02-27 17:00:24 +11:00
Alexander Medvednikov
06fc8a830b
v2: fix a bug with `mod.const`
2020-02-27 03:30:17 +01:00
Alexander Medvednikov
a5db9c3519
os: bring back write_bytes_at()
2020-02-27 00:41:05 +01:00
Alexander Medvednikov
bb6098e2d3
v2: fix `type f fn...`
2020-02-27 00:18:14 +01:00
Alexander Medvednikov
c51f464446
v2: fix `mod.Enum.val` and `x = .val`
2020-02-27 00:12:40 +01:00
Alexey
59d6a675dd
vdoc: trim result value
2020-02-26 23:18:31 +01:00
Major Taylor
c72e505fe4
pg: use unsafe
2020-02-26 23:17:56 +01:00
Alexey
394d64bfd0
vdoc: remove duplicated code
2020-02-26 22:44:28 +01:00
Alexey
ca9fa6407f
v2: distinguish public and private constants
2020-02-26 22:43:37 +01:00
yuyi
46ec400cb3
vdoc: sort function names
2020-02-26 20:46:09 +01:00
Alexey
70f085be18
v2: process unsafe statements
2020-02-26 20:45:03 +01:00
Alexey
b1ea908b3b
fmt: process `defer` statement
2020-02-26 20:44:42 +01:00
Delyan Angelov
9d61f4fad1
benchmark: make measuring small snippets of code less verbose/easier to use
2020-02-26 16:29:46 +01:00
Alexander Medvednikov
857cbfb0d2
v2: short struct init syntax; .xxx enum checks; unions; assert
2020-02-26 15:51:05 +01:00
Nicolas Sauzede
30f905999a
math: add powf and other float32 functions
2020-02-26 13:31:54 +01:00
Delyan Angelov
7a72167eb7
strings: optimization of repeat + repeat_string()
2020-02-26 13:22:12 +01:00
penguindark
39429f7ac9
atof: lots of fixes
...
* removed sprintf for f64 and f32 use
* removed all pointers from the code, used unions instead
* solved module name problem
* fixed tests on vlib/math
* fix for alpine-linux math test
* small fix on byte allocation for ftoa
2020-02-26 12:14:06 +01:00
joe-conigliaro
c4e83faa57
compiler: allow a type to be used as a variant of multiple sum types
2020-02-26 15:15:38 +11:00
SleepyRoy
bc3d1eaf6e
scanner: simplify and unify style
2020-02-25 22:58:51 +01:00
Alexander Medvednikov
0f8b2399ee
fmt: fix new EnumVal
2020-02-25 19:59:47 +01:00
Alexander Medvednikov
28ee0f4ebe
checker: check enums
2020-02-25 15:02:34 +01:00
SleepyRoy
05ed6c57b6
scanner: add check for wrong decimal numbers
2020-02-25 14:33:29 +01:00
Alexander Medvednikov
f6c2b3a54b
v2: enum fixes
2020-02-25 13:30:43 +01:00
Alexander Medvednikov
7e930c2a75
cgen: enum
2020-02-25 11:52:41 +01:00
lydiandy
d4ffed89c0
add typeof test for fn ( #3832 )
2020-02-25 11:14:59 +01:00
penguindark
200f25a38f
ftoa in V ( #3831 )
2020-02-25 11:12:37 +01:00
SleepyRoy
b17e49ad25
scanner: add check for bin/oct/hex with wrong digits
2020-02-25 11:11:12 +01:00
SleepyRoy
f859c7f93e
scanner: fix special case - `e` or `E` at the end
2020-02-25 11:10:05 +01:00
Delyan Angelov
b17ade1257
compiler: implement typeof(x)
2020-02-24 21:45:47 +01:00
SleepyRoy
794ee6fc9d
scanner: fix bin/oct/hex without number parts
2020-02-24 18:02:36 +01:00
lydiandy
3c0b73c2d6
sokol: fixes
2020-02-24 18:02:22 +01:00
SleepyRoy
96da5b33c0
scanner: fix special case - 0 at the end
2020-02-24 18:01:51 +01:00
spaceface777
ef8c1203b4
cleanup: replace C for loops with range
2020-02-24 17:55:16 +01:00
Alexey
5918946feb
fmt: process attributes
2020-02-24 17:18:14 +01:00
vitalyster
a3a7e0531a
darwin: fix MacPorts build
2020-02-24 16:54:04 +01:00
Alexey
87ad5a96b9
v2: stringify multi-return types
2020-02-24 16:38:31 +01:00
Alexey
2bbb8526a3
fmt: process RangeExpr properly
2020-02-24 16:37:20 +01:00
SleepyRoy
7d2eb4f604
scanner: make `0o` prefix the only way to define octals
2020-02-23 23:43:04 +01:00
yuyi
9d2a60bb11
os: optimize os_windows.v
2020-02-23 20:46:13 +01:00
yuyi
adb1d3f8c9
scanner: enable 0oxx to handle octals
2020-02-23 12:33:07 +01:00
Alexey
26fa833984
fmt: process assignment statement correctly
2020-02-23 11:22:07 +01:00
Alexander Medvednikov
2eb4f663d6
fix fmt test
2020-02-22 17:14:38 +01:00
Alexander Medvednikov
dd29bfe4d2
fix fmt test
2020-02-22 17:07:03 +01:00
Alexander Medvednikov
d510cd1e0d
fmt: else, for in
2020-02-22 16:59:50 +01:00
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
Daren Liang
bd34524a1c
fractions: panic when reciprocal produces invalid fraction
2019-11-11 23:37:32 +03:00
Delyan Angelov
cc81e9adfa
v test v: cleanup more temporary files
2019-11-11 18:45:11 +03:00
BigBlack
0ab09a57f7
parser: multi-level pointers
2019-11-11 18:43:22 +03:00
Delyan Angelov
de5b4f0497
fix tests for tcc, extract failing stuff to separate simpler files to ease debugging
...
* Fix compiling vlib/compiler/tests/fn_test.v with tcc.
* Extract failing tests from fn_test.v so that they are more readable and easier to debug.
2019-11-11 17:59:59 +03:00
Alexander Medvednikov
e6775913aa
simplify vfmt
2019-11-11 17:04:47 +03:00
Alexander Medvednikov
d9b29bfb4e
fix a bug in strings.Builder and wrap up vfmt
2019-11-11 08:24:28 +03:00
Alexander Medvednikov
f2b1a8cb16
fix option_test.v
2019-11-11 07:09:07 +03:00
Alexander Medvednikov
8947717e3e
fix the build
2019-11-11 06:19:18 +03:00
Alexander Medvednikov
0ad0a61db2
remove unnecessary empty lines in cgen
2019-11-11 06:02:01 +03:00
Alexander Medvednikov
730ef96398
another tcc fix
2019-11-11 05:33:19 +03:00
Alexander Medvednikov
bf98eb55ee
remove a test until a tcc bug is fixed
2019-11-11 05:27:30 +03:00
Alexander Medvednikov
b3143bb559
parser: remove start_tmp() entirely
2019-11-11 05:22:38 +03:00
Daren Liang
91896af877
math: digits panic for invalid base
2019-11-11 05:21:47 +03:00
Alexander Medvednikov
887c94d9ba
parser: second batch of start_tmp()
2019-11-11 05:14:54 +03:00
Alexander Medvednikov
00b3557ce1
parser: start removing start_tmp()
2019-11-11 05:06:24 +03:00
Alexander Medvednikov
f30d0ce667
parser: fix a bug with complex ref fn args
2019-11-11 04:56:13 +03:00
Henrixounez
76c27c0b03
cli: create project helper
2019-11-11 00:48:56 +03:00
Alexander Medvednikov
3c4bb16ce9
disable dereferencing error for now
2019-11-10 20:32:11 +03:00
Alexander Medvednikov
aea5b2e3b6
make unsafe dereferncing warning an error
2019-11-10 20:14:57 +03:00
Alexander Medvednikov
ffa9646749
Revert "print_backtrace_skipping_top_frames: Implementation for MSVC "
...
This reverts commit d1e7a54f3a
.
2019-11-10 20:01:19 +03:00
Alexander Medvednikov
fdf6682254
require `unsafe` for dereferencing
2019-11-10 19:57:17 +03:00
Alexander Medvednikov
c7f3413d70
more vfmt fixes
2019-11-10 19:49:19 +03:00
Don Alfons Nisnoni
b9728c7af0
string: update split() method
2019-11-10 19:37:36 +03:00
Steven Gay
d1e7a54f3a
print_backtrace_skipping_top_frames: Implementation for MSVC
2019-11-10 19:34:53 +03:00
Henrixounez
f8ab629986
readline: fix cursor position with prompt including ansi escape sequences
2019-11-10 19:33:21 +03:00
Alexander Medvednikov
3d4f85069f
more vfmt fixes
2019-11-10 02:44:26 +03:00
kdmult
30481a36dc
fix broken doc on windows
...
* replace hardcoded slash with os.path_separator
* compile only, no link, if building a module
2019-11-09 23:49:15 +03:00
Daren Liang
e6c9c7d571
parser: check type for all integer only assignment operators
2019-11-09 21:57:36 +03:00
Alexander Medvednikov
b1d2c6c730
lots of vfmt fixes
2019-11-09 20:42:29 +03:00
ylluminate
aef02f61e1
V UI readme: Add web (JS/WASM) to platform list
2019-11-09 20:37:31 +03:00
Daren Liang
c607246218
parser: add xor type check
2019-11-09 20:36:56 +03:00
Toby Webb
ab37081f02
add production mode tests
...
Due to the inability to detect warnings in REPL tests, I implemented running something very similar, but with the -prod flag enabled.
(See https://github.com/vlang/v/pull/2536 )
There is also a minor change in os.walk_ext to not add duplicated path separators:
/path//file.ext -> /path/file.ext
2019-11-09 19:35:26 +03:00
Alexander Medvednikov
f33d8bd596
do not generate interface tables for unused interfaces
2019-11-09 18:13:51 +03:00
Alexander Medvednikov
32fec2c26c
fix interfaces on msvc
2019-11-08 23:28:32 +03:00
Alexander Medvednikov
cac719c078
[]interface
2019-11-08 22:08:02 +03:00
Alexander Medvednikov
6f95be60a1
cc.v: use msvc on Windows by default if gcc is not installed
2019-11-08 21:15:26 +03:00
Daren Liang
c4ff0d565b
parser: check mul and div operations on str variables
2019-11-08 20:26:08 +03:00
Delyan Angelov
bc826173cc
fix $if msvc conditional define
2019-11-08 16:00:55 +03:00
Alexander Medvednikov
7a8e7b4db8
fix interface methods that return a value
2019-11-08 07:43:44 +03:00
Alexander Medvednikov
985fb91ee8
rewrite interfaces
2019-11-08 07:16:53 +03:00
Daren Liang
f5438477df
parser: check mul and div operations on strings
2019-11-08 04:32:25 +03:00
Nicolas Sauzede
db4a7edf3a
fix threads to actually return a voidptr
2019-11-08 03:09:02 +03:00
Nicolas Sauzede
5a8c3daba3
os: fix stat mode signedness warning
2019-11-08 03:02:02 +03:00
Alexander Medvednikov
27f6b2dd73
table: fix float/integer cast bug
2019-11-08 02:04:00 +03:00
Alexander Medvednikov
f579376638
table: improve check_types()
2019-11-08 01:48:36 +03:00
Nicolas Sauzede
2f5de11c22
fix byteptr warning
2019-11-08 01:30:07 +03:00
Nicolas Sauzede
3a99217592
fix pthread 3rd arg voidptr warning
2019-11-08 00:58:49 +03:00
Delyan Angelov
a44ba0b8a2
bignum module wrapper for kokke/tiny-bignum-c
2019-11-07 22:04:18 +03:00
pfefferminz132
b9e7d02462
math: make ceil return an f64
2019-11-07 19:54:51 +03:00
lorenzo pirro
6bcd0fd9cc
optimize reserved type check
2019-11-07 18:45:38 +03:00
Alexander Medvednikov
6d98203572
fix "undefined" error
2019-11-07 17:57:54 +03:00
Daren Liang
df6bdf59e6
parser: fix mod assign type check
2019-11-07 17:49:40 +03:00
Alexander Medvednikov
fbd71e1539
expression.v
2019-11-07 17:48:48 +03:00
vitalyster
2d3944250f
tools: show C output when tool can not be compiled
2019-11-07 16:17:32 +03:00
vitalyster
86447c1301
windows: use CreateProcess for os.exec
2019-11-07 16:01:17 +03:00
lorenzo pirro
d57c0cfde0
parser: fix builtin as name not allowed
2019-11-07 06:00:48 +03:00
Nicolas Sauzede
c8de2c0bd4
fix i64 overflow warning
2019-11-07 06:00:00 +03:00
Alexander Medvednikov
c9d0bd7404
print true and false instead of 1 and 0
2019-11-07 00:07:50 +03:00
Alexander Medvednikov
fdd4afa392
for.v and match.v; do not allow arrays in `match`
2019-11-06 23:30:08 +03:00
lorenzo pirro
bd18f50c8a
os: cp_r fn to copy files recursively
2019-11-06 23:05:35 +03:00
vitalyster
8dbeab9a7b
make V work on Windows 7
2019-11-06 23:04:40 +03:00
Alexander Medvednikov
e266c8a750
urllib: test str()
2019-11-06 22:35:59 +03:00
Abdullah Atta
c4e9f09f0f
urllib: crash when converting URL to str
2019-11-06 22:34:33 +03:00
Alexander Medvednikov
7c70f3df93
parser: & and | type check
2019-11-06 21:20:37 +03:00
Alexander Medvednikov
0f0bef2d33
parser: more typing checks
2019-11-06 20:47:03 +03:00
Alexander Medvednikov
75510e2ea1
remove `last` test
2019-11-06 18:19:03 +03:00
Alexander Medvednikov
73134035a9
parser: remove `last`
2019-11-06 18:17:14 +03:00
Alexander Medvednikov
6a812f7293
mod operator tests
2019-11-06 18:04:48 +03:00
Alexander Medvednikov
6afd7d50a6
parser: fix mod type check
2019-11-06 17:52:35 +03:00
Alexander Medvednikov
ca259331e4
parser: fix % type check
2019-11-06 17:35:32 +03:00
Alexander Medvednikov
f6d06fcda2
update tests and examples after the mutability fix
2019-11-06 06:57:04 +03:00
Alexander Medvednikov
b720bb2e77
parser: mark var as changed only if the receiver is mutable
2019-11-06 06:48:57 +03:00
Alexander Medvednikov
8dd335295e
new enum step 2
2019-11-06 06:26:04 +03:00
Alexander Medvednikov
4d876d1980
new enum step 1
2019-11-06 06:16:12 +03:00
Alexander Medvednikov
855a736a2c
parser: C enums + another enum simplification
2019-11-06 05:14:34 +03:00
Daren Liang
91bb969ed1
stats: use c style for loop
2019-11-06 04:45:05 +03:00
Alvydas Vitkauskas
af81b02ef0
parser: fix shift-assign to work with all integer types
2019-11-06 03:37:31 +03:00
Alvydas Vitkauskas
3080959084
parser: make let shift operators work with all types
2019-11-06 01:02:50 +03:00
Alexander Medvednikov
1b5f724df0
#include warning
2019-11-06 00:32:15 +03:00
Alexander Medvednikov
7fc7c05e9d
parser: do not all string casts
2019-11-05 20:41:02 +03:00
Alexander Medvednikov
b91a537c35
it's better to do this locally and update v.c manually
2019-11-05 20:27:53 +03:00
Alexander Medvednikov
1687afba9f
remove locale.h and unistd.h
2019-11-05 20:05:25 +03:00
Alexander Medvednikov
b929543782
remove string.h
2019-11-05 20:00:00 +03:00
Alexander Medvednikov
62f54d9d65
remove signal.h
2019-11-05 19:57:53 +03:00
Alexander Medvednikov
dc1ca31071
enable temporary fns.h with C defs
2019-11-05 19:34:56 +03:00
vitalyster
eb069833a8
compiler: detect Cygwin and show error message
2019-11-05 19:33:24 +03:00
Alexander Medvednikov
c5d868c928
start the C header removal process
2019-11-05 19:24:00 +03:00
Alexander Medvednikov
5306c14d78
parser: nothing can be cast to bool
2019-11-05 18:58:42 +03:00
Alexander Medvednikov
07e3699700
parser: do not allow number => bool casts
2019-11-05 18:56:19 +03:00
Alexander Medvednikov
883041fbcc
os: replace FILE with voidptr to remove stdlib.h dep
2019-11-05 18:42:10 +03:00
vitalyster
67f68df8a8
compiler: display error when MinGW configuration is outdated
2019-11-05 18:39:44 +03:00
Alexander Medvednikov
b2f8944b1f
fix V.js
2019-11-05 18:18:10 +03:00
Alexander Medvednikov
425c9ce401
a special `last` variable in for loops (experimental)
2019-11-05 17:17:55 +03:00
aliczin
53981c8747
compiler: supress windows (MSVC) warnings
2019-11-05 14:09:33 +03:00
Alexander Medvednikov
f60d44eda9
--enable-globals
2019-11-05 02:43:52 +03:00
Alexander Medvednikov
f8d14a216b
parser: print backtrace only in debug mode
2019-11-05 02:30:51 +03:00
Alexander Medvednikov
0a6840b6a6
improve a minor info message
2019-11-05 01:32:21 +03:00
Alexander Medvednikov
ee4db9f96d
parser: $if clang, $if msvc, $if mingw
2019-11-04 20:14:34 +03:00
joe-conigliaro
b8b72580a7
compiler: typo detection - fix error & slightly optimize function
2019-11-04 14:35:28 +03:00
joe-conigliaro
5d16f30a3d
parser: add error when trying to assign from a function that does not return a value
2019-11-04 14:35:10 +03:00
Henrixounez
b5d457b5ce
readline: catch siguser signal to reset tty
2019-11-04 05:05:12 +03:00
joe-conigliaro
5f1e634d82
compiler: improve typo detection, support all types and fn definitions
2019-11-04 04:59:28 +03:00
joe-conigliaro
a6a233df6b
compiler: remove unneeded blank ident assignment ( #2634 )
2019-11-04 10:59:18 +11:00
Daren Liang
e3d8ab5849
os: do not allow || and \n in system/exec
2019-11-04 02:41:15 +03:00
joe-conigliaro
df5faf35e5
compiler: optionals default value
2019-11-04 02:38:49 +03:00
Alexander Medvednikov
4e64a58ac1
scanner: fix string interpolation in raw strings
2019-11-03 23:57:26 +03:00
Alexander Medvednikov
3449a8bc4d
os: do not allow ; and && in system/exec
2019-11-03 23:13:56 +03:00
Trivaxy
8de2f00294
os: add windows cp
2019-11-02 22:37:29 +03:00
Alexander Medvednikov
56e1dac03a
Revert "vtools: add an info message". This broke repl tests.
...
This reverts commit 3b3f0eb507
.
2019-11-02 14:52:12 +03:00
Alexander Medvednikov
3b3f0eb507
vtools: add an info message
2019-11-02 13:27:09 +03:00
Alexander Medvednikov
3097ba93d7
vtools: do not use -prod, it slows things down too much
2019-11-02 13:26:03 +03:00
joe-conigliaro
4120982da1
compiler: add varg str method & varg / parser optimizations
2019-11-02 13:17:56 +03:00
joe-conigliaro
7b1993b1e4
vlib: filepath module
2019-11-01 19:29:51 +03:00
joe-conigliaro
fe9d884d90
parser: fix forwarding vargs & multiple call varg len fix
2019-11-01 19:14:16 +03:00
Alexander Medvednikov
de8297c983
examples/users.v: fix imports
2019-11-01 19:02:38 +03:00
Alexander Medvednikov
80ba8f07b8
more ui vh fixes
2019-11-01 18:03:24 +03:00
Delyan Angelov
59efd42483
tools/vget => tools/v , search, install, etc
...
* compiler: rename vget to tools/vpm, implement draft support for v vpm search, v vpm update, v vpm install, v vpm remove, v vpm help .
* compiler: use "v pm" instead of "v vpm" to reduce the redundancy of typing, as suggested by slapden
* Use 'v install modulename', 'v search keywords', 'v update modulename', 'v remove modulename' instead of the longer 'v pm install modulename' etc.
2019-11-01 15:19:04 +03:00
Alexander Medvednikov
a83e233dea
building modules can now be done from any directory
2019-11-01 14:16:58 +03:00
Delyan Angelov
15d4f68af6
compiler: pass -no-pie in debug builds so that backtraces work
2019-11-01 13:20:26 +03:00
Delyan Angelov
e15abb3de0
compiler: move `v up` implementation to tools/vup.v
2019-11-01 13:14:59 +03:00
Danil-Lapirow
15f971ece7
parser: fix broken methods with vargs
2019-11-01 13:03:14 +03:00
Delyan Angelov
bfe039fcba
compiler: extract testing to tools/vtest.v
2019-11-01 02:15:03 +03:00
Enrico Lefass
a691cc857e
time: add new public functions for formatting
2019-11-01 02:13:03 +03:00
Alexander Medvednikov
f8f7881f89
thirdparty/ui for macOS (temporary)
2019-11-01 01:14:08 +03:00
Nicolas Sauzede
71450828bd
fix missing protos for popen and backtrace_symbols
2019-11-01 00:52:08 +03:00
Alexander Medvednikov
e07d3c7827
ui vh hack
2019-11-01 00:47:11 +03:00
Alexander Medvednikov
91df08f56d
cc: experimental -fast option for tcc/codegen in the future
2019-11-01 00:37:24 +03:00
Alexander Medvednikov
987f5fd2a1
string: bring back strconv
2019-11-01 00:28:52 +03:00
Alexander Medvednikov
ae696e7ccb
Revert "Revert "array: fix and document array functions""
...
This reverts commit b1eb9d6b15
.
2019-10-31 21:50:20 +03:00
Alexander Medvednikov
4c96ca4e62
string: remove strconv dep
2019-10-31 21:50:11 +03:00
Alexander Medvednikov
128d37c671
vh fixes for the UI module
2019-10-31 21:26:12 +03:00
Alexander Medvednikov
5be8b47e1c
cc.v: disable tcc on android
2019-10-31 20:32:34 +03:00
Alexander Medvednikov
b1eb9d6b15
Revert "array: fix and document array functions"
...
This reverts commit 7fa33fc250
.
2019-10-31 20:29:58 +03:00
Henrixounez
55f6e810cf
repl: moved as a tool and using readline
2019-10-31 19:01:04 +03:00
ytakahashi
114953f28d
match: fix typo and remove arrows
2019-10-31 18:58:19 +03:00
Alvydas Vitkauskas
7fa33fc250
array: fix and document array functions
2019-10-31 15:46:50 +03:00
Don Alfons Nisnoni
0c229aacdd
readline: use new enum syntax
2019-10-31 14:06:48 +03:00
joe-conigliaro
5acdf425ab
parser: move duplicate code into single function
2019-10-31 13:49:57 +03:00
Alexander Medvednikov
b1730b768d
remove a println()
2019-10-31 12:15:45 +03:00
Alexander Medvednikov
d5cf4d6fd5
compiler: -o dir/file: create a new directory if it doesn't exist
2019-10-30 20:53:34 +03:00
Amal Shaji
e8d34002e1
map: fixed deletion of non-existent keys
2019-10-30 20:19:59 +03:00
Alexander Medvednikov
5da3c49497
json: rename jsgen.v to json_gen.v
2019-10-30 19:45:33 +03:00
Alexander Medvednikov
6b4dcb916b
ci: bring back Vid build
2019-10-30 19:36:54 +03:00
Alexander Medvednikov
316cf025ae
arrays: fix range
2019-10-30 17:30:49 +03:00
Alexander Medvednikov
a9ca9f45af
fix enum/match combo in sync_windows.v
2019-10-30 17:29:05 +03:00
Alexander Medvednikov
9044f1437c
v doc
2019-10-30 17:07:41 +03:00
Alexander Medvednikov
08c1f408d3
fix sync_windows.v
2019-10-30 16:43:40 +03:00
Alexander Medvednikov
2bd2501dc0
fix new enums in tests
2019-10-30 16:38:47 +03:00
Alexander Medvednikov
aa39451c8b
arrays.range(min, max)
2019-10-30 16:21:57 +03:00
Alexander Medvednikov
96f7620628
instead of `Enum.foo` require `.foo` if it's enough + some UI fixes
2019-10-30 15:48:33 +03:00
Delyan Angelov
ba6cc5df2a
compiler: print asserted source line on failure
2019-10-30 12:15:33 +03:00
Don Alfons Nisnoni
ee6ec3faf3
crypto: fix a typo
2019-10-29 19:59:55 +03:00
sunnylcw
79279e01f5
sqlite: add flags for FreeBSD to pass sqlite test
2019-10-29 17:13:56 +03:00
lorenzo pirro
d42c53346d
array: eq() for builtins (byte, string, int, i64, f32)
2019-10-29 14:26:00 +03:00
Danil-Lapirow
f161ff9db5
parser: fix tmp is already started issue
2019-10-28 23:50:58 +03:00
ytakahashi
6a609cb046
log: make const/struct public
2019-10-28 18:53:02 +03:00
Delyan Angelov
3950b10d2a
compiler: make Fn struct public
2019-10-28 16:37:18 +03:00
Alexander Medvednikov
9e9935acbc
math: make consts and structs public
2019-10-28 16:33:36 +03:00
Alexander Medvednikov
33b5afa893
V 0.1.22
2019-10-28 13:12:44 +03:00
Delyan Angelov
15deaa7eb6
compiler: improve errors when building thirdparty .o files
2019-10-28 12:43:57 +03:00
Alexander Medvednikov
44b99bc299
ci: don't run sqlite test on windows for now
2019-10-28 12:32:03 +03:00
Alexander Medvednikov
a7568ea54b
ci: install libsqlite package
2019-10-28 11:45:27 +03:00
Alexander Medvednikov
373873d71f
fix sqlite test
2019-10-28 10:40:48 +03:00
Danil-Lapirow
a2bafaa254
parser: add error on array comparison
2019-10-28 10:26:42 +03:00
Alexander Medvednikov
c5fa99c66c
darwin not supported yet
2019-10-28 10:25:56 +03:00
Alexander Medvednikov
d54bbc8737
fix sqlite test
2019-10-28 10:21:32 +03:00
Alexander Medvednikov
1ac1626357
sqlite example
2019-10-28 00:10:58 +03:00
Alexander Medvednikov
16c4415d4c
a very simple sqlite driver
2019-10-28 00:02:52 +03:00
Alexander Medvednikov
1390a39053
clean up switch tokens
2019-10-27 22:42:52 +03:00
Don Alfons Nisnoni
8358528888
string: add some docs
2019-10-27 22:29:55 +03:00
Alexander Medvednikov
9cddf22fff
glfw: make two structs public
2019-10-27 21:23:33 +03:00
Alexander Medvednikov
9c5abd575f
parser: remove switch_statement()
2019-10-27 13:03:40 +03:00
Alexander Medvednikov
e890f682e2
[if] fn: remove unused expression
2019-10-27 12:42:31 +03:00
Alexander Medvednikov
5946f67328
final switch => match
2019-10-27 12:38:50 +03:00
Don Alfons Nisnoni
acaf66ac80
readline: switch => match
2019-10-27 12:38:36 +03:00
Alexander Medvednikov
293cf18266
enable [if vfmt]
2019-10-27 12:16:33 +03:00
Alexander Medvednikov
d00fdca38f
[if vfmt] for fgen() functions
2019-10-27 12:13:08 +03:00
joe-conigliaro
d81b0675f0
array: bring back left & right method tests
2019-10-27 12:05:19 +03:00
Alexander Medvednikov
efdadc3758
tetris/glfw: fix warnings
2019-10-27 10:13:40 +03:00
joe-conigliaro
59378dce46
compiler/vlib: replace substr/left/right with `[start..end]` everywhere
2019-10-27 10:03:15 +03:00
Don Alfons Nisnoni
ed55826686
log/net: switch => match
2019-10-27 09:45:03 +03:00
Nicolas Sauzede
7ba5248e56
os_win.v: switch => match
2019-10-27 09:36:40 +03:00
joe-conigliaro
a075ce160e
compiler: add `[..2]` & `[2..]` support for slices
2019-10-27 09:36:04 +03:00
Alexander Medvednikov
e80cf185b9
allow public unions and interfaces
2019-10-27 02:23:52 +03:00
Alexander Medvednikov
ef022c2326
[if vfmt] function attribute for skipping functions for performance
2019-10-27 02:11:31 +03:00
Alexander Medvednikov
ee51313e2c
test array and string slices
2019-10-27 01:37:29 +03:00
Alexander Medvednikov
dd12a85429
array: fix a regression
2019-10-26 22:26:30 +03:00
Alexander Medvednikov
570a7aaaf3
a[start..end] slicing
2019-10-26 22:20:13 +03:00
Don Alfons Nisnoni
678ce54e70
os: document functions
2019-10-26 20:21:07 +03:00
Delyan Angelov
2d05c906d5
base64: some optimizations
...
* Add a test for the base64 encoding/decoding of long strings (i.e. mainly memory allocation).
* Make vlib/encoding/base64/base64_memory_test.v resemble more test.v from https://github.com/kostya/benchmarks .
* base64: some optimizations, also add base64.encode_in_buffer and base64.decode_in_buffer .
* Fix tests passing static strings.
* Reduce time needed for base64_memory_test.v .
* Optimize encoding.base64.Index access too (it is static), which speeds up decoding.
2019-10-26 18:20:36 +03:00
vitalyster
272b0aec82
os: fix os.get_error_msg on Windows
2019-10-26 14:58:05 +03:00
Alexander Medvednikov
6944161b15
array: clean up filter()
2019-10-26 14:53:55 +03:00
Alexander Medvednikov
70c9565607
array: fix map() return type and handle []bool
2019-10-26 14:49:36 +03:00
Alexander Medvednikov
f40d672a12
array: map() test
2019-10-26 14:32:56 +03:00
Alexander Medvednikov
4ef10c92f4
array: map() method
2019-10-26 14:28:11 +03:00
Alexander Medvednikov
f6f5b8cfb1
bring back string.h for now
2019-10-26 11:51:22 +03:00
Alexander Medvednikov
fbd41eacba
remove string.h include 1
2019-10-26 11:43:25 +03:00
Alexander Medvednikov
ef45a87882
remove string.h include
2019-10-26 11:29:56 +03:00
Alexander Medvednikov
58f0503f6d
cc.v: bring back implicit fn declaration
2019-10-26 11:09:20 +03:00
Alexander Medvednikov
cba12d0106
macos libproc fix 2
2019-10-26 02:19:14 +03:00
Alexander Medvednikov
203f967677
macos libproc fix 1
2019-10-26 02:16:37 +03:00
Alexander Medvednikov
7de95a642e
remove more C headers
2019-10-26 02:08:46 +03:00
Alexander Medvednikov
dc2c62807a
string: faster int()
2019-10-25 23:41:18 +03:00
Alexander Medvednikov
5510327d70
array_test.v: str() test
2019-10-25 22:40:52 +03:00
Alexander Medvednikov
8d2111169a
fix V.js methods and duplicate .str() in arrays
2019-10-25 22:38:39 +03:00
Mihael Dimoski
b6fa252fc9
time: make Time struct public
2019-10-25 22:04:25 +03:00
Delyan Angelov
8364130a1f
compiler: implement error_with_code(s string, code int)
...
Make available the integer code as errcode to callers/unwrappers
2019-10-25 22:03:42 +03:00
Alexander Medvednikov
9c5a359de3
fix V.js methods after the recent generics fix
2019-10-25 21:57:32 +03:00
Simon Heuser
280c7d396c
generics: generic methods, cast to T
2019-10-25 21:32:27 +03:00
Alexander Medvednikov
7d02eccbce
cc.v: fix tcc check
2019-10-25 20:11:53 +03:00
Alexander Medvednikov
c30f16a038
parser: add ; after a goto label
2019-10-25 18:53:45 +03:00
Alexander Medvednikov
090e1a87b7
linux: use gcc if tcc fails
2019-10-25 18:49:49 +03:00
Alexander Medvednikov
be0830b24f
builtin: do not use backtrace with musl
2019-10-25 18:38:47 +03:00
Alexander Medvednikov
c7e6d379da
$if glibc {
2019-10-25 18:33:02 +03:00
Alexander Medvednikov
ef9cae6dc0
bring back backtrace
2019-10-25 17:59:41 +03:00
Alexander Medvednikov
a83aa28a67
urllib: switch => match
2019-10-25 17:54:34 +03:00
Alexander Medvednikov
d0cbb4041b
disable backtrace for now
2019-10-25 17:38:07 +03:00
Delyan Angelov
32b3611026
sync: new_mutex() and new_waitgroup()
2019-10-25 17:24:40 +03:00
Alexander Medvednikov
e04c4ad852
remove execinfo.h include
2019-10-25 17:20:49 +03:00
joe-conigliaro
7d418e9105
parser: cleanup & reuse
2019-10-25 16:34:12 +03:00
Alexander Medvednikov
784847cf18
make V compile
2019-10-25 16:06:21 +03:00
Alexander Medvednikov
ea3f9b5b9a
remove execinfo.h header
2019-10-25 12:13:38 +03:00
Alexander Medvednikov
4e21e9ed44
minor V.js fixes
2019-10-25 12:13:38 +03:00
Toby Webb
c456ba6bde
parser: fix incorrect unused var message
2019-10-25 10:27:43 +03:00
joe-conigliaro
4443fef6c3
compiler: add const to typo suggestions + small typo format update
2019-10-25 10:26:14 +03:00
Alexander Medvednikov
d4c1bba856
fix V.js
2019-10-24 22:58:01 +03:00
Alexander Medvednikov
892d1c6aab
vweb: first step to revive it
2019-10-24 22:46:58 +03:00
Simon Ernst
2032da7fe2
os: make Result public
2019-10-24 21:58:28 +03:00
Alexander Medvednikov
36eb1b77d0
compiler: remove remaining switch statements and show a warning
2019-10-24 19:26:51 +03:00
Alexander Medvednikov
753fe32793
parser: remove more switch statements
2019-10-24 16:02:24 +03:00
Alexander Medvednikov
695245d307
struct.v
2019-10-24 15:56:10 +03:00
Alexander Medvednikov
bac690bbc8
parser: replace the switch statement in `parse()`
2019-10-24 15:50:46 +03:00
Alexander Medvednikov
3a929faf26
enums: make `in` work without specifying the full type
2019-10-24 15:41:34 +03:00
Alexander Medvednikov
560ae9352c
nice enum works
2019-10-24 15:41:34 +03:00
Alexander Medvednikov
dca49e43d9
c defs
2019-10-24 15:41:34 +03:00
Larpon
98c016b41d
os: walk() function
2019-10-24 15:17:09 +03:00
joe-conigliaro
580abe0de4
lower/snake case consts & enums
2019-10-24 14:48:20 +03:00
joe-conigliaro
fe17dd9a7e
vlib: make more structs, consts, & enums public
2019-10-24 22:35:11 +11:00
Alexander Medvednikov
75a6c759c7
enum snake_case check
2019-10-24 14:25:03 +03:00
Alexander Medvednikov
3d6bdc2dc3
public enums + more public structs (libs/examples/tests)
2019-10-24 13:24:50 +03:00
joe-conigliaro
1a2db54bc1
compiler: cgen - fix typo. dependency was spelled wrong
2019-10-24 21:23:11 +11:00
Alexander Medvednikov
4a88a28a3b
make all necessary structs public
2019-10-24 12:51:00 +03:00
Alexander Medvednikov
dce3275df4
make necessary consts public
2019-10-24 12:36:57 +03:00
Alexander Medvednikov
1c564bc118
compiler: public consts and structs
2019-10-24 12:26:43 +03:00
joe-conigliaro
71d965b6a2
compiler: add hint to use references for dependant struct fields
2019-10-24 11:18:50 +03:00
joe-conigliaro
baf49b2523
show struct dependency cycles in error & update module cycle error ( #2517 )
2019-10-24 15:53:39 +11:00
Alexander Medvednikov
f14425ec18
do not allow one letter struct names
2019-10-23 23:46:07 +03:00
Tony Kostanjsek
c58c03167d
vlib/darwin: remove assert
2019-10-23 23:40:07 +03:00
joe-conigliaro
2f5a742f3e
compiler: generic variadic fix
2019-10-23 19:44:05 +03:00
joe-conigliaro
0cf3e2e677
compiler: add variadic support for generic functions
2019-10-23 17:48:06 +03:00
Alexander Medvednikov
054dd237a4
V.js: remove u8
2019-10-23 15:56:57 +03:00
Alexander Medvednikov
1db1e0f4b7
1
2019-10-23 15:55:14 +03:00
Alexander Medvednikov
6174dfb424
fix V.js
2019-10-23 15:51:52 +03:00
Alexander Medvednikov
e69117a8f3
vh types + fn receiver name check
2019-10-23 15:42:50 +03:00
Alexander Medvednikov
27e254c738
now bring _windows.v back
2019-10-23 12:54:45 +03:00
Alexander Medvednikov
95321f5b33
fix module_test.v
2019-10-23 12:50:18 +03:00
Alexander Medvednikov
1752f6879c
os: remove duplicate consts
2019-10-23 12:45:52 +03:00
Alexander Medvednikov
8021a01365
rename windows files for now
2019-10-23 12:37:42 +03:00
Alexander Medvednikov
b298b397dc
vh gen: consts before fns
2019-10-23 12:35:51 +03:00
Alexander Medvednikov
92185a1a6f
os: move windows consts to a separate file
2019-10-23 12:28:48 +03:00
Alexander Medvednikov
2e28691254
_windows.v fix
2019-10-23 12:25:00 +03:00
Alexander Medvednikov
5ef4b2064f
windows: _win.v => windows.v
2019-10-23 12:21:33 +03:00
Alexander Medvednikov
a6aad880f7
gg: resizable window option
2019-10-23 12:17:08 +03:00
Alexander Medvednikov
8b74c711c6
vh generation: consts + cleanup
2019-10-23 11:09:54 +03:00
Enrico Lefass
fcead2f79e
time: squash three occasions of const(...) into one
2019-10-23 08:41:16 +03:00
Alexander Medvednikov
0806aa353c
match: second step
2019-10-23 01:06:06 +03:00
Alexander Medvednikov
d8edc27805
match: this needs a 2 step PR
2019-10-23 01:00:52 +03:00
Alexander Medvednikov
9743b04fe6
update match statement
2019-10-23 00:56:25 +03:00
Alexander Medvednikov
4574039e4d
new vh generation + simpler match statement
2019-10-23 00:45:17 +03:00
Sergio Abreu García
14c273f273
gg: fix clear function
2019-10-22 23:06:56 +03:00
Alexander Medvednikov
7696a600f6
compiler: fix V build on Windows
2019-10-22 21:29:32 +03:00
Delyan Angelov
eeea257467
clean up empty lines in errors; simplify source line tracking
2019-10-22 18:38:17 +03:00
Arthur Kennedy Otieno
fb89c12d90
V.js: remove a text block resulting in syntax errors
2019-10-22 08:02:31 +03:00
Toby Webb
fdfa564865
parser: minor syntax fix
2019-10-21 22:04:57 +03:00
Alexander Medvednikov
a29c80ca3d
make the unsafe error a warning for now
2019-10-21 18:53:55 +03:00
joe-conigliaro
7680d9a23c
compiler: variadic fn - fix unexpected token `,` error from #2433 ( #2468 )
...
* merge master
* fix unexpected token
2019-10-21 23:30:34 +11:00
Delyan Angelov
eef73eea22
tools: new tool to extracts function names declared in V files
2019-10-21 14:14:28 +03:00
Delyan Angelov
cd8b0d04bb
parser: support for 'enum Color {red = 31 yellow green blue}'
2019-10-21 14:00:41 +03:00
Emily Hudson
a52cb315cb
fix memory bug with generic code generation
2019-10-21 13:54:37 +03:00
Toby Webb
dfc654f84e
const declarations should be order independent
2019-10-21 08:57:29 +03:00
Emily Hudson
2829298de7
live: Fix MSVC hot code reloading ( #2460 )
2019-10-21 12:15:43 +11:00
Alexander Medvednikov
333f0ab89f
fix v.js test
2019-10-20 20:52:31 +03:00
Alexander Medvednikov
3d6b936f38
parser: undefined error
2019-10-20 20:47:27 +03:00
Enrico Lefass
c23155790a
os: add pub fn read_bytes and pub fn read_bytes_at
2019-10-20 20:45:16 +03:00
Alexander Medvednikov
81b1b882fd
bultin: mark unsafe functions
2019-10-20 20:29:24 +03:00
Alexander Medvednikov
c13b58e6db
[deprecated] attribute
2019-10-20 20:15:48 +03:00
Alexander Medvednikov
1b518c158b
unsafe keyword + make array.free() an unsafe method
2019-10-20 20:10:44 +03:00
joe-conigliaro
f7c00b8180
compiler: blank ident - consolidate duplicated code into single function
2019-10-20 12:24:12 +03:00
Simon Heuser
8a31ee4b53
generic functions
2019-10-20 10:19:37 +03:00
Alexander Medvednikov
f63e24e51d
clean up vtest.v a bit
2019-10-20 09:56:33 +03:00
eau
6d8548d7a5
compiler: add missing header file on OpenBSD
2019-10-20 07:00:01 +03:00
Ole-Martin Bratteng
b73387647c
v.js: make eprintln use console.error
2019-10-19 15:42:37 +03:00
Delyan Angelov
5977fc0644
compiler: print relative file paths for files in the current directory
2019-10-19 12:03:04 +03:00
joe-conigliaro
c24d94f87f
compiler: fix mistake in comptime.v ( #2425 )
...
* merge master
* fix mistake in comptime.v
2019-10-19 19:40:01 +11:00
joe-conigliaro
b51b8858d6
compiler: update & enable cflag error ( #2420 )
...
* merge master
* update & enable cflag error
2019-10-19 11:38:02 +11:00
joe-conigliaro
22c7438795
compiler: cflag error - closes #2406 ( #2417 )
...
* merge master
* fix blank ident & add cflag error
* undo cflag changes
* add missing brace
* undo change to comptime
* improve error message
* update
2019-10-19 08:18:08 +11:00
joe-conigliaro
28b24eeef6
compiler: blank ident error fixes + other small cflag / parser fixes ( #2418 )
...
* merge master
* fix blank ident & add cflag error
* undo cflag changes
* fix gen_js
* undo gen_js changes
* fix
* fix
2019-10-19 08:00:47 +11:00
Alexander Medvednikov
c18578af6f
compiler: linux tcc fixes
2019-10-18 20:49:43 +03:00
Danil-Lapirow
bb9d95e9aa
parser: allow '' in attributes
2019-10-18 20:17:23 +03:00
joe-conigliaro
689003454b
only register initial varg struct on first pass ( #2404 )
2019-10-18 19:28:14 +11:00
Alexander Medvednikov
368e8e85a8
compiler: info message when trying to use an old command
2019-10-18 09:56:57 +03:00
joe-conigliaro
6dea2359ab
strconv: optimize functions
...
also make it the responsibility if the caller to properly trim whitespace
2019-10-18 08:20:03 +03:00
Alexander Medvednikov
c355e967ad
move array filter codegen to comptime.v
2019-10-18 07:58:54 +03:00
Alexander Medvednikov
d501dc4c11
compiler: first step to validate cmd flags
2019-10-18 07:48:46 +03:00
Alexander Medvednikov
80e79a3966
array: optimized generic filter()
2019-10-18 07:30:39 +03:00
pfefferminz132
eda0c73bef
compiler: use eprintln for cache diagnostic messages
2019-10-18 06:16:33 +03:00
joe-conigliaro
8d16762f03
strconv module + use it in builtin/string instead of C functions
2019-10-17 19:37:55 +03:00
Simon Ernst
270934441c
os: make ls() return an optional
2019-10-17 14:30:05 +03:00
joe-conigliaro
4932a32d91
compiler: fix os import by default in v scripts
2019-10-17 11:52:46 +03:00
Unknown User
f46b58b09d
int: i64 hex() use PRIx64
2019-10-17 11:06:54 +03:00
joe-conigliaro
b32a462b2e
math: new consts + helpers funcs for string to int / float
2019-10-17 09:04:57 +03:00
Alexander Medvednikov
5cd38ec91b
V shell scripts
2019-10-17 08:27:27 +03:00
Vinicius Rangel
96152510e5
parser: interpolation calling twice fix
...
if string interpolation needs to call a function, it will cache the
return to .len & .str usage in the generated code
2019-10-17 07:02:02 +03:00
Vinicius Rangel
5481f226dd
parser: Infinite multi-dimensional array
2019-10-17 06:52:58 +03:00
Alexander Medvednikov
5faa7e7861
Revert "repl: add readline for user input "
...
This reverts commit 83732642ac
.
2019-10-17 03:37:30 +03:00
Henrixounez
83732642ac
repl: add readline for user input
2019-10-16 18:38:07 +03:00
Henrixounez
99e07718da
readline: fix reading on linux, crash on mac
2019-10-16 12:46:24 +03:00
joe-conigliaro
280ccfa177
math: fns for gettng bit repr of float & vice versa
2019-10-16 11:19:03 +03:00
Alexander Medvednikov
66f36be7d0
Revert "repl: readline line editing "
...
This reverts commit 1956c6f906
.
2019-10-16 03:31:48 +03:00
Alexander Medvednikov
00fd1abf82
readline: fix macos
2019-10-16 03:20:40 +03:00
Alexander Medvednikov
526f1a3172
Revert "Revert "parser: fix programs without fn main""
...
This reverts commit 61af044316
.
2019-10-16 03:20:16 +03:00
vitalyster
9b38f59184
msvc: detect x86 host and use x86 build tools
2019-10-16 02:54:35 +03:00
Henrixounez
1956c6f906
repl: readline line editing
2019-10-16 02:50:48 +03:00
vitalyster
0e0f0ae5ea
escape os.exec('"$vexec"') to support directories with spaces
2019-10-16 02:49:51 +03:00
Simon Heuser
a5d61f6da0
math.complex: make fields public
2019-10-15 12:43:28 +03:00
Alexander Medvednikov
49d6c26da4
parser: do not allow str[i++]; update contributing.md
2019-10-15 11:06:22 +03:00
Henrixounez
bb1eca3564
readline: basic mac and windows version using os.getline
2019-10-15 09:04:22 +03:00
Alexander Medvednikov
75e2a29cb5
string: bring back strtoul for now
2019-10-15 08:53:35 +03:00
Alexander Medvednikov
f9593bd857
builtin: float.v + remove #include <math.h>
2019-10-15 08:41:45 +03:00
Alexander Medvednikov
4b176ba855
string: test i64() and u64()
2019-10-15 04:26:19 +03:00
Alexander Medvednikov
10ed65bc12
fix float.eq()
2019-10-15 03:45:11 +03:00
Alexander Medvednikov
91690a1b54
fix f64 tcc eq crash
2019-10-13 04:27:57 +03:00
joe-conigliaro
ae3ec380f8
add notice about msvc compilation ( #2340 )
2019-10-14 18:36:29 +11:00
Nicolas Sauzede
eb031b6800
compiler: enhance non-pub struct fields error message
2019-10-14 10:15:21 +03:00
Alexander Medvednikov
2d127cb694
tcc windows fixes
2019-10-14 09:03:11 +03:00
Alexander Medvednikov
a68222b55b
comptime: fix tcc check
2019-10-14 08:53:03 +03:00
joe-conigliaro
9a2b8a0814
compiler: move msvc compiler to -cc flag instead of -os ( #2338 )
...
* move msvc to -cc flag instead of -os
* undo unrelated change
* do first build without msvc
* remvove flags temp
* fix comment
2019-10-14 16:41:46 +11:00
Alexander Medvednikov
093d8a2b00
compiler: remove math dependency
2019-10-14 08:34:48 +03:00
joe-conigliaro
7dc740d084
CI: fis vjs build failure ( #2337 )
...
* fix ci building v
* fix v.js
* more js fix
* test
* fix
* remove testing
2019-10-14 15:42:27 +11:00
joe-conigliaro
de10a529b0
CI: fix building v
2019-10-14 07:08:02 +03:00
Alexander Medvednikov
e2bca190a9
compiler: v.v fixes
2019-10-14 05:18:48 +03:00
joe-conigliaro
e5b0478e19
compiler: optimize, don't rescan module directory for files ( #2334 )
...
* optimize, don't rescan module directory for files
* move from table to v
2019-10-14 12:07:59 +11:00
Alexander Medvednikov
6a951751f7
compiler: fix building_v
2019-10-14 03:56:53 +03:00
Alexander Medvednikov
b237ffcf09
Revert "move compiler/main.v to v.v"
...
This reverts commit 3748de8736
.
2019-10-14 03:48:36 +03:00
Alexander Medvednikov
3748de8736
move compiler/main.v to v.v
2019-10-14 03:38:06 +03:00
Alexander Medvednikov
61af044316
Revert "parser: fix programs without fn main"
...
This reverts commit bf21108fdb
.
2019-10-13 17:55:12 +03:00
Alexander Medvednikov
b1806b57d8
tests: no main fn
2019-10-13 17:50:55 +03:00
joe-conigliaro
a90427a663
parser: fix variadic function unused var C error
2019-10-13 16:58:54 +03:00
Delyan Angelov
53c64abdeb
compiler: make compiler an ordinary vlib/compiler module
...
* Move compiler/ under vlib/compiler/ .
* Add a minimal compiler/main.v driver program.
* Cleanup compiler/main.v .
* Make most compiler tests pass again.
* Apply the fix by @joe-conigliaro , so that the rest of the compiler tests are fixed too.
* Thanks to @avitkauskas, now the vlib/vcompiler/tests/str_gen_test.v test does not need to be special cased anymore.
* Reapply @joe-conigliaro fix for vgen.
2019-10-13 16:37:43 +03:00
Alexander Medvednikov
ae2af4c36d
parser: a small immutable field fix
2019-10-13 01:50:19 +03:00
Nicolas Sauzede
1292163637
runtime: add windows support for nr_cpus()
2019-10-13 01:01:15 +03:00
Alexander Medvednikov
432e074b4e
fix complex_test.v
2019-10-12 22:39:18 +03:00
Alexander Medvednikov
a76165828b
snake_case consts
2019-10-12 22:36:14 +03:00
Alexander Medvednikov
81f8b26127
os.path_separator
2019-10-12 22:18:19 +03:00
Vitalie Ciubotaru
ae6a426689
bitfield: remove workaround in assignment operations
2019-10-12 22:03:18 +03:00
joe-conigliaro
a06e2298f0
compiler: detect and error on public init function & remove empty init functions
2019-10-12 13:54:58 +03:00
Don Alfons Nisnoni
5ef2c947f7
szip: use `&zip` instead of `*zip` ( #2301 )
2019-10-12 12:46:33 +03:00
joe-conigliaro
40156392f8
compiler: cached modules - windows fixes & organise cached module path ( #2302 )
...
compiler: cached modules - windows fixes & organise cached module path (#2302 )
2019-10-12 16:41:41 +11:00
joe-conigliaro
dd053d79b0
vlib/examples: fix gl/glfw/gg examples. rename init functions
2019-10-12 06:03:15 +03:00
Alexander Medvednikov
b107b4f1e5
modules: create the modules directory if it's missing, use cache/
2019-10-12 05:04:59 +03:00
Alexander Medvednikov
4c91a5c94b
module caching: generate type aliases
2019-10-12 04:09:37 +03:00
Alexander Medvednikov
4cd9099f74
disable $if for headers for now
2019-10-12 03:49:36 +03:00
Alexander Medvednikov
6db7518189
make $if work with includes: skip the body if the target is different
2019-10-12 03:48:32 +03:00
joe-conigliaro
51388fea75
compiler: module init function & init consts for cached modules
2019-10-12 01:17:37 +03:00
Don Alfons Nisnoni
c7e47e6884
array: minor clean up
2019-10-12 00:06:30 +03:00
Delyan Angelov
2b087dbf95
backtraces: add source line numbers too on linux
...
* Add source line numbers to backtraces on linux.
* Fix -g (broken after token caching).
* reset the #line directives after all the v code is compiled
* cleanup p.cgen.line setting inside p.next() .
* Support windows filepaths like "C:\Users\travis\build\vlang\v\v.exe.tmp.c" inside generated #line directives.
* Try to diagnose better windows-gcc failing.
* Revert "Try to diagnose better windows-gcc failing."
* implement and use cescaped_path/1 .
* Use cescaped_path/1 consistently throughout compiler/ .
2019-10-12 00:04:42 +03:00
Alexander Medvednikov
9193242a76
fix runtime module test
2019-10-11 14:16:02 +03:00
Alexander Medvednikov
af46bf515f
glfw: bring back 64 bit glfw3.dll
2019-10-11 13:47:56 +03:00
Alexander Medvednikov
52c2fa44b8
runtime: nr_cpus()
2019-10-11 13:47:56 +03:00
Alexander Medvednikov
a280e98d7f
fix the build
2019-10-11 06:57:08 +03:00
Alexander Medvednikov
726aaecc46
compiler: make V compilable wit the tcc backend
2019-10-11 06:49:53 +03:00
Don Alfons Nisnoni
942c56ca95
array: add reduce() method
2019-10-11 04:12:40 +03:00
Alexander Medvednikov
e1dd4c19b5
compiler: cache modules if they are not built yet
2019-10-10 22:53:59 +03:00
vitalyster
a5ccc4673b
http: handle and print socket errors
2019-10-10 20:24:36 +03:00
vitalyster
f86a52aae6
socket: reuse socket parameters in addrinfo hints
2019-10-10 20:09:43 +03:00
Delyan Angelov
e61dce6441
freetype: fix compiler warning about ctx._draw_text
2019-10-10 20:09:19 +03:00
vitalyster
e64609387d
term: colors on Windows console
...
* isConsole moved to builtin is_atty function
* Windows console initialization moved to builtin.init
2019-10-10 20:08:36 +03:00
joe-conigliaro
f8fefd5a60
urllib: rem underscore methods from; add strings index_bytes
2019-10-10 20:04:11 +03:00
Delyan Angelov
f3abb9e682
fix 'v -debug examples/hello_world.v'
2019-10-10 20:02:32 +03:00
Alexander Medvednikov
9385ed27ae
fix v.js
2019-10-10 01:27:16 +03:00
Alexander Medvednikov
1f6535afb0
array/map: remove _get(), _push() etc
2019-10-10 01:15:19 +03:00
Alexander Medvednikov
2411b8d1e7
module cache fixes; do not allow function names starting with _
2019-10-10 00:44:26 +03:00
vitalyster
0796e1dd69
socket: no need to initialize WinSock on each request
2019-10-09 21:01:31 +03:00
Alexander Medvednikov
b1da59845e
array: fix initialization of empty fixed size arrays
2019-10-09 15:26:30 +03:00
Alexander Medvednikov
29f578d172
cc: bring back os.rm()
2019-10-09 07:02:45 +03:00
Alexander Medvednikov
7690b58691
remove experimental os2 test
2019-10-09 06:41:55 +03:00
Alexander Medvednikov
a9a73d9315
caching modules: almost there
2019-10-09 06:35:58 +03:00
Unknown User
c1eb714a7f
bitfield: change `[0;n]` to `[0].repeat(n)`
2019-10-08 13:24:02 +03:00
Unknown User
6edc25f512
pg: remove unused imports
2019-10-08 13:23:39 +03:00
Don Alfons Nisnoni
fecf3f19c3
array: add filter() method
2019-10-08 13:23:17 +03:00
vitalyster
e10848e0d5
windows: read console with ReadConsole when it is not redirected
2019-10-08 12:29:09 +03:00
Delyan Angelov
60d4f47f7a
improve crash diagnosis/detection when a test segfaults
2019-10-08 02:34:55 +03:00
Delyan Angelov
ac5241b5bd
compiler: implement -stats option for running a _test.v file
...
* Draft implementation of `v -stats file_test.v` .
* compiler: call stuff in vlib/benchmark/tests/always_imported.v, when doing `v -stats file_test.v`
* Nicer looking output from 'v -stats file_test.v' .
* Tweak colors and layout of -stats file_test.v .
* Fix a hardcoded path in compiler/main.v .
* Show colorized OK/FAIL for the examples in 'v test v' too.
* Add some comments about the purpose of the methods inside vlib/benchmark/tests/always_imported.v .
* when fails are 0, do not colorize their number at all.
2019-10-07 08:51:26 +03:00
Alexander Medvednikov
f1923d454c
parser: make verbose mode less verbose
2019-10-07 01:25:53 +03:00
Henrixounez
5acadbab32
readline: optional return, automatic raw mode and standalone functions
2019-10-06 16:28:41 +03:00
Enrico Lefass
b0573bd4e4
time: add new public format function ddmmy()
2019-10-06 16:24:37 +03:00
Alexander Medvednikov
b242e8d7ff
optimize `a in [1,2,3]` to `a == 1 || a == 2 || a == 3`
2019-10-06 06:07:38 +03:00
Alexander Medvednikov
65aafb3cf1
3d arrays are not supported yet
2019-10-06 04:18:55 +03:00
Alexander Medvednikov
6a0599b5f4
raw strings with r'raw'
2019-10-06 04:11:08 +03:00
Alexander Medvednikov
735336e569
array: 2d and 3d test
2019-10-05 16:03:19 +03:00
joe-conigliaro
72ae12877e
remvoe dupe in main & fix js string.builder ( #2233 )
2019-10-05 18:07:10 +10:00
Alexander Medvednikov
e14861694c
another v.js fix
2019-10-05 08:03:26 +03:00
Alexander Medvednikov
ed99fc2d42
v.js: fix strings.Builder
2019-10-05 07:40:32 +03:00
Don Alfons Nisnoni
68bcf6830c
array: add index() method
2019-10-04 23:07:19 +03:00
Alexander Medvednikov
52f4f4026b
compiler: cache modules
2019-10-04 15:48:09 +03:00
Alexander Medvednikov
f45d3f07ed
fix 3 last C warnings and make sure no new warnings are introduced
2019-10-04 05:49:41 +03:00
unknown-v
b3805140ec
Remove json_test.exp & json_test.lib
2019-10-03 02:00:11 +03:00
Swastik Baranwal
7d763e0776
fix js build
2019-10-02 15:46:08 +03:00
Alexander Medvednikov
5ba354fa2c
`if a := foo() {` syntax for handling optionals
2019-10-01 22:57:38 +03:00
hazohelet
56e4ed1e6b
compiler: float comparison uses machine epsilon by default
2019-10-01 22:38:36 +03:00
joe-conigliaro
7fd2ef975b
parser: add v error if assigning var to blank identifier `_`
...
also fix C warn & double semicolon
2019-10-01 15:40:11 +03:00
Delyan Angelov
2ac80485c0
C backend: fix a couple of C warnings on Linux
2019-10-01 14:35:59 +03:00
Alexander Medvednikov
243626c7c1
readline: capitalize structs
2019-10-01 06:28:06 +03:00
Alexander Medvednikov
841d824216
builtin: a very early version of the hashmap
2019-10-01 06:20:50 +03:00
Alexander Medvednikov
2aa6ab71db
darwin: no need to free the buffer
2019-09-30 23:29:53 +03:00
Tony Kostanjsek
39cfb1d6a6
darwin: resource_path()
2019-09-30 23:29:14 +03:00
Delyan Angelov
e72fe25224
compiler: more precise 'declared and not used' error positioning
...
* compiler: extract and cleanup error handling functionality into its own file compiler/compile_errors.v
* compiler: implement p.error_with_token_index and p.warn_with_token_index and use them. Fix tests.
* tools/performance_compare: add a 'Source lines in compiler/' line
* MSVC does not have STDOUT_FILENO nor STDERR_FILENO ...
2019-09-29 20:37:39 +03:00
hazohelet
6d483c0a56
parser: float1 == float2 uses machine epsilon by default
2019-09-29 18:27:53 +03:00
joe-conigliaro
918edad525
crypto: make sum methods safe
2019-09-29 16:44:52 +03:00
Alexander Medvednikov
ee8ff39454
rename ModPath to v_modules_path; do not allow long variable names without _
2019-09-29 05:34:17 +03:00
Delyan Angelov
8b8cd13929
parser: add some infrastructure for more specific errors
...
* compiler: change s.line_nr in just one place, so that s.last_nl_pos will be updated in tandem too.
* Cleanup spurious spaces.
* Store ScannerPos info inside the cached tokens.
Use the stored information when errors are encountered.
* Fix #2079 ( cannot use type...in assignment ).
* do not store scannerpos per each token, instead rescan the source once on error to get the position.
* compiler: implement highlighting for errors. Use only line/col info stored in the cached tokens.
* fixing building on windows
* Split can_show_color to _nix and _win files.
2019-09-29 04:33:23 +03:00
Alexander Medvednikov
d68e31a863
fix os_win.v
2019-09-29 04:16:15 +03:00
Alexander Medvednikov
a52662fca0
do not allow duplicate methods; fix os_win.v; minor fixes and docs
2019-09-29 04:13:32 +03:00
Alexander Medvednikov
ed93185cb7
fix base64 test
2019-09-28 22:23:22 +03:00
sunnylcw
4b03abdaff
compiler: enable FreeBSD's cflags for freetype & glfw
2019-09-28 14:18:04 +03:00
Delyan Angelov
366c50674c
tooling: add tools/compare_v_performance_between_commits
...
easily compare v performance/size across commits.
* fix eprintln on linux (it now uses stderr, and flushes it).
* flag: cleaner usage information.
2019-09-28 14:17:16 +03:00
hazohelet
fd2d9c214c
f64: fix .eq()
2019-09-28 14:04:03 +03:00
joe-conigliaro
fbd414fd2f
crypto.md5: fix u64 modulus operation
2019-09-28 14:02:57 +03:00
Delyan Angelov
6bba4b1be0
string: document the tradeoffs for V strings
2019-09-28 13:54:30 +03:00
Alexander Medvednikov
60eb73adb4
array: single element array test
2019-09-28 13:52:38 +03:00
lutherwenxu
a4d2633a33
string: Properly null-terminate repeated string
2019-09-28 13:31:12 +03:00
Alexander Medvednikov
a5391c8882
string.repeat: re-write without a libc function call
2019-09-28 02:51:42 +03:00
Alvydas Vitkauskas
931b71c428
string: improve repeat()
2019-09-27 15:49:09 +03:00
vitalyster
a1e45e3247
darwin: use system ssl headers
2019-09-27 01:35:25 +03:00
Alexander Medvednikov
74bbf592d1
solaris: another fix
2019-09-27 00:30:41 +03:00
Alexander Medvednikov
fcf8f7fc93
solaris: small fix
2019-09-27 00:24:15 +03:00
Alexander Medvednikov
107e9107c8
solaris support
2019-09-27 00:23:27 +03:00
Don Alfons Nisnoni
fb4f14ba76
string: add repeat() method
2019-09-26 22:54:53 +03:00
vitalyster
9834ccfcd9
windows: Unicode and IPv6 http/sockets
...
cleanup schannel implementation (drop NT4.0 compatibility, use unicode strings, etc)
restore http tests
fix socket test: it did not throw before
2019-09-26 22:54:15 +03:00
joe-conigliaro
47da52b85b
crypto.[sha256/sha512]: remove extraneous casts & use rotations from math.bits
2019-09-26 16:38:12 +03:00
joe-conigliaro
c069525e8c
crypto.[md5/rc4/sha1]: remove extraneous casts
2019-09-26 14:57:31 +03:00
joe-conigliaro
f1f720cc78
pg: update optional return syntax
2019-09-26 14:23:29 +03:00
joe-conigliaro
896f978b94
crypto.aes: remove extraneous casts
2019-09-26 14:22:47 +03:00
joe-conigliaro
a5ea7e4304
math.bits: remove extraneous casts
2019-09-26 14:14:04 +03:00
Alexander Medvednikov
04e4018228
compiler: small fixes + some logic for freeing strings
2019-09-26 03:24:58 +03:00
Don Alfons Nisnoni
b1f0df0fd1
mysql: make compile
2019-09-26 03:18:26 +03:00
Delyan Angelov
33df5edc08
http: remove const started, use _ instead
2019-09-25 23:58:32 +03:00
Delyan Angelov
ab291902d8
compiler: remove special case for http__init_module call
...
tmp fix until `fn init()` is supported
2019-09-25 23:28:51 +03:00
Alexander Medvednikov
4c898ab6b3
strings: simplify repeat()
2019-09-25 22:08:51 +03:00
joe-conigliaro
d4bae356ba
compiler/vlib: add error for no new vars in loop ("_,_") & remove "." from errors
2019-09-25 17:59:50 +03:00
joe-conigliaro
8974aa4513
compiler/vlib: change `_ :=` to `_ =` and disable `_ :=`
2019-09-25 15:10:45 +03:00
Alexander Medvednikov
ab52b453cb
map: make .keys() pure
2019-09-25 05:56:10 +03:00
Alexander Medvednikov
f7d8fb0cf4
string: bring back old index() without an allocation
2019-09-23 23:34:42 +03:00
Alexander Medvednikov
d2d75f3824
parser: do not allow "int?", only "?int"
2019-09-23 23:17:06 +03:00
Alexander Medvednikov
8d52d877fb
compiler: free local_vars
2019-09-23 22:16:52 +03:00
Delyan Angelov
0e39df24d4
net: make socket.recv return the allocated buffer and the message length
2019-09-23 19:48:18 +03:00
Alexander Medvednikov
bf1ee28194
ui: Objective-C @interface support for Cocoa; minor clean-ups
2019-09-23 15:54:17 +03:00
Henrixounez
db44004d51
readline: utf8 compatibility
2019-09-23 13:43:24 +03:00
joe-conigliaro
23c84516e2
compiler: error on unused imports
2019-09-23 13:42:20 +03:00
Alexander Medvednikov
b4207e1be7
compiler: allow "u64_var == 0" without casting the const literal
2019-09-23 02:14:10 +03:00
joe-conigliaro
7aaf4012e4
math.bits: add missing pub to fn's
2019-09-23 00:51:03 +03:00
Delyan Angelov
1b91b31698
rand: add pcg32 and splitmix64 implementations
2019-09-23 00:50:22 +03:00
Delyan Angelov
7421781150
CI: split jobs into more steps; compiler: fix "v test v" with tcc
2019-09-22 17:24:15 +03:00
luoheng
f1d5f8e2bf
parser: allow `!` only with bools
2019-09-21 18:21:45 +03:00
Alexander Medvednikov
a232b215a7
double quotes for denoting strings
2019-09-21 17:18:02 +03:00
Michiel Vlootman
9b7ca248f0
similarity.v: update a comment
2019-09-21 14:59:06 +03:00
vitalyster
111007470e
array: malloc => calloc
2019-09-21 02:29:09 +03:00
Henrixounez
ffcff9ebd4
builtins: ustring comparisons, concatenation and other functions
2019-09-20 19:07:38 +03:00
joe-conigliaro
d80a3365c4
math.bits: add some more helpers, to be used in upcoming biginteger
2019-09-20 17:39:36 +03:00
vitalyster
a42b4e219c
net.socket: windows fixes and test
...
* added missing ai_canonname in addrinfo structure
* ai_canonname, ai_addr and ai_addrlen must be zeroed before getaddrinfo call
* write() must not be used on windows sockets
* added (Socket).get_port() function which is useful when socket was initialized with 0 (random) port
* tests is fixed, test server started listening on random port to avoid conflicts
2019-09-20 17:04:39 +03:00
vitalyster
f1bb25bfaf
windows: Unicode input in REPL
2019-09-20 17:03:13 +03:00
joe-conigliaro
486b3d2f92
crypto.rand: fix rand test from failing sometimes
2019-09-19 13:12:40 +03:00
Alexander Medvednikov
a94c1556ce
array: remove temporary repeat2()
2019-09-19 05:22:24 +03:00
Alexander Medvednikov
cb31eeec55
compiler: first step to require explicit definition of imported C fns
2019-09-19 05:16:25 +03:00
joe-conigliaro
b9cc6535f6
crypto.rand: rename read_u64 to int_u64 + clean up
2019-09-18 16:12:16 +03:00
joe-conigliaro
f187c35fb2
vlib: inline certain functions
2019-09-18 15:45:32 +03:00
Alexander Medvednikov
d1500511e6
"none" keyword for optionals + more memory fixes
2019-09-18 14:15:10 +03:00
joe-conigliaro
32ad33558d
crypto.rand: add PRNG function read_u64
2019-09-17 22:03:54 +03:00
Alexander Medvednikov
0a2f7a6ba7
fix tests
2019-09-17 13:37:25 +03:00
Alexander Medvednikov
1397d532c6
compiler: check if mutable receivers are modified
2019-09-17 13:10:43 +03:00
joe-conigliaro
9c9e6290a6
remove unnecessary mut argument ( #2016 )
2019-09-17 01:09:19 +03:00
Alexander Medvednikov
19b04d5427
math: fix const warnings
2019-09-16 22:49:18 +03:00
Nicolas Sauzede
ff009f1c4e
rand: rand_r(seed)
2019-09-16 22:21:21 +03:00
vitalyster
f7a0fefe27
glfw: printf -> println
2019-09-16 21:07:34 +03:00
Alexander Medvednikov
c76d09f9a5
make V.js compile
2019-09-16 18:31:13 +03:00
Delyan Angelov
7cf7215557
testing: always show benchmarks
2019-09-16 18:27:55 +03:00
hazohelet
9158ba4640
vlib: add Android checks to build V on Android
2019-09-16 18:23:11 +03:00
Delyan Angelov
a45895a3af
new benchmark module + make the tests use it
2019-09-16 17:29:06 +03:00
joe-conigliaro
075a8e5ccb
compiler: improve typo detection
2019-09-15 20:07:12 +03:00
Alexander Medvednikov
3db4d66824
operator | not defined on bool
2019-09-15 19:35:48 +03:00
Alexander Medvednikov
48c05b5a45
cgen: use *char in all functions with *char args to avoid warnings
2019-09-15 18:56:33 +03:00
Alexander Medvednikov
849bef987c
more C warnings fixed
2019-09-15 15:53:57 +03:00
Alexander Medvednikov
3e923871cf
compiler: use *char() cast in C functions to afix warnings
2019-09-15 15:19:18 +03:00
joe-conigliaro
f077fbd32d
vlib: change `[0;n]` to `[0].repeat(n)`
2019-09-15 12:26:05 +03:00
Henrixounez
602e472b8a
builtin: getchar for unicode characters
2019-09-15 04:41:24 +03:00
Henrixounez
04ff9ede9f
readline: allow writing without tty + small fixes
2019-09-15 04:33:31 +03:00
Alexander Medvednikov
5cc81b91cb
JavaSript backend (early stage)
2019-09-15 03:49:57 +03:00
Vitor Oliveira
1a099c9284
vlib: fix several typos
2019-09-14 23:54:14 +03:00
joe-conigliaro
81bf67ba4f
hash.crc32: change *Crc32 to &Crc32
2019-09-13 22:45:04 +03:00
joe-conigliaro
5aaa794519
compiler: clean up the typo check
2019-09-13 16:15:30 +03:00
Alexander Medvednikov
9dd86f6fb8
compiler: more memory logic + replace "cur_fn &Fn" with "cur_fn Fn"
2019-09-13 15:47:31 +03:00
joe-conigliaro
41734affb3
compiler: detect typos in function/variable/module names
2019-09-13 14:10:24 +03:00
iRedMail
92b634de7c
Fixes old syntax and make Row.vals mutable
...
- Replace `*` by `&` for C code
- Make `Row.vals` mutable. Otherwise line 56 will raise error.
2019-09-13 00:46:51 +03:00
Henrixounez
af60f9ead4
compiler: escapes quote on literals
2019-09-11 15:48:08 +03:00
Alexander Medvednikov
9853323157
array: make ".contains()" private, use "in" everywhere
2019-09-11 15:12:13 +03:00
Delyan Angelov
a53c69de38
os: use path separator more consistently
2019-09-11 01:08:23 +03:00
Alexander Medvednikov
7fc678c961
fix urllib_test.v
2019-09-09 14:21:18 +03:00
Alexander Medvednikov
00687de43b
memory: clean up all arrays in the V compiler
2019-09-09 13:55:47 +03:00
Alexander Medvednikov
735c78fc6d
fix bitfield.v
2019-09-09 02:38:15 +03:00
Alexander Medvednikov
a6ec6e23bc
bf: minor clean up
2019-09-09 02:31:43 +03:00
Alexander Medvednikov
31c9a2a744
fix bitfield_test.v
2019-09-08 17:55:27 +03:00
Alexander Medvednikov
ae866260c8
bf: rename to bitfield
2019-09-08 17:45:51 +03:00
Alexander Medvednikov
6dcdb224a1
bf: fix resize()
2019-09-08 16:10:59 +03:00
Alexander Medvednikov
dcc42c858b
glfw: GPU driver info
2019-09-08 15:54:16 +03:00
Alexander Medvednikov
76a89c832e
parser: small optimizations
2019-08-26 01:19:39 +03:00
Flavien CADET
c1f76aec3a
vweb: fix a typo
2019-09-06 20:30:20 +03:00
joe-conigliaro
79d4d56fe5
string: implement is_space in V & make trim_space use trim
2019-09-06 13:22:37 +03:00
Carlos Esquerdo Bernat
8a77d4482c
vweb: fix headers
2019-09-05 15:46:24 +03:00
Henrixounez
f83bc9528d
readline: added suspend handling and dont print special characters
2019-09-05 15:06:41 +03:00
Henrixounez
cc5470d068
readline: overwrite mode and eof fix
2019-09-05 02:02:04 +03:00
vitalyster
38d26c8080
Travis: run msvc tests
2019-09-03 20:15:08 +03:00
joe-conigliaro
b4d033ff54
compiler: generalize mod dag & use for sorting structs also
2019-09-03 19:11:21 +03:00
Delyan Angelov
db110759ab
vweb: fix warnings
2019-09-03 19:10:56 +03:00
joe-conigliaro
5dcfda0600
crypto.rand: improve test to actually check for difference in data
2019-09-03 16:10:26 +03:00
Delyan Angelov
c9a39dfdb5
compiler: build tetris executable on windows with both msvc and mingw gcc
2019-09-03 16:09:43 +03:00
Henrixounez
216f343f09
readline: history feature
2019-09-03 16:07:20 +03:00
Joe Conigliaro
1f67d9edd8
fix bugs breaking tests
2019-09-03 15:21:52 +03:00
Delyan Angelov
ecb661f719
tetris: fix &Foo instead of *Foo warnings.
2019-09-03 11:39:06 +03:00
Vitaly Takmazov
83d724fb70
print_backtrace: do not use printf directly
2019-09-03 11:09:55 +03:00
Henrixounez
510fb2a981
readline: add custom prompt feature
2019-09-02 20:22:33 +03:00
Delyan Angelov
93716ee944
crypto: add utility hexhash functions
2019-09-02 20:22:19 +03:00
Alexander Medvednikov
bb9eec8696
json: use &
2019-09-02 19:17:05 +03:00
Henrixounez
9b8de9b59c
readline: clear the screen on ctrl+l
2019-09-02 15:33:46 +03:00
Alexander Medvednikov
1c6d51f271
remove u8 and i32 from tests and examples
2019-09-02 15:02:25 +03:00
Alexander Medvednikov
718041194f
os: clean up
2019-09-02 13:57:00 +03:00
Henrixounez
33ae7520e7
readline: added suppr key to delete characters right of cursor
2019-09-02 13:36:04 +03:00
Alexander Medvednikov
0e2c41e0f9
replace *Foo with &Foo everywhere
2019-09-01 22:51:16 +03:00
Alexander Medvednikov
3bd7bcfac3
remove u8 and i32 aliases
2019-09-01 22:37:22 +03:00
Alexander Medvednikov
4edccce9a3
array: sort ints
2019-09-01 22:30:49 +03:00
Henrixounez
fe3639d547
readline: multiline wrapping for editing and cursor
2019-09-01 20:43:47 +03:00
Alexander Medvednikov
bfa6505636
compiler: replace &Type with Type
2019-09-01 14:05:03 +03:00
Alexander Medvednikov
961e778ed1
map_test.v: format + ref test
2019-09-01 14:05:03 +03:00
Alexander Medvednikov
af5b2e1b3c
glfw: make Pos fields public
2019-09-01 07:09:18 +03:00
Henrixounez
4abfb686ec
readline: moving cursor feature
2019-09-01 01:02:33 +03:00
Henrixounez
95b107cbc6
readline: reworked dispatch architecture for easier features add
2019-08-31 21:18:32 +03:00
Alexander Medvednikov
72363ada84
array: make .set() private + format
2019-08-31 02:35:05 +03:00
Henrixounez
a9a4032a11
readline: basic reading on linux
2019-08-31 00:54:53 +03:00
kawa-yoiko
4f0f99e663
parser: fix mutability with chained fields
2019-08-30 20:19:06 +03:00
Delyan Angelov
e3389e8ec1
log: add seconds to terminal output too.
2019-08-30 13:06:02 +03:00
Alexander Medvednikov
d5d1b74f90
time: do not include <unistd.h> on windows
2019-08-30 01:10:29 +03:00
Alexander Medvednikov
3c5087902d
fix msvc build
2019-08-30 01:06:10 +03:00
Alexander Medvednikov
2fe20cd092
compiler: fix struct order bug
2019-08-29 23:46:12 +03:00
Henrixounez
29e0396eca
compiler: adds handling of two variables for loop on string
2019-08-29 21:41:16 +03:00
joe-conigliaro
cd625b04eb
http: windows - make https requests work in threads
2019-08-29 12:33:20 +03:00
joe-conigliaro
32683ad6fd
sync: fix mutex on win & waitgroup (all os) update. fixes news_fetcher example on win ( #1776 )
2019-08-29 11:48:03 +03:00
Delyan Angelov
c92654a044
fix building v on alpine with musl libc
2019-08-28 19:26:18 +03:00
Vitaly Takmazov
5124eae47d
msvc: check exit code
2019-08-28 13:26:27 +03:00
Delyan Angelov
73c6bae480
print backtraces on panic on mac and linux
2019-08-27 23:29:13 +03:00
joe-conigliaro
02fc7e14cd
make trim use cutset like trim_right/trim_left
2019-08-27 22:53:32 +03:00
joe-conigliaro
3db50f724b
net.urllib: Update with latest changes from go lib
2019-08-27 22:44:41 +03:00
Alexander Medvednikov
ab0a78a498
fix sync_win.v
2019-08-27 00:46:27 +03:00
Alexander Medvednikov
d4b6b6c833
freetype: render all Unicode characters
2019-08-27 00:20:54 +03:00
Robin Martijn
5df31c16f7
json: fix #1751 ; support unsigned integers
2019-08-26 20:02:19 +03:00
joe-conigliaro
857cf00caf
builtin.string: make trim_left/right() behave correctly
2019-08-26 14:18:58 +03:00
Delyan Angelov
aa438c7c3f
os: fix exec() and get_raw_line(); fix Windows tests and examples
2019-08-26 13:51:48 +03:00
Swastik Baranwal
db525524ee
string: title() and small fixes
2019-08-26 13:32:53 +03:00
Robin Martijn
754b8082fb
time/vlib: fix day_of_week() with sakamoto's algorithm
2019-08-25 23:35:01 +03:00
joe-conigliaro
836cc32d78
http: allocate memory dynamically on Windows
2019-08-25 21:27:12 +03:00
Henrixounez
f22d5c5624
vlib: remove negative checks on unsigned ( #1728 )
2019-08-25 01:48:38 +03:00
Delyan Angelov
a62e6b127a
http: send headers and request data
2019-08-25 01:48:06 +03:00
Alexander Medvednikov
cd10890258
minor tcc fixes
2019-07-08 03:44:47 +02:00
Alexander Medvednikov
4c07df6a21
small webassembly fix
2019-08-24 03:09:23 +03:00
Alexander Medvednikov
031e7fe113
os: libproc.h on macos only
2019-08-24 02:53:11 +03:00
Alexander Medvednikov
7fd9827318
all: add missing includes
2019-08-24 02:48:47 +03:00
Alexander Medvednikov
d98c20466e
cc.v: build with "implicit-function-declaration" and fix declarations
...
required for the webassembly backend
2
2019-08-24 00:20:53 +03:00
Michiel Vlootman
817f5bf0a6
add test for [json:fieldname]
...
Added test also tests the output from json.encode to make sure the json:fieldname attribute is used.
2019-08-23 11:43:11 +03:00
Alexander Medvednikov
e39cb41d6b
json: custom json field names with "[json:field_name]"
2019-08-23 02:54:39 +03:00
Alexander Medvednikov
f61b14584a
remove "import const" everywhere
2019-08-23 00:09:03 +03:00
Alexander Medvednikov
dcfc9eb1a1
remove from the language
2019-08-22 23:19:31 +03:00
Alexander Medvednikov
2eb9440095
http: disable the tests for now
2019-08-22 22:48:31 +03:00
Alexander Medvednikov
eb5fcafa77
table: TypeCategory; freetype: remove C code; [typedef] C structs;
...
Objective-C interfaces
2019-08-22 22:18:55 +03:00
SewerynKaminski
c8da79d785
Fix terminal goto control sequence building
2019-08-22 20:10:54 +03:00
Henrixounez
780ddaf22b
compiler: handles printing of structures and arrays of structures
2019-08-22 14:34:33 +03:00
Danil-Lapirow
fe8145c697
json: add raw json test
2019-08-22 14:22:16 +03:00
Delyan Angelov
77b31de117
compiler: produce errors in C "filepath:line:column:" format
2019-08-22 14:15:11 +03:00
Henrixounez
9b3b22d6b3
compiler: allows compound assignment operators on array
2019-08-22 04:57:43 +03:00
Delyan Angelov
ffb6c6f5b4
net: add udp socket support and a simple udp server example.
2019-08-22 04:01:04 +03:00
Delyan Angelov
51818346df
http: support plain http protocol
2019-08-21 20:04:06 +03:00
Delyan Angelov
49899c649c
orm: fix select .. limit 1 . This case now returns an ?Row.
2019-08-20 16:33:14 +03:00
Carlos Esquerdo Bernat
cf23c289ec
tests: cleanup
2019-08-20 11:18:12 +03:00
Istvan
dee411149e
pg: config struct for connecting
2019-08-20 11:08:06 +03:00
Alexander Medvednikov
33e730b3fa
ui: users_gui example
2019-08-20 00:19:55 +03:00
Alexander Medvednikov
01586d6d67
ui: ui_lin.v and ui_win.v
2019-08-19 00:28:33 +03:00
Alexander Medvednikov
ac6c6e36c3
V UI readme: better wording
2019-08-19 00:14:39 +03:00
Alexander Medvednikov
7465ff97b3
V UI info
2019-08-19 00:12:35 +03:00
Alexander Medvednikov
f654c4af7a
ui README.md
2019-08-18 18:28:29 +03:00
Alexander Medvednikov
ac8a6d180c
ui license
2019-08-18 18:20:17 +03:00
Alexander Medvednikov
18d0a08ace
freetype: fix utf crash
2019-08-18 18:13:12 +03:00
Emily Hudson
d373b331fa
ompiler: MSVC related fixes and `v test v` for windows testing
...
* MSVC related fixes and v test v for windows testing
* If second stage crashes on windows goto error
* use os.exec instead of system so that the error can be printed
* use -debug for osx vid
* Fix some whitespace to trigger a rebuild
2019-08-18 17:25:33 +03:00
S-YOU
0066afe7fc
mysql module
2019-08-18 17:24:43 +03:00
Alexander Medvednikov
89b5a0fc25
ui: fix focus_app()
2019-08-18 17:01:31 +03:00
Alexander Medvednikov
56fbafe03a
cc(): fix -x objective-c; ui.focus_app()
2019-08-18 16:59:36 +03:00
Alexander Medvednikov
f9fb6f0be4
orm_test: remove pg import for now
2019-08-18 15:02:36 +03:00
joe-conigliaro
22348f2245
http: add vschannel_cleanup() back
2019-08-18 13:04:17 +03:00
Alexander Medvednikov
fe2d2bd2a3
fmt: remove trailing spaces
2019-08-17 22:21:43 +03:00
Alexander Medvednikov
8a1324c141
os: make exec() return ?Result with exit code and output
2019-08-17 21:11:40 +03:00
Alexander Medvednikov
60bf668281
string: fix trim_right
2019-08-17 20:07:40 +03:00
Joe Conigliaro
e5ebb83bd9
add test for writer
2019-08-17 17:43:43 +03:00
joe-conigliaro
547241c13c
http: make do() return errors instead of panic
2019-08-17 17:02:01 +03:00
Joe Conigliaro
1274cdf0af
path must start with /
2019-08-17 16:37:31 +03:00
Alexander Medvednikov
100bb7c54c
os: clean up windows functions
2019-08-17 16:17:43 +03:00
Alexander Medvednikov
7ed0438b04
os: remove PathSeparator hack now that we have v_win.c
2019-08-17 16:02:59 +03:00
joe-conigliaro
1ba701e036
encoding.csv: add write support
2019-08-17 15:51:20 +03:00
joe-conigliaro
56566ba3d0
http: follow redirects (openssl & schannel) + fix url params
2019-08-17 15:50:47 +03:00
Nicolas Sauzede
4760fea489
examples/tetris: use better unique colors, implement game over/pause
2019-08-17 02:56:09 +03:00
unknown-v
49205dcce3
examples: fix maps warnings
2019-08-17 02:55:11 +03:00
Alexander Medvednikov
be141d9c5f
os: Windows fixes
2019-08-17 02:09:36 +03:00
Alexander Medvednikov
94b900bd0a
map: allow array values
2019-08-16 23:28:47 +03:00
Alexander Medvednikov
b188ecf680
Makefile: re-write `make test` in V
2019-08-16 16:51:46 +03:00
Alexander Medvednikov
c156cef972
vweb: fix the test
2019-08-16 09:58:27 +03:00
Alexander Medvednikov
dc9cebe26c
orm fixes; glfw: remove C code
2019-08-16 09:10:03 +03:00
kambrium
a5af903362
Fixed typo
2019-08-16 09:02:09 +03:00
joe-conigliaro
7b48f7ac9e
encoding.csv module
2019-08-14 09:45:56 +03:00
Delyan Angelov
a0c8fa5bbc
http openssl: on linux, prefer newer openssl installations when available
2019-08-13 10:49:07 +03:00
Alexander Medvednikov
a11961b0d3
vweb: make mime_types a const
2019-08-13 01:04:26 +03:00
Alexander Medvednikov
bc563930f7
string: remove abs()
2019-08-12 21:16:01 +03:00
Alexander Medvednikov
ef2ab31e88
sql: only accept strings and ints for now
2019-08-12 21:07:03 +03:00
Alexander Medvednikov
15a42f1f35
array.clone()
2019-08-12 14:41:40 +03:00
joe-conigliaro
8a2714b35a
fix typo
2019-08-12 11:03:49 +03:00
Henrixounez
872aa536d8
compiler: unsigned number properly printed and converted to string
...
fix: array accessing now works with unsigned numbers
2019-08-12 09:15:53 +03:00
Alexander Medvednikov
8c3475b902
generate `.str()` for all arrays
2019-08-11 22:39:45 +03:00
Nick Treleaven
ea30ba4555
map: remove temporary fields _keys, key_i
2019-08-11 19:43:21 +02:00
Carlos Esquerdo Bernat
d526cfc205
vweb: fix V panic: array index out of range: 1/0
2019-08-11 14:07:22 +02:00
Delyan Angelov
2197c210e7
http: remove superfluous new line in stdout, when making a http request.
2019-08-11 13:15:29 +02:00
Alexander Medvednikov
8f8e0dfad7
V ORM
2019-08-10 13:35:29 +02:00
iRedMail
5a76255297
Allow extra http methods with form: PUT, PATCH
...
- Allow extra http methods with form: PUT, PATCH
- Rename `post_form` to `form`
2019-08-10 11:44:54 +02:00
Julian Schurhammer
1864e92ff4
parser: disallow statements after a return, branch check $if, $else, switch, and loops correctly
2019-08-10 10:26:42 +02:00
joe-conigliaro
a0b59783a2
vlib.http: fix http schannel & follow redirects & cleanup
2019-08-10 10:05:59 +02:00
Alexander Medvednikov
5a80d587d5
makefile: use latest v.c
2019-08-10 08:21:32 +02:00
Alexander Medvednikov
d4441e4353
freetype: clean up new_context()
2019-08-10 07:13:25 +02:00
Delyan Angelov
7d8b296943
freetype,gg: option to pass a custom font_path to freetype.new_context .
2019-08-10 00:10:26 +02:00
Vitaly Takmazov
6f03ed0b13
darwin: fix freetype include path for Homebrew and Macports
2019-08-10 00:09:15 +02:00
Nicolas Sauzede
efa540e883
examples: tetris: draw score
2019-08-09 13:03:29 +02:00
joe-conigliaro
d9a83481a5
http: initial windows schannel http support
2019-08-09 12:52:14 +02:00
Alexander Medvednikov
181a39d752
fix int_test.v
2019-08-09 10:21:21 +02:00
Alexander Medvednikov
ae0e3efb8e
scanner: experimental ≠ etc support
2019-08-09 09:32:51 +02:00
Alexander Medvednikov
fbc480fbed
ft: rename to freetype
2019-08-08 16:43:11 +02:00
Alexander Medvednikov
865eee2f6b
gg: remove draw_text()
2019-08-08 16:09:04 +02:00
Alexander Medvednikov
27fad0f19b
ft: clean up
2019-08-08 10:08:44 +02:00
Julian Schurhammer
61983a6799
parser: check that functions return in all if/else branches
2019-08-08 09:49:56 +02:00
Julian Schurhammer
28147c0930
os.exec: return ?string instead of string
2019-08-08 07:30:05 +02:00
dm1try
1c38661ff7
openssl: add Brew openssl path
...
closes #1509
2019-08-08 06:26:28 +02:00
Emily Hudson
802ff1d012
compiler: scoped defer + build tests with msvc
2019-08-07 17:51:21 +02:00
Marco Böttcher
c924a6cf00
flag: allow to define flags with abbreviation
...
* flag: allow to check the count of the free args to produce an error
* flag: allow to define flags with abbreviation
flags could be defined to use a single char as abbreviation like
'--output' or '-o'
'--help' or '-h'
2019-08-07 16:52:10 +02:00
Alexander Medvednikov
4b69d43f9f
fix examples
2019-08-07 14:16:10 +02:00
Alexander Medvednikov
b5d67f226f
openssl: use system headers on non-Windows systems
2019-08-07 14:09:15 +02:00
Joe Conigliaro
25d84f72a9
last mut fixes
2019-08-07 14:07:37 +02:00
Alexander Medvednikov
cebb6cd537
ft: minor fixes
2019-08-07 13:39:54 +02:00
Alexander Medvednikov
ff6e0df0a5
array: minor fixes
2019-08-07 13:39:54 +02:00
joe-conigliaro
511a3d3901
vlib.crypto+other: fix mut args
2019-08-07 13:37:07 +02:00
Alexander Medvednikov
818c4a14e5
compiler: fix a bug with mutable array args
2019-08-07 12:36:45 +02:00
joe-conigliaro
0bcc53c366
vlib: fix mutable args
2019-08-07 09:53:33 +02:00
Alexander Medvednikov
34e0b164eb
make function arguments immutable by default
2019-08-07 08:59:00 +02:00
Cody Ley-Han
06b8bd9382
Add a logger interface to the std modules
2019-08-07 08:06:53 +02:00
Alexander Medvednikov
52f473d1c7
all: fix immutable fn args
2019-08-07 05:28:00 +02:00
Vitaly Takmazov
8d35649d90
openssl_backend: add MacPorts libssl path
2019-08-07 04:28:15 +02:00
Delyan Angelov
7607b00952
http: chunked decoding support
2019-08-07 03:57:47 +02:00
Alexander Medvednikov
6bde860043
http test: not today
2019-08-06 17:31:48 +02:00
Alexander Medvednikov
ac335269b3
bring back the http test
2019-08-06 17:06:44 +02:00
Alexander Medvednikov
b7a6c761b3
openssl: make compile on Linux
2019-08-06 16:35:49 +02:00
joe-conigliaro
60d206c29d
http: use urllib.parse
2019-08-06 14:43:09 +02:00
Alexander Medvednikov
1b2e49be1c
http: disable the test until windows is fixed
2019-08-06 14:28:27 +02:00
Alexander Medvednikov
3316968266
http: only run the get test on linux/macos for now
2019-08-06 14:15:42 +02:00
Alexander Medvednikov
8b75f2125a
http: init_module() to init openssl once
2019-08-06 14:03:01 +02:00
Alexander Medvednikov
eece058f18
h1
2019-08-06 14:03:01 +02:00
Alexander Medvednikov
bea8f6d7e5
http: remove libcurl dependency; replace it with a simple OpenSSL backend
2019-08-06 13:32:09 +02:00
joe-conigliaro
69932758db
net.urllib: update enum / const style
2019-08-06 13:01:05 +02:00
Alexander Medvednikov
7a7b5040e2
http: fix response headers and status code; clean up ft and gg
2019-08-06 03:06:27 +02:00
Marco Böttcher
ff730b4eb0
flag: allow to check the count of the free args to produce an error
2019-08-06 01:56:42 +02:00
Vitaly Takmazov
43b81688f6
socket: WSACleanup should not be called on socket close
2019-08-06 01:50:45 +02:00
unknown-v
22eaceb17c
http_win: set status_code ,remove unused var
2019-08-05 09:59:07 +02:00
Joe Conigliaro
2fab73983b
add builtin import pass + use builder in map
2019-08-05 06:01:53 +02:00
Alexander Medvednikov
5ed338dc2e
bring back map.str()
2019-08-05 04:34:12 +02:00
Alexander Medvednikov
8d3617b3de
fix fn_test.v and urllib.v
2019-08-05 03:31:22 +02:00
Alexander Medvednikov
350e13679c
force `()` in complex bool expressions: `(a && b) || c` instead of `a && b || c`
2019-08-05 03:22:28 +02:00
Alexander Medvednikov
4bc1f73fd0
fix gg.v
2019-08-04 09:46:49 +02:00
Alexander Medvednikov
ee437de8d3
type name check fixes
2019-08-04 09:38:46 +02:00
Alexander Medvednikov
8bce5cb810
force snake_case in struct fields
2019-08-04 09:18:16 +02:00
Alexander Medvednikov
576192949d
fixed size array with const size: `numbers := [N]int`
2019-08-04 04:11:16 +02:00
Nicolas Sauzede
f306fbb2f0
net connect: fix error/return type
2019-08-04 01:46:55 +02:00
Alexander Medvednikov
43fb954234
os: fix executable on FreeBSD and older C compilers
2019-08-04 00:16:37 +02:00
Alexander Medvednikov
9eb385d9ee
Revert "remove pg from vlib"
...
This reverts commit 15c5f671f0
.
2019-08-04 00:11:56 +02:00
Alvydas Vitkauskas
331d6f98ee
string: fix bug and add tests for string.count
2019-08-03 22:24:03 +02:00
Delyan Angelov
93d27b0b9f
vweb assets: the assets cache files are now immutable after creation. ( #1454 )
2019-08-03 22:16:26 +10:00
joe-conigliaro
45e76609b0
vweb.assets: adds AssetManager for combining/minifying/caching css & js assets ( #1452 )
...
* start
* more work
* more
* more work
* update comments
* add back mut
* make minify faster
* add mut
* revert option size
* ret bool from public methods not ?bool for now
* update comments etc
* update comment
* dont return option for now
* clean up
2019-08-03 20:09:09 +10:00
Alexander Medvednikov
e446f988f7
clean up map initialization
2019-08-03 10:26:36 +02:00
Alexander Medvednikov
a5f5b52204
`map := { 'foo': 'bar' }` syntax
2019-08-03 10:20:04 +02:00
Joe Conigliaro
bfddb9a80f
make array.hex() use lowercase
2019-08-03 08:23:13 +02:00
Alexander Medvednikov
15c5f671f0
remove pg from vlib
2019-08-03 03:49:17 +02:00
Alvydas Vitkauskas
bfdce806c4
fix string.count
2019-08-03 03:41:15 +02:00
joe-conigliaro
d4c07d9b66
hash.crc32: modify sum methods to take []byte instead of string
2019-08-03 03:40:54 +02:00
Alexander Medvednikov
34a98e3df0
vweb fixes
2019-08-03 02:27:56 +02:00
Alexander Medvednikov
9e380e2886
vweb: clean up
2019-08-02 23:45:36 +02:00
Alexander Medvednikov
b2874f1200
vweb: fix get_cookie() and redirect()
2019-08-02 23:41:02 +02:00
joe-conigliaro
faf2f9920e
string.v: string.count(substr)
2019-08-02 23:30:22 +02:00
joe-conigliaro
9e76d8a638
net.urllib: fix values (used for query string/form data)
2019-08-02 23:28:55 +02:00
Vitaly Takmazov
910f350a26
string_test: fix randomly failed test
...
* memory should be initialized with zeros before creating string
* there is no string([]array) constructor, string(byteptr) does not count length correctly, using string(byteptr, len) to fix
2019-08-02 19:20:36 +02:00
Alexander Medvednikov
ed3f1d315b
vweb: remove favicon hack
2019-08-02 10:15:20 +00:00
Alexander Medvednikov
8990eb06ec
Revert "remove vlib/glfw (it's a vpm module now)"
...
This reverts commit cdfc4c8372
.
2019-08-02 11:33:49 +02:00
joe-conigliaro
7bf1c7f005
net.urllib: change confusing name of internal method
2019-08-02 08:52:37 +02:00
joe-conigliaro
2bdbc327d9
vlib.crypto: add last commit to help track changes. ( #1426 )
2019-08-02 06:37:19 +02:00
unknown-v
a27165f07e
add []u64.str()
2019-08-02 06:07:16 +02:00
joe-conigliaro
be0796ce14
urllib: fix error message
2019-08-02 06:00:34 +02:00
Alexander Medvednikov
81da1f1ab2
vweb: run app.init() once
2019-08-02 05:54:40 +02:00
Alexander Medvednikov
f81562ee7e
vweb: 404
2019-08-02 04:11:42 +02:00
joe-conigliaro
8369525d8a
net.urllib: fix unescape
2019-08-02 00:31:47 +02:00
Sylvio Tavares
0e798b4c51
time: fix rand()
2019-08-02 00:31:02 +02:00
Alexander Medvednikov
b57752e67e
vweb: parse request headers
2019-08-01 18:51:21 +02:00
Alexander Medvednikov
3580179602
vweb: fix actions with ?
2019-08-01 17:57:06 +02:00
Alexander Medvednikov
cdfc4c8372
remove vlib/glfw (it's a vpm module now)
2019-08-01 17:31:04 +02:00
Alexander Medvednikov
a7e464fee9
user modules + `v install` from vpm
2019-08-01 17:28:25 +02:00
joe-conigliaro
d3c89273e8
net.urllib module
2019-08-01 15:01:03 +02:00
vitalyster
0197f20d47
make_tests.bat: exit with error on failed test
2019-08-01 13:23:36 +02:00
Alexander Medvednikov
eb313ebb5b
option: increase the temporary limit
2019-08-01 01:19:45 +02:00
Alvydas Vitkauskas
cd49c2103b
os: fix read_lines for win/dos files on unix
2019-08-01 00:48:10 +02:00
unknown-v
b124539507
Update download_win.v
2019-07-31 23:22:05 +02:00
Alexander Medvednikov
0243f9b0e9
term: remove enable_term_color_win()
2019-07-31 23:19:27 +02:00
Alexander Medvednikov
2c7e0c0257
http: fix download_win.v
2019-07-31 23:03:38 +02:00
Alexander Medvednikov
8058bf3750
http_nix.v: remove remaining C code
2019-07-31 23:01:06 +02:00
Alexander Medvednikov
448aaa36f2
http: clean up http_win.v and remove all remaining C code
2019-07-31 22:54:55 +02:00
unknown-v
46154c25b5
Update http_win.v
2019-07-31 22:45:29 +02:00
Alexander Medvednikov
54d2f9921f
http: Windows fixes + clean up
2019-07-31 22:27:39 +02:00
Alexander Medvednikov
aac8503d83
http: use optionals (finally)
2019-07-31 22:15:24 +02:00
Alexander Medvednikov
d3d4ee6b39
http: replace escape() with escape_url()
2019-07-31 20:57:34 +02:00
Vitaly Takmazov
550e8cd0cb
http.escape and http.unescape for windows
2019-07-31 19:23:17 +02:00
Felix Scholz
12ecd0f3dc
term: allow more colors to be used (bright styled ansi, rgb and hex)
...
* introduce bright versions of standard ansi colors
* allow developer to colorize messages with rgb
* allow developer to colorize messages using hex
* fix broken formatting
2019-07-31 19:22:38 +02:00
vitalyster
37a0e6ebef
Travis: run tests for Windows ( #1403 )
2019-07-31 19:01:52 +02:00
Alvydas Vitkauskas
2e1da4b4bc
Merge pull request #1050 from avitkauskas/fix-read-lines
...
os: fix read_lines
2019-07-31 10:56:36 +02:00
Alexander Medvednikov
ddb4f45b02
another map bug fix + fix some warnings
2019-07-31 10:47:58 +02:00
jilio
fa24a0cec5
os: fix is_dir
2019-07-31 10:38:29 +02:00
Alexander Medvednikov
e592485395
map: test the new fix
2019-07-31 09:57:19 +02:00
Alexander Medvednikov
a80f32254e
map: fix delete()
2019-07-31 09:56:14 +02:00
vitalyster
375bc1352c
f64.eq()
...
fixes float comparison tests
2019-07-31 09:20:40 +02:00
Alexander Medvednikov
e0b45e33ea
string: fix a bug with split()
2019-07-31 07:26:22 +02:00
jilio
6294c7878e
vweb: recursive handle_static with mime types
2019-07-31 06:10:53 +02:00
Alexander Medvednikov
27d09ed514
http: make escape public on Windows
2019-07-31 04:00:43 +02:00
Alexander Medvednikov
8a7ddd102e
vweb: tmpl fixes
2019-07-31 04:00:43 +02:00
Alexander Medvednikov
95d76993c9
.div hack
2019-07-31 04:00:43 +02:00
Alexander Medvednikov
8bb41d2de5
vweb: print address of the app
2019-07-31 04:00:43 +02:00
joe-conigliaro
1202631fa6
crypto.rand module
2019-07-31 03:24:12 +02:00
Alexander Medvednikov
17e8c1d628
map.delete(key)
2019-07-30 21:27:31 +02:00
Alexander Medvednikov
ad8b105b2c
vweb example
2019-07-30 21:15:17 +02:00
Alexander Medvednikov
79be98d2fb
Revert "Support for the printf optimisation for windows and wide strings"
...
This reverts commit acd28fa495
.
2019-07-30 18:28:00 +02:00
Alexander Medvednikov
3e458a8801
vweb: small fixes
2019-07-30 18:27:52 +02:00
F1ssi0N
acd28fa495
Support for the printf optimisation for windows and wide strings
2019-07-30 18:04:19 +02:00
Alexander Medvednikov
548611bedc
vweb: serve static files and vweb.text()
2019-07-30 15:53:35 +02:00
joe-conigliaro
5e57d099d7
v panic debug information
2019-07-30 15:08:14 +02:00
Richard Warburton
07ed320110
sync: WaitGroup
2019-07-30 15:06:16 +02:00
Alexander Medvednikov
a6df3e51d2
vweb.json()
2019-07-30 05:13:44 +02:00
Vitaly Takmazov
468aac9750
glfw: add MacPorts library path
2019-07-30 03:49:12 +02:00
Vitaly Takmazov
a2d4d38e8a
pg: add Darwin flag for MacPorts installation path
2019-07-30 03:48:49 +02:00
Joe Conigliaro
cfe581e2ab
fix term
2019-07-30 03:15:46 +02:00
Alexander Medvednikov
69b6e682cb
pg: fix GCC compilation error
2019-07-30 00:28:35 +02:00
Alexander Medvednikov
5bb8416baf
update vweb readme
2019-07-29 19:46:26 +02:00
Delyan Angelov
4a1970a322
http: return ?string
2019-07-29 19:18:26 +02:00
Alexander Medvednikov
460b4ee39f
vweb documentation
2019-07-29 18:50:25 +02:00
Alexander Medvednikov
207bab5f79
generics, vweb, comptime codegen, etc
2019-07-29 18:24:48 +02:00
Mike 'Fuzzy' Partin
ff72d9104d
log: added timestamps
2019-07-29 16:34:22 +02:00
joe-conigliaro
d87030972e
crypto: use new copy & clone
2019-07-29 16:33:35 +02:00
Richard Warburton
6701c3b263
Fixes #1362
2019-07-29 16:32:39 +02:00
Vitalie Ciubotaru
4100cca613
bf: fix a bug in bf.resize() (var name coincides with function name)
2019-07-29 16:31:48 +02:00
Alvydas Vitkauskas
8484de86c7
fix #1353 os.get_line
2019-07-29 04:44:54 +02:00
joe-conigliaro
45029f8c86
term: move enable_term_color_win() to colors_win.v
2019-07-29 04:44:21 +02:00
joe-conigliaro
df06eee5e8
fn copy(dst, src) []byte
2019-07-28 17:19:59 +02:00
joe-conigliaro
c7edeb00a8
term: add better error detection on Windows
2019-07-28 17:19:03 +02:00
Delyan Angelov
9cd2d68505
Fix #1334 . Module glfw now imports gl.
2019-07-27 18:36:33 +02:00
joe-conigliaro
920ac3f92e
crypto.rc4 module
2019-07-26 16:48:49 +02:00
joe-conigliaro
ebf858b9ae
crypto: remove unnecessary casts and comments
2019-07-25 18:41:38 +02:00
Joe Conigliaro
655cad58b2
add note & fix typo
2019-07-25 18:13:29 +02:00
Alexander Medvednikov
20a885ff1d
[]byte.clone()
2019-07-25 18:07:25 +02:00
Alexander Medvednikov
d8b83bdd00
crypto: add Go's license
2019-07-25 18:07:25 +02:00
joe-conigliaro
61f3982ee8
crypto.aes module
2019-07-25 17:49:57 +02:00
Alexander Medvednikov
2ac579ca0a
wrap up the new mut check
2019-07-25 14:13:35 +02:00
Alexander Medvednikov
ceb0139329
fix tests
2019-07-25 14:06:26 +02:00
unknown-v
082098ab67
sync_win.v : Add a Missing Closing Bracket
2019-07-25 12:25:38 +02:00
Alexander Medvednikov
3a8cdadcf5
free strings
2019-07-25 01:22:45 +02:00
Alexander Medvednikov
299d41e3b9
os: fix a memory leak in File.write(string)
2019-07-24 22:47:06 +02:00
0x9ef
a3e9a36553
Fix returned hash sum type
2019-07-24 20:29:11 +02:00
F1ssi0N
ca70d1f8a3
os: Make windows allocations more consistent & LocalFree args_list
...
if max is 512 then allocate `max * sizeof(wchar_t)`
2019-07-24 19:10:06 +02:00
F1ssi0N
f8bc893972
Re-add the case for msvc now that it is a valid comp-time option
2019-07-24 18:14:44 +02:00
AtjonTV
99355ae8b2
os: Implement a read-all for STDIN
2019-07-24 18:14:13 +02:00
yep84
94a599d630
log: allow file logging
2019-07-24 17:50:29 +02:00
0x9ef
aea6a8075b
Windows mutex
2019-07-24 17:36:20 +02:00
Alexander Medvednikov
2306901e6e
os.flush_stdout()
2019-07-24 16:15:28 +02:00
Maciej Sopyło
58577f57c6
fix: segfault when using string.ustring_tmp()
2019-07-24 16:06:12 +02:00
Emily Hudson
32aae80a64
Windows: fix some heap corruptions, fix msvc not building with unicode flags, fix os.getwd, fix mscrazy using a less recent installation
2019-07-24 15:00:26 +02:00
Vitaly Takmazov
0bbefca875
Windows: unicode command line
2019-07-24 14:32:36 +02:00
Alexander Medvednikov
7f29928aec
examples: fix news_fetcher on Windows
2019-07-24 12:34:25 +02:00
vitalyster
fcb1f211e3
Windows Unicode I/O
2019-07-24 12:16:45 +02:00
Nick Treleaven
6eb8766e59
http.new_request: Don't ignore mutated variables url, data
2019-07-24 00:32:41 +02:00
Justice Suh
d72c859bf9
net: socket error handling
2019-07-24 00:31:39 +02:00
Alexander Medvednikov
2291e9fcfe
Revert "Windows Unicode support"
...
This reverts commit 8462e99bc5
.
2019-07-24 00:24:34 +02:00
d2verb
88758082d2
scanner.v: refactoring
2019-07-24 00:06:48 +02:00
vitalyster
8462e99bc5
Windows Unicode support
2019-07-23 23:40:24 +02:00
Emily Hudson
e25ea7f9dd
add MSVC C backend support; fix live code reloading on Windows; other Windows fixes
2019-07-23 23:23:13 +02:00
Alexander Medvednikov
527b9e13fa
`key in map` syntax
2019-07-23 23:00:09 +02:00
Vitalie Ciubotaru
bd95f5bf8f
bf: add basic documentation
2019-07-23 18:29:04 +02:00
TillCoyote
732099fa08
math: hypot()
2019-07-23 18:28:30 +02:00
Jonathan Vice
d69bac5565
glfw: fix typo
2019-07-23 18:27:53 +02:00
Archan Patkar
7b4c3ec618
math/complex: restructuring cmath as a submodule of math
2019-07-23 13:35:44 +02:00
unknown-v
981185e42f
Windows displays a NaN as -1.#IND
...
https://stackoverflow.com/a/347940
2019-07-23 00:29:47 +02:00
Alexander Medvednikov
a2a0b149b2
examples/graph: update the graph instantly; add a couple of graphs
2019-07-23 00:24:42 +02:00
Rendims
5375038d88
string: avoid double allocation in trim_space()
2019-07-23 00:13:00 +02:00
Alexander Medvednikov
390394b56b
string: make substr() copy the data, like in Java and C#; remove .cstr()
...
this makes managing memory used by strings much easier
V strings are now fully compatible with C strings
2019-07-22 17:03:45 +02:00
Alexander Medvednikov
23c5f88f3e
Revert "Windows Unicode I/O "
...
This reverts commit 3e005074a3
.
2019-07-21 17:29:40 +02:00
Alexander Medvednikov
9c9fe7029e
fix os.is_dir on Windows
2019-07-21 17:14:25 +02:00
Alexander Medvednikov
4d5336897e
array.slice(): bounds out of range check
2019-07-21 16:55:04 +02:00
Alexander Medvednikov
5d188130e5
fix memory free
2019-07-21 16:30:10 +02:00
Alexander Medvednikov
40c31f701f
free arrays when they are out of scope
...
main.v: update help
2019-07-21 14:42:31 +02:00
Alexander Medvednikov
a6e4720a4d
os: fix popen on Windows
2019-07-21 13:37:27 +02:00
vitalyster
3e005074a3
Windows Unicode I/O
2019-07-21 13:29:32 +02:00
Alexander Medvednikov
6e6f6bc387
free/malloc fixes
2019-07-21 12:36:21 +02:00
Alexander Medvednikov
975286302c
fix Tetris onkeydown
2019-07-21 11:56:43 +02:00
Alexander Medvednikov
c3c6648c57
string(bytes_array) cast
2019-07-20 22:03:38 +02:00
Alexander Medvednikov
7f512eaf72
examples/hot_code_reloading: graph builder improvements
2019-07-20 17:59:40 +02:00
Alexander Medvednikov
5c12d13b19
builtin: make string.add() private
2019-07-20 16:43:33 +02:00
Alexander Medvednikov
72159d4169
vlib/glm: fix glm_test.v
2019-07-20 16:39:09 +02:00
Alexander Medvednikov
769cda1d1f
simplify gg; remove forced OpenGL dependency; graph builder /w hot code reloading
2019-07-20 16:06:15 +02:00
Archan Patkar
760034b6b1
math/stats: added basic stats operations
2019-07-19 11:50:32 +02:00
0x9ef
d6ddfa124d
Fixed get_error_msg for *nix
...
* Fixed undefined: get_error_msg
2019-07-18 20:21:48 +02:00
joe-conigliaro
ea2412297d
crypto.sha512: change hardcoded u64's back to consts
2019-07-18 11:34:04 +02:00
joe-conigliaro
43070412f7
implement crypto.sha256 + some crypto cleanup
2019-07-18 10:50:05 +02:00
Vitalie Ciubotaru
c0911ea74b
bf: add reverse(), resize(), pos() and rotate()
2019-07-18 10:49:32 +02:00
Alexander Medvednikov
f5c8ee4742
string(buffer, len) cast
2019-07-18 04:50:44 +02:00
d2verb
92fbe56276
table: fix #1219
2019-07-18 04:32:49 +02:00
Alexander Medvednikov
c35adbea91
vfmt fixes
2019-07-17 21:00:39 +02:00
joe-conigliaro
8cd1f962d3
implement missing string to int type methods ( #1210 )
...
* implement missing string to int methods
* make number base auto detected
2019-07-17 20:11:14 +02:00
unknown-v
9d4b4df54f
net : fix error msg
...
from
os.hostname() cannot get the host name
to
net.hostname() cannot get the host name
2019-07-17 18:42:10 +02:00
joe-conigliaro
0ca58aba5e
Fix array.reverse() test
2019-07-17 18:35:40 +02:00
Joe Conigliaro
09fb000e67
fix
2019-07-17 18:21:39 +02:00
Alexander Medvednikov
251e32948e
fix Windows build: move hostname to net/
2019-07-17 13:50:58 +02:00
Alexander Medvednikov
b9f3f2d622
v script
2019-07-17 13:49:42 +02:00
joe-conigliaro
55b8a9acb9
crypto.sha512
2019-07-17 11:00:15 +02:00
Ned Palacios
9782d85709
enable render term color on windows by default
2019-07-17 02:52:17 +02:00
Yash Tripathi
982496ffce
math: faster factorial function
2019-07-17 00:03:51 +02:00
unknown-v
a743ecaff9
Windows : fix build
...
curl -Os https://raw.githubusercontent.com/vlang/vc/master/v.c
cc -std=gnu11 -w -o v v.c -lm
ccK5ic4o.o:v.c:(.text+0x6f62): undefined reference to `__imp_gethostname'
collect2.exe: error: ld returned 1 exit status
2019-07-17 00:02:31 +02:00
0x9ef
8ef3313d63
Fixed buf on hostname and added optional type.
...
Before submitting this PR, submit https://github.com/vlang/v/pull/1188
2019-07-17 00:02:07 +02:00
0x9ef
91a712fdf0
Check for max error code overflow
...
If do not check the overflow of the maximum error code (15841), this can lead to a program crash.
2019-07-17 00:01:42 +02:00
Rustem B
47b0221b82
os: hostname function
2019-07-16 19:23:47 +02:00
Joe Conigliaro
36442976c3
fix dir_exists on win
2019-07-16 18:31:49 +02:00
Ned Palacios
e638e47af5
`setenv` and `unsetenv` for windows fix
2019-07-16 17:18:08 +02:00
Alexander Medvednikov
f5fa43d2fa
os: fix executable() for all other BSDs
2019-07-16 16:37:59 +02:00
Alexander Medvednikov
674969665e
freebsd fix
2019-07-16 16:22:25 +02:00
Alexander Medvednikov
6fabd36732
freebsd: fix os.executable()
2019-07-16 16:19:55 +02:00
Ned Palacios
c3ad75191d
os: fix 'rm' and 'rmdir' implementation on windows
2019-07-16 15:55:51 +02:00
Alexander Medvednikov
8aa7da1be1
http_win: fix BUF_MAX
2019-07-16 15:29:27 +02:00
joe-conigliaro
9c586e7e92
crypto md5
2019-07-16 14:20:51 +02:00
Alexander Medvednikov
961ffb1868
Windows: temporary fix of dir_exists
2019-07-16 03:17:49 +02:00
Alexander Medvednikov
9c63cac54d
another Windows fix
2019-07-16 02:06:39 +02:00
Alexander Medvednikov
090cdcf3b9
os: fix PathSeparator on Windows
2019-07-16 01:59:28 +02:00
Alexander Medvednikov
cc06fe7ae6
os.dir(); fix vroot on Windows
2019-07-16 01:57:06 +02:00
Alexander Medvednikov
24a1e0e24a
better os.executable on macos
2019-07-15 23:25:11 +02:00
Justice Suh
b20d7ad086
builtin: Move free from array.v to builtin.v
2019-07-15 22:56:10 +02:00
Alexander Medvednikov
840e496a51
force snake_case in variable names
2019-07-15 22:53:33 +02:00
Archan Patkar
d58174e77f
math: moved fraction to math/fraction
2019-07-15 21:16:41 +02:00
0x9ef
9b5383341d
Add get_error_msg
2019-07-15 20:39:09 +02:00
Alexander Medvednikov
ecda895003
move zip C dependency to thirdparty/
2019-07-15 19:30:53 +02:00
Alexander Medvednikov
449fd372f9
*_nix.v support
2019-07-15 19:23:09 +02:00
Alexander Medvednikov
b36a9f7e55
glfw always on top
2019-07-15 19:23:09 +02:00
Paparoni Alvardo
f27777af56
Add wrapper of https://github.com/kuba--/zip
2019-07-15 18:55:00 +02:00
joe-conigliaro
a7529b7b05
sha1 implementation + helper funcs
2019-07-15 17:49:01 +02:00
Alexander Medvednikov
7c6f59afa6
FreeBSD support
2019-07-15 17:24:44 +02:00
Alexander Medvednikov
5a9116b697
http: make do() public
2019-07-15 16:06:23 +02:00
Nick Treleaven
d8df8474bc
http_win.do: Reject URL without '://'
...
Before it would accept 'domain/path' but set host = 'ath'.
2019-07-15 15:43:54 +02:00
Paparoni Alvardo
7058333f17
Add get_module_filename
2019-07-15 14:27:33 +02:00
Archan Patkar
4af58e0925
cmath: added arg, log and complex pow operations
2019-07-15 14:27:03 +02:00
d2verb
916b13b286
fix maps
2019-07-15 12:33:18 +02:00
Alexander Medvednikov
3b1964e9df
migrate remaining code to the new maps
2019-07-14 22:26:21 +02:00
Alexander Medvednikov
f7dbbf5810
re-write map.v and update the compiler
2019-07-14 22:08:17 +02:00
Vitalie Ciubotaru
9a3baf5609
bf: add setall(), clearall(), string() and str2bf()
2019-07-14 18:24:37 +02:00
Alexander Medvednikov
7fa1f423e2
fix time_test.v
2019-07-14 17:08:14 +02:00
joe-conigliaro
6c2e313155
add missing implementation of os.getexepath for mac
2019-07-14 16:50:24 +02:00
Alexander Medvednikov
6995cc0234
time: fix test_days_in_month()
2019-07-14 16:47:02 +02:00
nxshock
1ce295b683
time: days_in_month()
2019-07-14 16:43:57 +02:00
0x9ef
82ed0156c5
Fixed clang build for windows.
...
Fixed:
C:\Users\C182~1\AppData\Local\Temp\ccb5oFDP.o: In function `os__fork':
C:/Users/─рэ //.vlang//v2.exe.c:4831: undefined reference to `fork'
C:\Users\C182~1\AppData\Local\Temp\ccb5oFDP.o: In function `os__wait':
C:/Users/─рэ //.vlang//v2.exe.c:4840: undefined reference to `wait'
collect2.exe: error: ld returned 1 exit status
2019-07-14 12:38:03 +02:00
Justice Suh
436d7592c7
os: fork() and wait()
2019-07-14 10:22:41 +02:00
Justice Suh
5dfd5fa3e7
net: add windows socket support
2019-07-14 00:04:45 +02:00
d2verb
2cb12b4f4e
rand: change rand.seed() to receive seed value
2019-07-13 18:17:45 +02:00
Alexander Medvednikov
af7d49103b
json: Windows fix
2019-07-13 16:47:23 +02:00
joe-conigliaro
b4afa964fc
hash/crc32
2019-07-13 15:11:32 +02:00
Justice Suh
5d7bac2016
os: add flush method
2019-07-13 12:30:52 +02:00
unknown-v
3281e44e84
http_win : fix buf length
...
Line 157 : buf[nr_read] = 0
set the null character '\0'
2019-07-13 12:30:21 +02:00
Vitalie Ciubotaru
ef899b7c09
bf: add cmp(), join(), slice(), popcount() and hamming()
2019-07-12 20:46:37 +02:00
Koustav Chowdhury
2538a7e752
math : fix typos
2019-07-12 20:45:56 +02:00
Nick Treleaven
4c4e0c690c
Fix missing rename of pos -> hpos; move `s` next to use site
2019-07-12 20:43:42 +02:00
aguspiza
d0e7d0070d
fix travis windows user home
2019-07-12 20:35:01 +02:00
Alexander Medvednikov
5baff9beda
http: Windows fixes
2019-07-12 16:26:02 +02:00
Marco Böttcher
cb9fb66ccf
flag: added a simple command line parser
2019-07-12 15:47:27 +02:00
Archan Patkar
846d4e2210
cmath: Added Cot,Sec,Cosec support for complex
2019-07-12 12:56:21 +02:00
eulerkochy
7f4c3cda4d
reduce redundant code, add tests for reduce and gcd
2019-07-12 08:50:11 +02:00
Koustav Chowdhury
08866f1331
math : add error and gamma functions; sort all functions
2019-07-12 07:46:40 +02:00
joe-conigliaro
9a957ccc18
module aliasing & file import scope
2019-07-12 07:37:54 +02:00
Alexander Medvednikov
e246833daa
math.v note
2019-07-12 07:01:14 +02:00
Alexander Medvednikov
5b3295db94
remove # from gg and glm
2019-07-12 06:50:25 +02:00
Alexander Medvednikov
28d379dc7b
make glfw work on Windows
2019-07-12 05:04:27 +02:00
Alexander Medvednikov
f834644db4
make gg work on Windows; prebuild glad and cJSON; new ft module
2019-07-12 04:50:14 +02:00
eulerkochy
06e7354d18
change log2 implementation to use C.log2()
2019-07-11 20:42:51 +02:00
Archan Patkar
7701be2242
cmath: added inverse trig operations
2019-07-11 16:53:34 +02:00
Alexander Medvednikov
4a8ba9756f
disable u32 check for now
2019-07-10 22:05:50 +02:00
Alexander Medvednikov
e1a6453302
move Complex logic to cmath
...
It was causing problems with cross compiling for Linux, and it should be
a separate module anyway, just like in Go and Python.
2019-07-10 21:47:13 +02:00
Alexander Medvednikov
3d4cd0bbc0
check integer const overflow at compilation
2019-07-10 21:22:03 +02:00
Archan Patkar
69d2db0f1e
math: added complex trig operations
2019-07-10 20:50:43 +02:00
hazohelet
00ea112b66
complex, fraction: simplify and format source code
2019-07-10 13:51:48 +02:00
Alexander Medvednikov
28843a12c7
cache string.hash()
2019-07-10 10:00:12 +02:00
Alexander Medvednikov
e1ddac1590
utf8: remove unused UTF8_CHAR_LEN macro and add a simple utf8 test
2019-07-10 09:07:04 +02:00
Koustav Chowdhury
385f47c0cd
add abs for complex, add tests ( #1043 )
2019-07-09 21:12:51 +02:00
Vitalie Ciubotaru
c4fcfcec88
bf: add a module implementing operations with bit arrays ( #1049 )
2019-07-09 21:11:09 +02:00
Archan Patkar
3f916efb64
math: additional complex operations with tests
2019-07-09 20:51:46 +02:00
archanpatkar
f767218107
term: optimized move function
2019-07-07 22:48:20 +02:00
hazohelet
ccf733ac95
add angle func
2019-07-07 22:42:03 +02:00
eulerkochy
b40ad7c83f
save a byteptr memory, add tests
2019-07-07 22:37:17 +02:00
Alexander Medvednikov
de8dc4cddb
hot code reloading examples
2019-07-07 22:02:27 +02:00
joe-conigliaro
8a2d25247f
submodules
2019-07-07 01:22:47 +02:00
archanpatkar
818f8252f6
math: basic complex number support with tests
2019-07-07 01:16:49 +02:00
Alexander Medvednikov
d47e2f113f
Revert "make function arguments immutable"
...
This reverts commit 0f0ed8d716
.
2019-07-05 02:44:22 +02:00
Alexander Medvednikov
0f0ed8d716
make function arguments immutable
2019-07-05 00:24:13 +02:00
Alexander Medvednikov
74dbb1bce3
interface: fix function is private bug
2019-07-04 23:30:11 +02:00
Alexander Medvednikov
ebbea9f560
Revert "Added const INVALID_HANDLE_VALUE"
...
This reverts commit adef37f0f4
.
2019-07-04 22:39:20 +02:00
Alexander Medvednikov
92528205c1
minor fixes
2019-07-04 22:39:15 +02:00
0x9ef
adef37f0f4
Added const INVALID_HANDLE_VALUE
2019-07-04 22:26:07 +02:00
Justice Suh
9e4ae929a4
os: remove test file
2019-07-04 20:37:35 +02:00
joe-conigliaro
4e1afc148a
os: add term colors for Windows +minor fixes
2019-07-04 17:39:35 +02:00
archanpatkar
b745234a52
math:added basic tests for fraction and fixed typo
2019-07-04 17:38:36 +02:00
Alexander Medvednikov
300ed59598
do not allow `import builtin`
2019-07-04 17:36:53 +02:00
Alexander Medvednikov
8f10e37370
make << work with appending arrays; PostgreSQL driver
2019-07-04 17:31:14 +02:00
Cytown
fcf8909c75
add test for array_repeat with f32/f64
...
Signed-off-by: Cytown <cytown@gmail.com>
2019-07-04 13:01:51 +02:00
Joe Conigliaro
6b0e4a1d7b
fix ls() win not ret []string when cant open dir
2019-07-04 12:59:41 +02:00
Kriyszig
801e06318f
Factorial doesn't accept negative numbers
...
Previously factorial could accept negative number which isn't defined
2019-07-04 12:59:06 +02:00
Alexander Medvednikov
68ed555e91
V 0.1.12
2019-07-04 02:21:27 +02:00
joe-conigliaro
4d9c6197fd
initial Implementation of ls() for windows
2019-07-04 02:16:39 +02:00
Alexander Medvednikov
5d4d3b838b
StringsBuilder => strings.Builder; strings.repeat()
2019-07-03 22:18:46 +02:00
Archan Patkar
e35ff0533b
math: adopted i64 in Fraction and typo fixed
2019-07-03 21:50:54 +02:00
Alexander Medvednikov
8c36b9499d
make json work with new optionals
2019-07-03 21:50:06 +02:00
Alexander Medvednikov
dec0d961f5
os: clean up file functions, use optionals
2019-07-03 21:37:12 +02:00
archanpatkar
ffb4da791d
math: converted gcd and lcm to support i64
2019-07-03 19:40:44 +02:00
nxshock
b3e5c89ba9
time: add is_leap_year(year int)
2019-07-03 18:55:07 +02:00
pverghese
05ef1e0681
Removed unnecessary printf statement which corrupts output of http.get
2019-07-03 16:13:52 +02:00
archanpatkar
5e0ae9a429
net: added listen_backlog to enable custom backlog
2019-07-03 16:13:02 +02:00
archanpatkar
4037019bb7
Added support for Fractions
2019-07-03 16:07:59 +02:00
Alexander Medvednikov
7a3b5c20dd
time: fix empty unix
2019-07-03 01:27:38 +02:00
Justice Suh
5c42a31b9b
os: capture signals
2019-07-02 23:08:57 +02:00
Nick Treleaven
75da1e4240
Speed up and simplify string.replace
2019-07-02 21:51:40 +02:00
S-YOU
53e439bc99
setsockopt arg optvalue supposed to be ptr
2019-07-02 21:49:05 +02:00
Alexander Medvednikov
1bbf3a3a0c
make compiler
2019-07-02 21:45:51 +02:00
Alexander Medvednikov
a9b8bc067f
enums (`mode == .default_mode` syntax); fix `foo.bar[0].baz = val`
2019-07-02 21:39:26 +02:00
Justice Suh
859c8ffdb8
net: socket send and recv
2019-07-02 19:45:38 +02:00
RustemB
cd4fe63355
math: digits function; SqrtTau; extra spaces; re writed doc's to correct form; test for factorial
2019-07-02 19:19:02 +02:00
joe-conigliaro
4ed67fbe7e
implement get_line & get_raw_line for windows + REPL
2019-07-02 16:39:40 +02:00
lemoncmd
b9586a4017
builtin : fix buffer overflow and i64 issue with hex()
2019-07-02 15:18:56 +02:00
aguspiza
1cd95091f2
remove additional line from write_file
2019-07-01 23:46:06 +02:00
0x9ef
01d5f4d744
Change permission from 'r' to 'rb'
...
it is preferable to open the file in binary mode.
2019-07-01 23:41:32 +02:00
0x9ef
1ca20196d0
Created os_win.v and added `get_file_handle`
2019-07-01 17:57:55 +02:00
Alexander Medvednikov
95841a31d4
Revert "Added permission bits."
...
This reverts commit ae1313a35c
.
2019-07-01 17:46:28 +02:00
0x9ef
ae1313a35c
Added permission bits.
2019-07-01 17:37:01 +02:00
musou1500
668646f8f9
add `str` function for `rune`
2019-07-01 17:36:23 +02:00
Justice Suh
571410dd48
net: low level socket api
2019-07-01 17:31:38 +02:00
archanpatkar
235a7ecd7f
Restructured termcolor to term module
2019-07-01 17:26:23 +02:00
Antoine Folie
32e32cee5c
builtin : fix issue with int.hex
2019-07-01 17:20:14 +02:00
Alexander Medvednikov
61c7fa073b
fix compilation on Linux
2019-07-01 17:04:09 +02:00
Alexander Medvednikov
99a9a6572a
lots of Windows fixes and cross compilation for Windows
2019-07-01 16:51:17 +02:00
Alexander Medvednikov
52f93ae45f
fix http
2019-07-01 02:58:49 +02:00
Alexander Medvednikov
36d343e931
fix examples
2019-07-01 02:52:50 +02:00
0x9ef
87fb898864
Create types_win.v for Win API basic types.
2019-07-01 02:45:40 +02:00
Alexander Medvednikov
5936ab16c8
fix maps; use maps for storing functions; verify struct initialization
2019-07-01 02:24:39 +02:00
0x9ef
42a622c10f
Create const.v for Unix/Win32 API constants.
2019-06-30 21:59:56 +02:00
Alexander Medvednikov
ef5a91a87a
os: make write_bytes() public
2019-06-30 21:07:24 +02:00
Alexander Medvednikov
fde0e39abf
net: clean up
2019-06-30 21:00:22 +02:00
Alexander Medvednikov
6a1b16c72c
net: listen and accept
2019-06-30 20:57:25 +02:00
Alexander Medvednikov
9062338cb4
fix compilation
2019-06-30 20:48:26 +02:00
Alexander Medvednikov
61b51f6149
os.File clean up + socket.v (dial())
2019-06-30 20:28:50 +02:00
Alexander Medvednikov
386367c3d5
os: remove unused functions
2019-06-30 20:28:50 +02:00
paolopaoletto
e2a535c3ce
math.v: log_n, log2, exp2, cbrt and docs
2019-06-30 15:33:37 +02:00
Alexander Medvednikov
820aa3d3b3
os: remove os_mac.v and os_win.v, fix os.ls() on Windows
2019-06-30 14:57:27 +02:00
Alexander Medvednikov
b0c844415d
time.ticks() on Linux/macOS
2019-06-30 14:48:13 +02:00
Nick Treleaven
b79defd7a9
Pre-allocate KMP prefix for string.index
2019-06-30 13:58:46 +02:00
Alexander Medvednikov
388eb36ecb
map_test.v
2019-06-30 13:44:08 +02:00
chai2010
c5a0b3734a
base: refine test
2019-06-30 13:17:28 +02:00
Zaoqi
437b32fe78
fmt: `id []typ`
2019-06-30 13:06:45 +02:00
Zaoqi
8d13880cab
Update os.v
2019-06-30 13:05:41 +02:00
Alexander Medvednikov
d0c47f3f2a
array.v: make _push private
2019-06-29 23:56:55 +02:00
Alexander Medvednikov
a2b80d5b3d
REPL: `exit` to exit
2019-06-29 22:56:23 +02:00
Dinar Garipov
f4f1622528
vlib: update and cleanup tests + fix PR template
2019-06-29 22:49:57 +02:00
Alexander Medvednikov
18525922fd
Windows fixes
2019-06-29 21:26:39 +02:00
Rustem B
7eab373922
math: gcd and lcm functions
2019-06-29 17:24:55 +02:00
Alexander Medvednikov
3ddbe015b4
bring back examples
2019-06-29 12:34:32 +02:00
Alexander Medvednikov
4594d78bd6
move all vlib modules to vlib/
2019-06-29 12:00:31 +02:00