Delyan Angelov
481f103dc9
checker: make an error using non `pub` fns from other modules
2020-05-27 12:00:19 +03:00
Delyan Angelov
ebbf42dadb
tests: add a commented test_generic_fn_with_variadics, which worked with old v
2020-05-27 08:41:12 +03:00
Alexander Medvednikov
59711d9c55
generics: test `T{}`
2020-05-27 06:53:52 +02:00
Uwe Krüger
013fdb8a4b
checker: restrict numeric promotions to cases where no data is lost
2020-05-27 05:42:48 +02:00
Alexander Medvednikov
fc67046bac
checker: fix pub fn check
2020-05-27 03:38:21 +02:00
Alexander Medvednikov
7c9279c447
vfmt: make work with comptime
2020-05-27 03:33:40 +02:00
yuyi
23c0bb600c
scanner: fix vmod_file on windows
2020-05-27 03:32:39 +02:00
Alexander Medvednikov
6f7628cb67
parser: comptime call fixes
2020-05-27 03:20:25 +02:00
Ned Palacios
b02ec8cbf9
vfmt: fix raw string support
2020-05-27 03:10:47 +02:00
Delyan Angelov
3cfdd2a4cd
scanner: add support for @VMOD_FILE
2020-05-26 23:39:15 +03:00
yuyi
bb48851092
cgen: fix mutliple_assign swap
2020-05-26 18:00:51 +02:00
ka-weihe
64173c792f
builtin: map: fix memory leak
2020-05-26 17:59:52 +02:00
Larpon
31ba64b409
scanner: add support for `@STRUCT` compile time substitution
2020-05-26 15:35:11 +02:00
Julia K
285e04393e
cgen: fix missing space, remove unnecessary comment
2020-05-26 16:22:28 +03:00
pancake
8d10adf886
flag: fix a typo
2020-05-26 14:27:01 +02:00
Julia K
2b27072fac
compiler: new attributes, prelude customization
2020-05-26 14:12:18 +02:00
Emily Hudson
748b1d3381
cgen: use typ() for array type
2020-05-26 14:11:59 +02:00
Enzo Baldisserri
145b125155
websocket: make compile
2020-05-26 12:50:37 +02:00
Julia K
b4eadb9030
cmd/v: reimplement -path flag
2020-05-26 03:17:52 +02:00
Alexander Medvednikov
b4d88ee4af
checker: handle map.clone()
2020-05-26 02:09:26 +02:00
ka-weihe
8ea0c812a2
builtin: map.clone()
2020-05-26 01:52:06 +02:00
Alexander Medvednikov
0f92800921
cgen: string buffer fix
2020-05-26 00:04:13 +02:00
Delyan Angelov
b0cfd3fa67
parser: reimplement [flag] enum support. Add p.vcodegen too
2020-05-26 00:00:48 +03:00
Delyan Angelov
5825e467b8
checker: fix appending an .enum_val to a struct field of []Enum
2020-05-25 21:48:43 +03:00
spaceface777
f8b237433f
jsgen: fix array push operator
2020-05-25 19:34:42 +03:00
Larpon
09dc2eed82
scanner: add support for '@MOD'
2020-05-25 19:33:41 +03:00
Alexander Medvednikov
bc3e29e77b
cgen: fix a bug with tmp strings/free
2020-05-25 11:01:21 +00:00
Alexander Medvednikov
53a10eb312
cgen: use STR_TMP with -autofree
2020-05-25 12:46:18 +02:00
pancake
fe249cd1f8
pref: fix crash in 'v run' without arguments
2020-05-25 12:30:12 +02:00
Enzo Baldisserri
d22609051a
checker: CallExpr with handled optional returns plain type
2020-05-25 11:32:14 +02:00
yuyi
30ca08aaa3
parser: fix self-referenced error
2020-05-25 11:31:04 +02:00
Delyan Angelov
96808a0e2a
cgen: generalize _vcleanup of array/string consts + valgrind with tcc
2020-05-25 10:24:19 +03:00
Delyan Angelov
ae03aab03e
cgen: autofree math.bits and strconv.ftoa constants
2020-05-25 09:53:30 +03:00
Delyan Angelov
6683f98eba
cgen: add support for `-printfn _vcleanup` and `-printfn _vinit`
2020-05-25 09:47:00 +03:00
Alexander Medvednikov
656bc6b6c8
tests: valgrind: strings are freed now!
2020-05-25 06:23:50 +00:00
Alexander Medvednikov
f41e2c0a4b
string: make replace() clone for now; parser: comptime method
2020-05-25 08:17:36 +02:00
Alexander Medvednikov
1b36d7a037
cgen: handle c++ keyword
2020-05-25 05:46:58 +02:00
Alexander Medvednikov
99ce3d456b
jsgen: handle ComptimeCall
2020-05-25 05:38:47 +02:00
Alexander Medvednikov
1ef8eacd6e
checker/gen: more generics fixes; ComptimeCall
2020-05-25 05:32:36 +02:00
yuyi
ec7863d174
cgen: fix array_init of struct error
2020-05-25 04:45:16 +02:00
spaceface777
4189190bb8
jsgen: start implementing remaining `expr`s and `stmt`s
2020-05-24 22:49:01 +02:00
Uwe Krüger
fd4d28b7b6
tests: update for stricter type checks
2020-05-24 21:07:32 +02:00
penguindark
4e66c12557
strconv: minor fixes
2020-05-24 21:06:35 +02:00
Delyan Angelov
a0f8005352
checker: support tests/run/ folder, checks many warns/errors/output
2020-05-24 21:13:09 +03:00
Delyan Angelov
23e8c8ecda
checker: prevent infinite recursion on a:=b b:=a
2020-05-24 20:55:04 +03:00
yuyi
641fe5c864
checker: fix unresolved variables error on assignments
2020-05-24 20:33:53 +03:00
Delyan Angelov
1754ba19d8
live: cleanup live_test.v output, remove 1s delay
2020-05-24 18:38:43 +03:00
Delyan Angelov
d16485c29e
live: make live_test.v more robust
2020-05-24 17:45:53 +03:00
Uwe Krüger
7c4f2b535b
cgen: prepare any_in, any_float on v side
2020-05-24 15:26:43 +03:00
Delyan Angelov
ddcb5f7da3
gen: fix autogenerated print methods for vargs
2020-05-24 15:05:19 +03:00
Uwe Krüger
c4fbae3edc
cgen: add definitions of any_float and any_int types to cheader
2020-05-24 11:28:25 +02:00
Delyan Angelov
2adfbfc830
builtin: fix a bug in array_delete
2020-05-24 11:10:41 +03:00
Alexander Medvednikov
7963e48ca1
tests: valgrind: disable string.replace() test for now
2020-05-24 07:33:33 +00:00
Alexander Medvednikov
494f4fe986
tests: valgrind: string.replace()
2020-05-24 07:19:58 +00:00
Delyan Angelov
06540f0e91
net: fix warnings due to uppercase consts
2020-05-24 07:39:47 +03:00
Alexander Medvednikov
85d19dd253
cmd/v: error-limit
2020-05-24 04:47:51 +02:00
Alexander Medvednikov
67750c91d7
generics: lots of fixes
2020-05-24 04:43:03 +02:00
yuyi
4608898bcd
checker: fix multiple assign immutable error
2020-05-23 17:30:28 +02:00
Delyan Angelov
4271eb477c
cgen: disable C static fn attribute with -cg (improves backtraces)
2020-05-23 14:04:02 +03:00
Delyan Angelov
43eaec325d
fmt: add keep tests for struct init, fix warnings
2020-05-23 12:05:21 +03:00
Delyan Angelov
c690c2f984
vfmt: fix formatting of struct init without a module prefix
2020-05-23 11:56:06 +03:00
Delyan Angelov
70f0115e27
options: use panic_debug() for opt()? calls in main with -cg
2020-05-23 11:43:20 +03:00
Enzo Baldisserri
801bca1ef2
compiler: propagate optional
2020-05-23 08:51:15 +02:00
Delyan Angelov
5037d9de37
vlib: remove unused uiold
2020-05-23 09:19:41 +03:00
Delyan Angelov
4af4a8f2ff
fmt: fix 'import time as t', then using t.sleep_ms() .
2020-05-22 22:31:24 +03:00
Delyan Angelov
104359365f
examples: fix const name warnings due to gx.White, etc...
2020-05-22 20:00:46 +03:00
Delyan Angelov
acb58a1f98
parser: add p.peek_tok3, fix `for ...<a.len...`
2020-05-22 19:48:47 +03:00
yuyi
dda875a9c8
all: unify const names to snake_case
2020-05-22 17:36:09 +02:00
Delyan Angelov
aef751861d
cgen: fix `_ := []byte{init:1}`
2020-05-22 18:17:20 +03:00
Delyan Angelov
88fa935376
builtin: fix print mem leak on windows
2020-05-22 12:18:27 +03:00
Delyan Angelov
7a4f26ac4f
compiler: use -lpthread during building v itself.
2020-05-22 08:36:56 +03:00
penguindark
8bf290acf0
os: minor fixes
2020-05-22 06:21:11 +02:00
Alexander Medvednikov
edabd57e8a
parser: use parallel only on macos for now
2020-05-22 02:45:11 +02:00
Alexander Medvednikov
1e853072dc
parser: parallel parser, part 1
2020-05-22 02:23:14 +02:00
yuyi
2f171bf5d9
regex: uniform const field names to snake_case
2020-05-21 23:33:51 +02:00
Leah Lundqvist
f2ea8ca62c
jsgen: class -> factory
2020-05-21 22:36:06 +02:00
Enzo Baldisserri
1633675c11
gen: fix nested `or`
2020-05-21 22:35:43 +02:00
Alexander Medvednikov
d3ce6fd2e7
checker: check each generic function for each type
2020-05-21 21:51:52 +02:00
Ruofan XU
b2b0461218
scanner: fix err pos related to num literal
2020-05-21 18:43:57 +02:00
Alexander Medvednikov
227f039652
vfmt: handle generic fn calls
2020-05-21 18:36:25 +02:00
Alexander Medvednikov
87d8e70d6d
checker/table: generic fixes
2020-05-21 18:15:04 +02:00
Swastik Baranwal
bf7ab19d09
builder: do not allow importing 'builtin' module
2020-05-21 16:31:41 +02:00
Abdullah Atta
cb82ff618b
jsgen: proper jsdoc for namespace
2020-05-21 16:31:07 +02:00
Maddi Kopfermann
26cb9e4b9f
regex: fix spelling
2020-05-21 16:22:39 +03:00
Ruofan XU
aba09a7e4d
scanner: fix err pos related to num literals
2020-05-21 16:20:36 +03:00
Abdullah Atta
9888bacad5
v: make js hello world work
2020-05-21 16:17:16 +03:00
Louis Schmieder
a9999ee10d
glm: add uniform functions to gl, add matrix rotation to glm
2020-05-21 16:13:02 +03:00
yuyi
047e982318
gen: fix pointer_str_test.v
2020-05-21 15:09:35 +03:00
Alexander Medvednikov
abb15275f5
checker: update a `for in` error test
2020-05-21 06:06:11 +02:00
Alexander Medvednikov
45c9ccfc03
tests: simple<string> generics test
2020-05-21 04:56:36 +02:00
Alexander Medvednikov
ce1a181699
all: generic functions
2020-05-21 03:58:53 +02:00
yuyi
b8c028c727
parser: fix -5.str() precedence
2020-05-20 23:26:23 +02:00
Alexander Medvednikov
cd07429cc1
rand: fix compilation on linux
2020-05-20 21:14:17 +00:00
Alexander Medvednikov
ca81442fac
parser: fix a small bug with <
2020-05-20 21:47:03 +02:00
Alexander Medvednikov
82cedbaf62
fmt: fix `map[string][]string`; parser: allow `foo<int>(10)`
2020-05-20 21:40:24 +02:00
Delyan Angelov
e3a162db77
http: remove redundant consts in backend_nix.c.v
2020-05-20 21:40:29 +03:00
spaceface777
d4c1ea4bba
jsgen: fix jsdoc class namespacing bug
2020-05-20 20:34:37 +02:00
Don Alfons Nisnoni
10ad5332e8
parser: improve unused imports warning
2020-05-20 20:50:27 +03:00
Delyan Angelov
9d4fe88d09
compiler: support for -color/-nocolor option overrides
2020-05-20 20:34:04 +03:00
Alexander Medvednikov
80070516fd
http: set buffer size to 1536
2020-05-20 19:23:51 +02:00
Alexander Medvednikov
5d08c9d5a8
http: use bufsize const
2020-05-20 19:22:02 +02:00
Alexander Medvednikov
0d3f133436
parser: show location of a previously defined function
2020-05-20 17:27:37 +02:00
spaceface777
dd534fde57
jsgen: many fixes and updates
2020-05-20 16:57:42 +02:00
Louis Schmieder
a0ed1e2878
gl: add bind_attrib_location, also add gl cleanup functions
2020-05-20 16:24:37 +03:00
Tanel Liiv
c9f3a05ef6
checker: fix map/filter called with a plain fn argument
2020-05-20 15:28:33 +03:00
Delyan Angelov
6eee69f7bc
http: cleanup ssl_do, enhance the detection of chunked encoding
2020-05-20 14:32:59 +03:00
Delyan Angelov
ac396ea02f
http: cleanup backend_nix.c.v, fixes vpm too
2020-05-20 12:04:28 +03:00
Delyan Angelov
1c2376741b
http: fix redirects handling
2020-05-20 09:58:57 +03:00
Alexander Medvednikov
0a6d709ce2
http: fix recent changes; picoev: make compile
2020-05-20 05:37:03 +02:00
Sandro Martini
e137fbb1ea
array: more tests of initialization
2020-05-19 19:53:47 +02:00
yuyi
b3b86ea6d7
cgen: fix array_init has len but no init error
2020-05-19 18:33:24 +02:00
spaceface777
b10df252dc
all: replace `is_c`, `is_js` with `language`
2020-05-19 17:12:47 +02:00
yuyi
74686d0ec4
test: fix alias type errors and type_test.v
2020-05-19 15:04:51 +03:00
Ned Palacios
bd85d2fd2a
vfmt: make methods and structs public, to be used in vdoc
2020-05-19 14:19:37 +03:00
spaceface777
e07869af91
builder: fix false-positive import cycle warning
2020-05-19 14:17:03 +03:00
Delyan Angelov
931c846602
os: cleanup code duplication for os.create and os.open
2020-05-19 13:38:06 +03:00
Alexander Medvednikov
03525843a0
parser: do not allow calling private functions
2020-05-18 22:54:11 +02:00
Uwe Krüger
2635be511f
all: re-apply C++ support
2020-05-18 21:38:06 +02:00
Alexander Medvednikov
895cefe351
parser: do not allow defining methods on types from other modules
2020-05-18 20:55:22 +02:00
Alexander Medvednikov
57ea9bec30
tests: vfmt test for all vlib/v files
2020-05-18 18:43:07 +02:00
Tanel Liiv
2344c1a435
parser: fix to multi-expr
2020-05-18 18:33:27 +02:00
Alexander Medvednikov
b1bf5f0edc
vfmt: wrap long sum type definitions
2020-05-18 18:08:32 +02:00
Alexander Medvednikov
5c0c418818
ast: vfmt ast.v
2020-05-18 18:06:09 +02:00
Alexander Medvednikov
07a78b2843
Revert "all: C++ compiler support"
...
This reverts commit 9a237c3e82
.
2020-05-18 17:05:48 +02:00
Alexander Medvednikov
fc900baf9e
parser: a minor simplification
2020-05-18 17:02:29 +02:00
Alexander Medvednikov
90270d8791
vfmt: handle fixed size arrays
2020-05-18 16:52:12 +02:00
Uwe Krüger
9a237c3e82
all: C++ compiler support
2020-05-18 15:51:36 +02:00
Alexander Medvednikov
d325cdba0d
checker: fmt
2020-05-18 15:43:52 +02:00
Ned Palacios
d94d436273
table, vfmt: fix typ_to_string + some fixes to vfmt
2020-05-18 15:37:06 +02:00
Ned Palacios
ae3df002a2
vmod: add v.mod parser
2020-05-18 14:35:28 +02:00
Delyan Angelov
53ffee1e02
compiler: respect -showcc, -prod, -cg, when cross compiling for windows
2020-05-18 12:11:26 +03:00
Alexander Medvednikov
4f307c1a78
checker: requre & in struct init; http: chunked encoding
2020-05-18 05:11:00 +02:00
Leah Lundqvist
88e6d987d6
js: imports and anon_fn
2020-05-17 21:39:01 +02:00
Swastik Baranwal
d697b2848a
checker: more checks for in and !in
2020-05-17 17:03:32 +02:00
spaceface777
0def084932
checker: fix JS name regression
2020-05-17 16:23:09 +02:00
Delyan Angelov
627400723c
x64 gen: improve error handling for unknown nodes
2020-05-17 15:45:17 +03:00
iRedMail
4a70d2fe51
examples: fix 2 unused var warnings
2020-05-17 14:15:04 +02:00
yuyi
7f4cf08516
parser: check `(mut f Foo)` syntax
2020-05-17 13:51:18 +02:00
Hungry Blue Dev
b138cadbcb
math.fractions: add approximation.v and tests
2020-05-17 12:00:29 +03:00
yuyi
02fb393747
test: fix vrepl and cast test errors
2020-05-17 02:13:08 +02:00
Alexander Medvednikov
81148fa2bd
cmd/v: version: print only main repo hash
2020-05-16 23:52:06 +02:00
Alexander Medvednikov
8cbb9e1c1f
pref: move parse_define()
2020-05-16 22:57:55 +02:00
Alexander Medvednikov
5b15b8ccc9
checker: do not allow casting strings
2020-05-16 22:52:41 +02:00
Alexander Medvednikov
6e4ae5a5e6
checker: do not allow casting strings
2020-05-16 22:48:45 +02:00
asvvvad
e245e22875
os: make exists_in_system_path function public
2020-05-16 22:46:05 +02:00
Alexander Medvednikov
0845b2cfbe
builder: skip warnings; pref: move pref creation to pref.v
2020-05-16 22:45:38 +02:00
Delyan Angelov
62cb48d252
repl: treat middle imports in a more forgiving way
2020-05-16 22:03:28 +03:00
yuyi
6855996cca
cgen: fix array_init_with_default
2020-05-16 19:05:26 +02:00
penguindark
48659f4145
regex: small fixes, '-' minus to char classes, remove all C.printf
2020-05-16 17:11:13 +02:00
asvvvad
57dd26650c
os: add new function exists_in_system_path
2020-05-16 17:10:34 +02:00
yuyi
655d9bda94
cgen: remove extra `;` from if_expr
2020-05-16 17:09:57 +02:00
Enzo Baldisserri
f44a40eee0
checker: check incorrect names
2020-05-16 16:12:23 +02:00
Swastik Baranwal
37cf46d67a
checker: add more checks for modulo
2020-05-16 15:32:46 +02:00
yuyi
9b6ee8e77d
cgen: array_init_with_default
2020-05-16 15:21:37 +02:00
Delyan Angelov
789b75df92
cheaders: fix _MOV macro in the C case
2020-05-16 15:51:09 +03:00
Larpon
aa30549337
scanner: fill out '@FN' placeholder at compile time while scanning
2020-05-16 14:20:19 +02:00
Delyan Angelov
034bf46e4d
vlib: remove unused arrays module
2020-05-16 00:20:14 +03:00
Tanel Liiv
44502a3fb2
parser: return multi expr
2020-05-15 23:14:53 +02:00
Alexander Medvednikov
7caebc5781
doc: print available modules
2020-05-15 23:09:38 +02:00
Delyan Angelov
2dbb4c2ca7
live: cleanup
2020-05-15 23:51:40 +03:00
spaceface777
7c9bb44784
parser: allow JS methods with more than 1 dot
2020-05-15 22:26:51 +02:00
Swastik Baranwal
04744a5390
string: add trim_prefix and trim_suffix
2020-05-15 19:37:14 +02:00
Delyan Angelov
5d0cc0944e
parser: fix v_panic due to -pos in unused var warning (with tcc)
2020-05-15 20:11:27 +03:00
Alexander Medvednikov
c4ca6a9113
sokol: make examples compile
2020-05-15 18:55:29 +02:00
Delyan Angelov
465f0ddf60
regex: fix unused variable warnings in regex_test.v
2020-05-15 18:50:54 +03:00
spaceface777
8de6da01d6
jsgen: prefix JS keywords with 'v_'
2020-05-15 15:55:49 +02:00
yuyi
8500c8885c
cgen: fix optional_void error; handle `?` return type
2020-05-15 15:55:03 +02:00
Delyan Angelov
66cb61c242
builtin: cleanup by turning backtrace* fns to ordinary C. fns
2020-05-15 15:52:06 +03:00
Delyan Angelov
e18268e2f4
cheaders: use backtrace* stubs for both android & musl
2020-05-15 15:37:59 +03:00
Delyan Angelov
2c93deb884
builtin: bootstrap for backtrace functions cleanup
2020-05-15 15:08:42 +03:00
Dario Tarantini
f7605c397a
stbi: pub fields in Image
2020-05-15 13:15:04 +02:00
Enzo Baldisserri
d60233b618
cgen: simplify for in range
2020-05-14 22:22:32 +02:00
Alexander Medvednikov
0f251e9ede
checker: handle json.decode correctly
2020-05-14 18:30:30 +02:00
Alexander Medvednikov
f49ef39708
checker: handle unexpected `or` blocks
2020-05-14 18:19:40 +02:00
Alexander Medvednikov
e5d4786371
builder: simplify C error message
2020-05-14 18:14:38 +02:00
Enzo Baldisserri
fd0d833e33
gen: if expressions with multiple statements
2020-05-14 17:15:25 +02:00
wilesun
2a9cbbe157
cgen: handle sizeof(C.struct)
2020-05-14 17:14:59 +02:00
yuyi
6d0b791ac8
parser: warning about unused imports
2020-05-14 17:14:24 +02:00
Alexander Medvednikov
c3fe2135a4
math.fabs
2020-05-14 16:58:20 +02:00
Alexander Medvednikov
2369a5c8c6
cgen: handle `is` for interfaces
2020-05-14 16:56:45 +02:00
yuyi
70b76a8e31
builder: use verror for not found modules
2020-05-14 10:59:29 +03:00
Delyan Angelov
74005b4362
vfmt: handle file paths with spaces
2020-05-14 09:07:14 +03:00
Delyan Angelov
d830620651
compiler: restore support for --enable-globals flag, and add tests.
2020-05-14 08:43:12 +03:00
Alexander Medvednikov
1cb4aa7642
builder: cross compiling for linux, part 1
2020-05-14 04:15:04 +02:00
Alexander Medvednikov
e60e8f3b34
builder: bring back cross compilation for windows
2020-05-13 23:02:31 +02:00
Alexander Medvednikov
1bf26a35fa
array: rename default to init
2020-05-13 22:00:24 +02:00
Alexander Medvednikov
ab7bc760c6
cgen: new Option part 1
2020-05-13 21:59:08 +02:00
Sandro Martini
9895cab51c
tests: add more tests on interfaces
2020-05-13 20:30:18 +02:00
Enzo Baldisserri
1ca04e6113
checker: prevent interface instantiation
2020-05-13 19:20:15 +02:00
Hungry Blue Dev
3270545953
fraction: simplify variable names
2020-05-13 18:39:19 +02:00
yuyi
2e0b9de31c
parser: error for consts in fns
2020-05-13 18:39:02 +02:00
Enzo Baldisserri
172e4ff853
cgen: simplify if guard else clause
2020-05-13 18:38:00 +02:00
Alexander Medvednikov
33a9822548
parser/vfmt: handle array len and default in array init
2020-05-13 16:11:52 +02:00
Alexander Medvednikov
db5036686b
checker: make `type is private` warning an errror
2020-05-13 14:21:52 +02:00
yuyi
b1511ce995
parser: optimize no main file process
2020-05-13 14:02:04 +02:00
Tanel Liiv
af334e320c
cgen: dereference in one place and fix
2020-05-13 01:01:34 +02:00
Alexander Medvednikov
3e6f7d3eb6
freetype: minor fixes
2020-05-13 00:50:46 +02:00
Alexander Medvednikov
7a5a4df4c6
checker: handle `println()`
2020-05-12 19:38:46 +02:00
yuyi
7837abf6b0
parser: optimize stmt()
2020-05-12 17:18:25 +02:00
yuyi
99b31d8241
parser: unified way to handle struct and enum name check
2020-05-12 13:39:32 +02:00
Alexander Medvednikov
712fd384ee
parser: fix eval not used in match
2020-05-12 00:26:39 +02:00
Alexander Medvednikov
27d3800cc3
parser: bring back "evaluated but not used"
2020-05-12 00:19:45 +02:00
Alexander Medvednikov
1c8e14c77c
vfmt: handle comments in const blocks
2020-05-12 00:09:59 +02:00
yuyi
dea2658a80
checker: minor optimization in infix_expr
2020-05-11 23:50:13 +02:00
Kris Cherven
d359a7aefb
cgen: fix a goto error
2020-05-11 23:49:08 +02:00
JalonSolov
649a0140fd
x64: fix NUL at end of strings, and length
2020-05-11 16:50:36 +02:00
Alexander Medvednikov
e9177faf17
checker: allow `*x = y` only inside unsafe blocks
2020-05-11 16:05:59 +02:00
Alexander Medvednikov
2618b4fbd3
Revert "tests: add more tests on interfaces "
...
This reverts commit 538662d99a
.
2020-05-11 15:19:55 +02:00
Alexander Medvednikov
aacc35db19
pref: do not enable globals by default
2020-05-11 15:19:47 +02:00
Sandro Martini
538662d99a
tests: add more tests on interfaces
2020-05-11 15:13:03 +02:00
kdmult
ea8fcb3981
cgen: fix nested conditional statements
2020-05-11 15:11:48 +02:00
Alexey
6f2dcd819f
parser: force visibility of interface methods
2020-05-11 15:10:26 +02:00
Alexander Medvednikov
828f9af64c
checker: fmt
2020-05-11 14:38:25 +02:00
Alexander Medvednikov
8a6820d1b7
checker: revert fmt for now
2020-05-11 14:32:41 +02:00
Alexander Medvednikov
ce03761375
parser: fix mut args with the new syntax; checker: fmt
2020-05-11 14:16:20 +02:00
joe-conigliaro
2a40665919
ast/checker: cast no longer needed & use auto deref
2020-05-11 20:02:28 +10:00
Kris Cherven
8bc0c31f29
parser: add error for variables, that are evaluated, but not used
2020-05-11 11:13:36 +03:00
Kris Cherven
3a3d00ac72
checker: prevent C error on const mutation
2020-05-11 11:09:58 +03:00
Ned Palacios
38277d1dac
cgen: fix gen_str_for_struc when called on a struct with a pointer field
2020-05-11 11:08:21 +03:00
joe-conigliaro
1b3cd7abe0
cgen: fix sum type assign/push from in match branch & type mod
2020-05-11 16:59:55 +10:00
yuyi
64ba59590e
cgen: fix multiple assign error
2020-05-11 09:45:11 +03:00
joe-conigliaro
74cc2b2a68
table: add function return type check
2020-05-11 14:47:39 +10:00
Hungry Blue Dev
e52d35bf16
math.fraction: improve documentation, remove unnecessary mut modifiers
2020-05-11 07:20:55 +03:00
yuyi
14bba54ddc
vrepl: fix array_init error
...
* optimize print conditions
2020-05-11 07:15:08 +03:00
Fabien Salathe
c9c956fc8a
flag: fix a comment with an example
2020-05-10 22:27:14 +02:00
Alexey
71c2b26103
checker: fix checking uninitialized refs
2020-05-10 22:26:47 +02:00
Enzo Baldisserri
b09fd66aa2
gen: fix interface pointers
2020-05-10 21:16:22 +02:00
Louis Schmieder
40aad27a67
pg: remove `pg.`
2020-05-10 21:16:03 +02:00
Delyan Angelov
7c5905164e
glm: remove unused variable (prevents compiling ui with -prod)
2020-05-10 19:59:26 +03:00
Delyan Angelov
1bf13f8a09
v version: do more accurate current git hash detection, when not on a branch
2020-05-10 18:56:19 +03:00
Alexander Medvednikov
a2d120b583
cgen: fix reassignment of optionals
2020-05-10 17:41:33 +02:00
eyelash
1722171adc
compiler: color only the relevant part of the source code in error messages
2020-05-10 17:24:29 +02:00
Louis Schmieder
3ec2608d6b
glm: matrix multiplication; docs: toc
2020-05-10 16:49:29 +02:00
eyelash
72dfe11fa5
scanner: add a colon to error messages ( #4818 )
2020-05-10 16:29:15 +02:00
eyelash
f396f70ae7
repl: fix newline in error messages
2020-05-10 16:26:56 +02:00
Sumeet Chhetri
8dc0c5a699
cgen: C++ compiler support - Part 1
2020-05-10 16:26:21 +02:00
Hungry Blue Dev
8aba3eaa07
math.fractions: refactor and add more tests
2020-05-10 16:25:33 +02:00
joe-conigliaro
a73660a4c3
checker/cgen: simplify assigning fn to var
2020-05-11 00:13:30 +10:00
yuyi
0606d26ba7
csv: fix field multiple lines error
2020-05-10 14:19:26 +02:00
eyelash
eabc72d4fe
compiler: print underlines in the same color as the error
2020-05-10 12:27:46 +02:00
Ned Palacios
5f0ad0f562
compiler: add output mode for errors and warnings, support for `-silent` flag
2020-05-10 12:26:57 +03:00
Ned Palacios
01de1b6375
parser: fix JSON encode function name on invocation
2020-05-10 10:30:35 +03:00
Delyan Angelov
edb921f463
sync: mark sync.WaitGroup and sync.Mutex with [ref_only]
2020-05-10 08:58:54 +03:00
yuyi
7f69c2fbf5
parser: check `import` in the middle of file error
2020-05-10 07:47:20 +03:00
pancake
76eec7b6ea
readline: fix input echo issue on musl-based systems
2020-05-10 07:39:31 +03:00
yuyi
ba3a631954
parser: check for module statement errors
2020-05-10 02:28:56 +02:00
yuyi
85723e3799
checker: check for_in_map using one variable error
2020-05-10 02:28:43 +02:00
Alexander Medvednikov
10da871743
checker: handle unknown fields in fail_if_immutable
2020-05-10 02:07:15 +02:00
Alexander Medvednikov
09f6cd6a75
parser/checker: [ref_only] attribute
2020-05-09 23:45:41 +02:00
Alexander Medvednikov
3052266a40
live: make compile; pref: allow _linux.v etc
2020-05-09 20:31:50 +02:00
Alexander Medvednikov
d7c4630d33
checker: make pub field check an error
2020-05-09 18:34:07 +02:00
yuyi
53989daf9a
csv: fix empty line error
2020-05-09 17:35:03 +02:00
yuyi
3eeef6203e
checker: check for map_init key duplicate
2020-05-09 16:55:38 +02:00
Alexander Medvednikov
dea9ca2491
cgen: fix a big with &Foo{} init
2020-05-09 15:23:48 +02:00
Alexander Medvednikov
c64f8b0d1f
parser/checker: pub: struct fields
2020-05-09 15:16:48 +02:00
Delyan Angelov
809676a856
cgen: fix a sporadic segfault when giving -width in a string interpolation
2020-05-09 15:23:37 +03:00
yuyi
5f435fa1cc
parser: check enum name and field name errors
2020-05-09 12:43:10 +02:00
ka-weihe
85763d0539
map: faster get and exists
2020-05-09 12:42:01 +02:00
Tanel Liiv
7815a5495c
checker: handle multireturn fn calls as if/match last expressions
2020-05-08 22:49:45 +02:00
pancake
b5bf0eeac5
time: add .no_delimiter format option
2020-05-08 21:23:26 +03:00
Sandro Martini
910a8934cb
checker: fix typo on error message and related test
2020-05-08 21:21:47 +03:00
Delyan Angelov
4b347ff148
v self: force the subprocess to show colors
2020-05-08 19:04:24 +03:00
Alexander Medvednikov
6ea741e26e
Revert "tests: valgrind: enable string tests"
...
This reverts commit 1ea13ac7f3
.
2020-05-08 16:18:14 +02:00
Alexander Medvednikov
1ea13ac7f3
tests: valgrind: enable string tests
2020-05-08 13:18:27 +00:00
Ned Palacios
5b47ec49af
parser: add support for multiple struct field attributes
2020-05-08 15:09:42 +02:00
Alexander Medvednikov
c29f76454e
cgen: clone strings in struct_init()
2020-05-08 15:07:53 +02:00
yuyi
ef505e21ee
parser: check for import errors
2020-05-08 16:01:54 +03:00
Alexander Medvednikov
2f4fc86d58
checker: fix unknown var enum crash
2020-05-08 15:00:06 +02:00
Hungry Blue Dev
dbb3c2a4cd
math.fractions: improve `.equals()`
2020-05-08 15:39:23 +03:00
Delyan Angelov
e08566d571
compiler: do not exit early, when given -o x.c or -o x.js
2020-05-08 15:31:03 +03:00
Delyan Angelov
4c320e1512
profile: support for -profile-no-inline (with it, [inline] fns will not get profiled)
2020-05-08 15:01:59 +03:00
Alexander Medvednikov
847a1035a5
cgen: use tos_lit
2020-05-08 13:25:23 +02:00
Ned Palacios
13b11a4155
parser: fix struct attribute for array struct field
2020-05-08 13:09:40 +02:00
Delyan Angelov
fec7f0f0b9
cgen: fix auto .str() generation for []&T, and `fn (t &T) str() string{}`
2020-05-08 12:48:07 +03:00
yuyi
8866773f97
vrepl: fix import and comment error in the middle of other lines
2020-05-08 09:34:59 +03:00
Uwe Krüger
722a2c71c3
builtin: new_array: cap should not be less than len
2020-05-07 22:41:41 +02:00
Delyan Angelov
673acdbd00
tcc: fix selfcompilation with tcc. Temporarily disable crashing interface test
2020-05-07 20:59:45 +03:00
Delyan Angelov
7207a4970b
solaris: fix tests
2020-05-07 16:19:21 +00:00
Alexander Medvednikov
8cfb2ad6c9
string: is_lit
2020-05-07 18:05:57 +02:00
Alexander Medvednikov
ef387779bf
cgen: fix -autofree
2020-05-07 17:51:30 +02:00
Alexander Medvednikov
3c6e090ae3
ci: test broken -autofree
2020-05-07 17:45:00 +02:00
Alexander Medvednikov
be063d740b
ci: test self compilation with -autofree
2020-05-07 17:37:12 +02:00
yuyi
d096763f62
token: change 'STR' kind to 'string'
2020-05-07 16:26:22 +02:00
Tanel Liiv
d0afa748ff
cgen: optional multiple return values
2020-05-07 15:36:04 +02:00
Alexander Medvednikov
12221fb999
cgen: fix msvc struct init
2020-05-07 13:11:24 +02:00
Alexander Medvednikov
6ff93f270c
cgen: simplify struct_init()
2020-05-07 13:00:42 +02:00
yuyi
78efe72c4c
checker: optimize check string cast error
2020-05-07 12:34:06 +02:00
Don Alfons Nisnoni
0a930f9862
bitfield: rename functions, getsize => get_size, etc.
2020-05-07 11:21:14 +03:00
Enzo Baldisserri
0f8ed84333
checker: verify interface is not used as receiver
2020-05-07 11:14:51 +03:00
Major Taylor
7d32476841
math: extract platform specific wrapper functions to math.c.v and math.js.v
2020-05-07 08:47:24 +03:00
yuyi
2f52106253
parser: use .next instead of .check, when a token is already known
2020-05-07 07:51:36 +03:00
Uwe Krüger
59aa31cee5
cgen: string interpolation: optimize away some partial strings of 0 length
2020-05-07 04:34:18 +02:00
wilesun
19390871e9
json: handle external types
2020-05-07 04:33:19 +02:00
yuyi
98a1b2782b
parser: simplify import
2020-05-07 04:32:29 +02:00
Delyan Angelov
e33805b2b3
json.decode: fix expressions in the second argument, also fixes news_fetcher.v
2020-05-06 21:44:50 +03:00
Tanel Liiv
b5a1544bf8
parser: allow re-assigning fns to variables
2020-05-06 20:09:29 +02:00
Delyan Angelov
f638caef39
compiler: v -autofree can now compile itself
2020-05-06 19:03:51 +03:00
Delyan Angelov
88ef0a75e2
ci: pass V_CI_MUSL=1 on musl CI jobs
2020-05-06 15:10:47 +03:00
Alexander Medvednikov
8d2a4d2436
clipboard: make compile on linux
2020-05-06 12:00:52 +00:00
Alexander Medvednikov
207324d15b
strings.builder: remove unused var; clipboard: linux fixes
2020-05-06 11:44:08 +00:00
Alexander Medvednikov
25db5e96a3
strings.builder: fix a memory leak
2020-05-06 11:12:00 +00:00
Don Alfons Nisnoni
e87289f24d
Fix typo on checker
2020-05-06 13:57:40 +03:00
Alexander Medvednikov
f80876497e
fmt: use the new `mut` syntax in args
2020-05-06 12:43:46 +02:00
Alexander Medvednikov
b4c93349e8
checker: fix interface name check
2020-05-06 12:32:44 +02:00
Alexander Medvednikov
cc66eb1194
parser/checker: check capital letters in interface names/methods
2020-05-06 12:26:00 +02:00
Alexander Medvednikov
99cf520bd4
parser: `mut x Type` syntax for args
2020-05-06 12:13:22 +02:00
yuyi
51f3f31a4e
checker: check string(1) cast error
2020-05-06 12:05:24 +02:00
Don Alfons Nisnoni
5bd3045498
mysql: Using `int.str()` instead of `string(int)`
2020-05-06 12:53:47 +03:00
Enzo Baldisserri
215657e16a
checker: check interface implementation
2020-05-06 11:29:37 +02:00
yuyi
b627bb933c
message: use uniform message reference format
2020-05-06 09:10:40 +03:00
yuyi
c653977c15
cgen: fix struct with map field str() error
2020-05-06 09:08:48 +03:00
Alexander Medvednikov
67351c74c8
V 0.1.27
2020-05-06 02:26:43 +02:00
Don Alfons Nisnoni
67a50b5b34
mysql: simplify `Result.maps`
2020-05-06 00:10:10 +02:00
Enzo Baldisserri
c1f224640f
checker: verify that there is a main module
2020-05-06 00:09:46 +02:00
Alexander Medvednikov
25b536d03f
cgen: str: do not free "true"/"false" literals
2020-05-05 23:25:14 +02:00
Don Alfons Nisnoni
8fbbf488ab
darwin: fix `if ()` warning
2020-05-05 20:07:43 +02:00
Alexander Medvednikov
473ffb5489
builtin: fix a leak in array_str
2020-05-05 18:04:43 +00:00
Sandro Martini
50351eded8
tests: interface: minor fixes
2020-05-05 19:56:11 +02:00
Alexander Medvednikov
fd0f8d06f8
tests: valgrind: use correct flag
2020-05-05 17:55:11 +00:00
Delyan Angelov
9e715b8701
cgen: use c_name() while generating code for `or {}`
2020-05-05 19:28:25 +03:00
Alexander Medvednikov
ff88906e9a
cgen: add `new` to reserved words
2020-05-05 16:50:59 +02:00
Delyan Angelov
ddb5a8e6e4
time: add specialized vpc_now_darwin to fix -os cross
2020-05-05 17:31:21 +03:00
Sandro Martini
dd2a1455dc
tests: add another function to the Animal interface
2020-05-05 16:27:05 +02:00
Tanel Liiv
b16281d6e4
cgen: pass around functions
2020-05-05 16:21:21 +02:00
Alexander Medvednikov
7e71799980
checker: check `none` properly
2020-05-05 15:29:52 +02:00
Alexander Medvednikov
a0ca68ce3f
checker: do not allow `string(int)`
2020-05-05 15:26:42 +02:00
Alexander Medvednikov
c5d295c378
fmt: move struct init logic to a separate fn
2020-05-05 15:06:51 +02:00
Alexander Medvednikov
148661ead6
json: wrap up: encode_array()
2020-05-05 14:54:12 +02:00
Alexander Medvednikov
b3d7b0205a
json: handle field attributes
2020-05-05 14:41:27 +02:00
Delyan Angelov
a3bc32f3e0
builder: use time.new_stopwatch instead of benchmark.new_benchmark (reduces exe size)
2020-05-05 15:31:38 +03:00
Alexander Medvednikov
ee92060d4d
json: decode_array fix
2020-05-05 14:19:31 +02:00
Alexander Medvednikov
ef6c418eb6
json: decode arrays
2020-05-05 13:23:44 +02:00
Steve Phillips
84fc587ec2
cgen: use a temp var in map()
2020-05-05 10:29:23 +02:00
yuyi
6aca3be474
cgen: fix []map[string]string.str() error
2020-05-05 08:46:19 +03:00
Ned Palacios
507e457c0a
builtin: add parenthesis around frame_addr as a workaround
2020-05-05 08:35:26 +03:00
Delyan Angelov
f9fe5b60a7
v doc: skip _x.c.v when not on x, i.e. filter files like v itself
2020-05-05 08:08:03 +03:00
Alexander Medvednikov
621cb7b914
parser: short struct init syntax
2020-05-05 02:12:51 +02:00
Uwe Krüger
a4b6c3fa5d
cgen: hex representation of signed and pointers
2020-05-05 00:24:33 +02:00
Steve Phillips
081338b8bf
checker.v: suggest []Type{}, not []Type
2020-05-05 00:20:32 +02:00
Delyan Angelov
1c945faa15
cgen: fix _to_Interface_INAME conversion fns generation
2020-05-05 00:01:54 +03:00
Delyan Angelov
b5fda6e410
cgen: skip interface outside methods, while generating _interface_methods struct
2020-05-04 22:56:58 +03:00
Alexander Medvednikov
32a7bd3a48
parser/checker: do not allow using private types from other modules
2020-05-04 21:56:41 +02:00
Alexander Medvednikov
9aa1a65489
checker: check match condition
2020-05-04 21:03:18 +02:00
Alexander Medvednikov
9823d80e0c
json: minor fixes + bring back the test
2020-05-04 20:43:22 +02:00
Delyan Angelov
6e1825b417
cgen: prefix with v_ keyword C fn args too
2020-05-04 19:55:21 +03:00
joe-conigliaro
c9798d3918
table: fix check for fn with no args
2020-05-05 02:44:10 +10:00
joe-conigliaro
2bb995274e
table: make table.check ret false & update fn args check
2020-05-05 02:34:11 +10:00
Delyan Angelov
d7e7113047
cgen: fix `for char in nums {}`
2020-05-04 18:57:33 +03:00
joe-conigliaro
b2157388d9
checker: check method args
2020-05-05 01:32:40 +10:00
Delyan Angelov
36bf99ed5a
parser: remove forgotten ----- line
2020-05-04 18:28:55 +03:00
Delyan Angelov
d30eefc3be
fmt: improve handling of map[k]v and []map[k]v types
2020-05-04 18:27:07 +03:00
Alexander Medvednikov
fd8a194df0
json: wrap up decode()
2020-05-04 16:46:39 +02:00
Delyan Angelov
5eb71c4a13
fmt: initial support for -debug
2020-05-04 17:27:41 +03:00
Don Alfons Nisnoni
23df9b052e
mysql: update code & add a feature to get value as map
2020-05-04 14:58:24 +02:00
ka-weihe
f27fd63f8c
builtin: map: one voidptr for all values
2020-05-04 14:56:19 +02:00
Enzo Baldisserri
8fd69e845f
cgen: fix using pointer as interface receiver
2020-05-04 14:21:03 +02:00
Delyan Angelov
0e241162d9
panic: distinguish between builtin and main modules
2020-05-04 14:51:30 +03:00
Delyan Angelov
cdf70c070b
tests: add panic_with_cg.vv/.out
2020-05-04 14:34:51 +03:00
joe-conigliaro
57903247e3
parser: add back struct field removed by accident
2020-05-04 21:27:54 +10:00
yuyi
90fc23ccfb
checker: fix array init []type{cap: x.len} error
2020-05-04 13:22:09 +02:00
Uwe Krüger
f831910c5c
utf: fix string length calculation for combining characters
2020-05-04 13:21:11 +02:00
ka-weihe
a72f3ed0c7
builtin: voidptr.str() and byteptr.str()
2020-05-04 13:20:18 +02:00
joe-conigliaro
d75f286230
parser: store FnDecl body position and use for scope
2020-05-04 20:31:34 +10:00
joe-conigliaro
4571a5eb83
gen: use middle of fn pos to load correct scope for free
2020-05-04 20:08:37 +10:00
yuyi
c112b3aec5
tests: fix cleanup of compiler_test.v on windows
2020-05-04 11:33:54 +02:00
Delyan Angelov
068da2ea0f
builtin: fix warning about unused skipframes
2020-05-04 12:05:08 +03:00
Alexander Medvednikov
eca24c5d11
tests: interface: rename Speaker to Animal
2020-05-04 10:58:42 +02:00
Delyan Angelov
acd80f052b
tests: improve diagnostic output on failure
2020-05-04 11:21:25 +03:00
yuyi
e0e064ff08
scanner: fix string slash line breaks error
2020-05-04 10:19:23 +02:00
yuyi
cd5dccd855
gen: fix compilter_test.v error on windows
2020-05-04 10:09:49 +02:00
Enzo Baldisserri
4b3ce79e84
interface: support arguments in methods and simplify
2020-05-04 00:14:59 +02:00
Delyan Angelov
71a92eb87b
tests: fix CI failing for builtin __as_cast
2020-05-03 22:25:38 +03:00
Delyan Angelov
242670a33d
compiler: add support for panic_debug with -cg
2020-05-03 22:13:59 +03:00
Delyan Angelov
0b750a234f
repl: fix for single lines ending with // comment
2020-05-03 20:48:46 +03:00
Delyan Angelov
845ffb59a6
live: use mostly pure V code for reloading, eases customization
2020-05-03 20:22:24 +03:00
Uwe Krüger
4a096bd133
parser: fix string interpolation for default conversion
2020-05-03 18:12:59 +02:00
Alexander Medvednikov
de749e9d3b
parser/cgen: interface <<; `any` type
2020-05-03 18:08:45 +02:00
Alexander Medvednikov
2a016d03ac
checker: use `[]int` instead of `array_int` in errors
2020-05-03 16:49:05 +02:00
Alexander Medvednikov
2a5421133d
clipboard: Linux fixes
2020-05-03 16:39:26 +02:00
Alexander Medvednikov
361fad9231
tests: disable valgrind test until fn scopes are fixed
2020-05-03 16:29:15 +02:00
Alexander Medvednikov
16fe8103ba
tests: bring back valgrind test
2020-05-03 13:12:05 +02:00
joe-conigliaro
8df7637853
checker: dont re match/cast with position() when already cast to sum type
2020-05-03 14:22:41 +10:00
Delyan Angelov
7e4e3abc2c
compiler: circuimvent the dependency cycle v.ast <-> v.table
2020-05-02 22:52:10 +03:00
Delyan Angelov
dbbfb04e7c
docs: change obsolete -show_c_cmd to -showcc and -keepc
2020-05-02 19:01:53 +03:00
yuyi
02807aab43
interpolation: fix error on windows_gcc
2020-05-02 18:22:34 +03:00
Alexander Medvednikov
b0018ed594
checker: better << error
2020-05-02 16:48:52 +02:00
joe-conigliaro
483f0f408c
ast: allow scope var shadowing
2020-05-02 23:46:53 +10:00
Tanel Liiv
68ca8ab8a4
array: nested map()
2020-05-02 15:26:58 +02:00
Alexander Medvednikov
44c00199b6
cgen: fix fixed array consts and pointer interfaces
2020-05-02 15:18:58 +02:00
joe-conigliaro
a9a8539e41
checker: small fix in assign_stmt
2020-05-02 20:21:28 +10:00
joe-conigliaro
fd925fbd05
checker: simplify assign_stmt & add better checks
2020-05-02 19:45:08 +10:00
Alexander Medvednikov
06d533b0c1
cgen: clean up _STR
2020-05-02 11:11:32 +02:00
eyelash
716d867f25
cgen: generate static C functions
2020-05-02 10:42:38 +02:00
Alexander Medvednikov
06173834c0
cgen: interface_call()
2020-05-02 10:10:52 +02:00
Delyan Angelov
aa9bb6f71a
compiler: fix -live compilation of bounce example with gcc-9 & clang
2020-05-02 02:36:29 +03:00
Alexander Medvednikov
7a51d4d796
cgen: revert `new`
2020-05-02 00:59:06 +02:00
Alexander Medvednikov
7dc98120c0
cgen: vfmt -live fix; add new to c_reserved
2020-05-02 00:45:45 +02:00
Uwe Krüger
170ee4312f
cgen: string interpolation field width support for large integers and utf8 strings
2020-05-02 00:43:59 +02:00
Alexander Medvednikov
2f64594ce0
cgen: more interface fixes
2020-05-02 00:28:46 +02:00
Delyan Angelov
7038f59ca5
compiler: add back support for -live
2020-05-02 01:14:44 +03:00
eyelash
130324df76
compiler: remove debug prints
2020-05-02 00:10:36 +02:00
yuyi
b21be7f670
parser: multiple names error
2020-05-01 18:18:58 +02:00
yuyi
de272654f1
repl: fix import xxx with no fn main error
2020-05-01 18:12:18 +02:00
eyelash
4d04e88679
errors: show line numbers in default color and add a space
2020-05-01 14:46:12 +02:00
eyelash
6b08cbcb7a
compiler: print warnings in magenta
2020-05-01 13:44:15 +03:00
Alexander Medvednikov
0106eb1cf6
cgen: fix thread wrapper
2020-05-01 12:32:10 +02:00
Alexander Medvednikov
0b8a0d1640
checker: fix _ check
2020-05-01 12:22:39 +02:00
joe-conigliaro
fb1c60c53d
checker: add back check struct field fn args
2020-05-01 20:12:21 +10:00
Alexander Medvednikov
c1ee14cc3e
json: decode() part 1
2020-05-01 12:02:31 +02:00
joe-conigliaro
a0e662bef9
checker: remove debug println from selector_expr
2020-05-01 19:54:47 +10:00
joe-conigliaro
03904085c4
checker: check fn field exprs
2020-05-01 19:50:32 +10:00
Delyan Angelov
35f56bc4f0
vfmt: fix eating ? in `$if x ? {}`, missing newline in `__global ...`
2020-05-01 12:29:23 +03:00
Delyan Angelov
59525c8c93
tests: fix missing ? after v fmt run
2020-05-01 12:01:30 +03:00
Delyan Angelov
84785bbb59
tests: fix msvc transient failures when sleep_ms takes longer
2020-05-01 11:58:56 +03:00
Alexander Medvednikov
51da324465
tests: fix eventbus_test.v
2020-05-01 10:57:19 +02:00
Delyan Angelov
3608c81cb9
time: add stopwatch_test.v
2020-05-01 10:21:15 +03:00
Tanel Liiv
182e7071bf
array: map() function
2020-05-01 00:29:54 +02:00
Alexander Medvednikov
b0c710c985
checker: allow `fn == 0` comparison for now
2020-04-30 18:51:33 +02:00
Delyan Angelov
a6dfc6d46b
compiler: support ctags with -print_v_files and .ctags.d/v.ctags
2020-04-30 19:45:50 +03:00
Alexander Medvednikov
250dea7bd1
cgen: another imported interface fix
2020-04-30 18:23:17 +02:00
Alexander Medvednikov
f1903f3c1f
parser: fix imported interfaces
2020-04-30 18:06:14 +02:00
Alexander Medvednikov
9971c58ca3
all: remove `var` key
2020-04-30 16:55:33 +02:00
Alexander Medvednikov
20013e4b4b
table: interfaces: unique gen_types
2020-04-30 16:48:46 +02:00
Tim Basel
473617f061
cli: add option with default
2020-04-30 12:18:46 +02:00
yuyi
5481c0fc84
parser: uniform handling of enum field format
2020-04-30 12:18:16 +02:00
yuyi
81ed6ad2a1
checker: check duplicate consts
2020-04-30 12:17:31 +02:00
yuyi
4d415e56d6
checker: check enum field name duplicate
2020-04-30 09:34:18 +02:00
Enzo Baldisserri
50491670af
fmt: fix formatting backtick char literal
2020-04-30 09:33:43 +02:00
yuyi
c4f672454f
checker: check import duplicates
2020-04-30 09:33:12 +02:00
Henrixounez
f6d74c8a37
checker: error on ternary if type mismatch
2020-04-30 09:32:29 +02:00
Alexey
54d1a29267
dl: improve module
2020-04-29 21:01:19 +02:00
Delyan Angelov
e5ae4b6454
parser: fix match exprs over C.VALUES (needed for C.GLFW_KEY_UP)
2020-04-29 20:35:57 +03:00
yuyi
b2a076e8b8
csv: fix last-field-empty error
2020-04-29 16:50:02 +02:00
Tim Basel
3e4cd12fd0
.gitignore: ignore all binary files by default
2020-04-29 16:49:13 +02:00
Alexander Medvednikov
03cee3fee0
builder: fix run & is_test check
2020-04-29 16:44:50 +02:00
Alexander Medvednikov
be0e848ae8
builder: do not allow `v run _test.v`
2020-04-29 14:52:32 +02:00
yuyi
1fabb7d5a6
checker: fix string.str() error
2020-04-29 13:51:42 +02:00
Enzo Baldisserri
390d88f933
parser: fail for section redefinition in struct
2020-04-29 13:32:39 +02:00
joe-conigliaro
98cd013908
cgen: fix interface struct sorting
2020-04-29 21:08:39 +10:00
Alexander Medvednikov
51d0ce0222
tests: more interface tests; checker: handle zero selectorexpr type error
2020-04-29 12:46:09 +02:00
Henrixounez
c500044bae
checker: unreachable code warning
2020-04-29 12:31:18 +02:00
Alexander Medvednikov
2fc05b814c
all: interface arrays
2020-04-29 12:21:15 +02:00
Delyan Angelov
3d8853af2b
builder: move warning/error printing into print_warnings_and_errors
2020-04-29 13:04:09 +03:00
Delyan Angelov
1e910c6afe
tests: add reference_field_must_be_initialized.vv
2020-04-29 12:56:12 +03:00
Delyan Angelov
bf8ed1815c
builder: print collected checker warnings too
2020-04-29 12:38:43 +03:00
penguindark
ad46e1b832
strconv: v_printf documentation
...
* v_printf documentation
* syntax fix
2020-04-29 12:25:38 +03:00
Delyan Angelov
0e765e34be
vfmt: extract v.util.find_working_diff_command, color_compare_files
2020-04-29 11:51:45 +03:00
Delyan Angelov
dd3434598c
checker_test: remove generated .v files, when a test is OK
2020-04-29 11:48:51 +03:00
yuyi
117649f40d
checker: check devision by zero (int and float)
2020-04-29 10:07:27 +02:00
yuyi
2b48ce21df
checker: make sure `main` has no args and doesn't return
2020-04-29 09:19:46 +02:00
yuyi
a9e33e712a
checker: check struct field name duplicate
2020-04-29 09:11:36 +02:00
Henrixounez
0dc7a57e1f
scanner: prevent panic with string starting on first character
2020-04-28 18:57:16 +02:00
Delyan Angelov
8c526ad05b
tests: ignore vlib/v/checker/tests/*.v files (only *.vv are sources there)
2020-04-28 16:45:25 +03:00
Henrixounez
0afaef5818
checker: ambiguous function call error
...
* checker: ambiguous function call error
* checker: ambiguous function call error wording
* checker: ambiguous functions tests newline
2020-04-28 16:27:49 +03:00
Delyan Angelov
8a81aa5c93
errors: disambiguate between variable and fn source_context
2020-04-28 16:20:50 +03:00
Delyan Angelov
7924b4d77c
compiler: handle a panic when an error is produced, but source == ''
2020-04-28 16:15:56 +03:00
Delyan Angelov
8ea087f957
vfmt: fix compilation; handle the case when fmt.tabs is not enough
2020-04-28 16:04:37 +03:00
Delyan Angelov
c6a15dba50
compiler: add support for size_t
2020-04-28 15:07:19 +03:00
jm-duro
210b6e36b6
http: mutable request fields
2020-04-28 13:57:48 +02:00
Alexander Medvednikov
1e4e882bc2
cc/cgen: cached modules fixes
2020-04-28 13:15:37 +02:00
Sandro Martini
761fb930ce
dl: add dynamic load module
2020-04-28 11:53:55 +02:00
Enzo Baldisserri
7bf8731778
checker: check variable mutability for postfix exprs
2020-04-28 11:20:19 +02:00
Delyan Angelov
54b71242fe
builder: add autofree compatibility; protect against b.str() twice in a row
2020-04-28 11:03:43 +03:00
yuyi
f2060d431e
checker: check division by zero
2020-04-28 09:52:01 +02:00
joe-conigliaro
ef4f4825ac
cgen: auto dereference for optional
2020-04-28 15:59:41 +10:00
yuyi
28f5920bb0
cgen: fix `map` `fixed-array` .str() error
2020-04-28 07:22:46 +02:00
yuyi
b20777df59
checker: main function called error
2020-04-28 07:21:50 +02:00
Major Taylor
9edbcb823c
cli: Fix off-by-one error in smart-wrap
2020-04-28 00:10:36 +03:00
Enzo Baldisserri
682838a0cf
checker: check array and fields mutability
2020-04-27 22:53:26 +02:00
Alexander Medvednikov
5d073dcce5
x64: # opcodes
2020-04-27 21:38:58 +02:00
joe-conigliaro
9f76a7b250
parser: simplify unused vars & add loop/if vars etc
2020-04-27 23:16:31 +10:00
Delyan Angelov
e67bf674e3
scanner: cleanup, only v.parser now depends on v.scanner
2020-04-27 16:08:04 +03:00
yuyi
e9f764db4f
cgen: uniform string output format
2020-04-27 14:48:28 +02:00
Alexander Medvednikov
eb8973c362
builder: module caching fixes
2020-04-27 14:46:25 +02:00
Alexander Medvednikov
f005079e0b
pref: rename keep_c
2020-04-27 13:28:00 +02:00
ka-weihe
18faaefe82
map: get: remove malloc and memcpy
2020-04-27 13:27:33 +02:00
Delyan Angelov
73106b5f5e
profile: measure defer{} statements too
2020-04-27 13:18:37 +03:00
Alexander Medvednikov
fde929ee30
cgen: remove tos3() call: part 1
2020-04-27 12:10:08 +02:00
Delyan Angelov
dd1ee39271
profile: produce civilized output
2020-04-27 12:45:19 +03:00
yuyi
99a7b69578
cgen: optimize map_to_string format
2020-04-27 10:52:21 +02:00
Delyan Angelov
c84dee5968
profile: move profiling related logic into vlib/v/gen/profile.v
2020-04-27 09:40:13 +03:00
yuyi
95754f211f
cgen: generate str function when using x.str()
2020-04-27 08:09:37 +02:00
Alexander Medvednikov
3256d060f7
array: inline ensure_cap
2020-04-27 07:39:33 +02:00
Alexander Medvednikov
ef26f27753
builtin: replace `isnil` calls for perfomance
2020-04-27 07:13:36 +02:00
Delyan Angelov
e523540f3a
profile: use specialized time__vpc_now
2020-04-26 22:14:54 +03:00
Alexander Medvednikov
50a83736ff
checker: struct init: handle C types
2020-04-26 19:59:03 +02:00
Alexander Medvednikov
8223efe9df
checker: check struct field types
2020-04-26 18:38:29 +02:00
Alexander Medvednikov
83552a0d58
array: replace make() with the new init syntax
2020-04-26 17:52:27 +02:00
Alexander Medvednikov
f23948010a
parser: new array init syntax
2020-04-26 17:28:48 +02:00
penguindark
d16474442a
strconv: format test fixes
2020-04-26 16:26:33 +02:00
yuyi
2574dce174
all: fix remaining `[]array` warnings
2020-04-26 16:25:54 +02:00
yuyi
9f4d498ff1
all: update`import ()` and `[]array`
2020-04-26 13:49:31 +02:00
Larpon
7b39ab6d06
string: fix replace_each edge case error message
2020-04-26 12:40:39 +02:00
Enzo Baldisserri
0f2f97e3e5
checker: reorganize tests to match fmt tests
2020-04-26 12:34:42 +02:00
Alexander Medvednikov
41eb4453e3
parser: do not allow redefinition of fn args
2020-04-26 12:01:10 +02:00
Alexander Medvednikov
153ac230ec
tests: use new array init syntax, fix mutability
2020-04-26 11:56:30 +02:00
Alexander Medvednikov
0641a31fe0
parser: allow mutable pointer args
2020-04-26 11:53:41 +02:00
eyelash
b495dac780
fix a few warnings
...
Good find, @eyelash .
2020-04-26 12:42:44 +03:00
Alexander Medvednikov
270566055f
checker: make sure all FnDecl types are valid
2020-04-26 10:39:26 +02:00
Alexander Medvednikov
3c08f655af
parser: do not allow mutable simple args
2020-04-26 10:35:10 +02:00
Alexander Medvednikov
a56121c329
checker: check mutability in index exprs; parser: set is_mut for args
2020-04-26 10:25:58 +02:00
Delyan Angelov
ee31339dfd
parser: fix error position for use `x := []Type{}`
2020-04-26 10:42:46 +03:00
Alexander Medvednikov
d844ff1381
builder: fix msvc.v
2020-04-26 09:33:40 +02:00
Alexander Medvednikov
20bcb6b8bb
tests: fix lef_shift test
2020-04-26 09:29:29 +02:00
penguindark
b67698888c
strconv: printf and string format utilities
2020-04-26 10:23:10 +03:00
Alexander Medvednikov
7955181c6c
tests: [] fixes
2020-04-26 09:18:29 +02:00
Alexander Medvednikov
3ab8dc0092
parser: array init: `[]string` => `[]string{}`
2020-04-26 09:17:17 +02:00
yuyi
3a59f5727c
checker: fix check main function error ( #4601 )
2020-04-26 08:04:28 +02:00
Alexander Medvednikov
a48080afec
parser: deprecate import(); replace remaining import()s
2020-04-26 07:36:02 +02:00
Delyan Angelov
48f9cc1ed7
tests: make alias_type_exists.vv use `type Pigeon Bird` syntax
2020-04-26 08:23:09 +03:00
Alexander Medvednikov
f7153ca4fa
fmt: array_init(); parser: fn_redefinition_error()
2020-04-26 07:17:01 +02:00
Delyan Angelov
620fc962d7
builtin: use single line imports, to make analysis easier
2020-04-26 08:06:39 +03:00
Alexander Medvednikov
3166833471
parser: fix interface method return type parsing
2020-04-26 07:03:26 +02:00
yuyi
9cfb1e3bf7
cgen: fix struct with fixed array error
2020-04-26 06:54:14 +02:00
Enzo Baldisserri
0b3412cdb5
checker: check that type exists in TypeDecl
2020-04-26 06:40:54 +02:00
yuyi
541b058e90
all: use `a !in b` instead of `!(a in b)`
2020-04-26 06:39:23 +02:00
Alexander Medvednikov
2b4ac0e63a
checker: handle array of interfaces
2020-04-26 06:29:03 +02:00
Alexander Medvednikov
8000eb3656
parser: revert silent _ prefix rule
2020-04-26 05:34:34 +02:00
Alexander Medvednikov
60a0ba5eaa
table: minor interface clean up
2020-04-26 05:34:34 +02:00
Delyan Angelov
a77640165e
compiler: faster vmod lookup
2020-04-25 23:43:46 +03:00
Delyan Angelov
08799792a7
tests: fix regex test
2020-04-25 23:42:48 +03:00
Delyan Angelov
cd27300d75
cookie: fix a new match error about redundant `else`
2020-04-25 23:02:04 +03:00
Delyan Angelov
19d7553d67
tests: fix vlib/net/http/cookie_test.v
2020-04-25 22:53:18 +03:00
Enzo Baldisserri
3e68e429b6
checker: avert if else is unnecessary
2020-04-25 21:51:44 +02:00
Alexander Medvednikov
e0f9c042c1
cgen: interface fixes
2020-04-25 21:24:12 +02:00
Delyan Angelov
86ba1645b0
os: add os.input(prompt)
2020-04-25 22:04:12 +03:00
Enzo Baldisserri
c73d91a8fe
fmt: TypeDecl; format more files
2020-04-25 20:58:00 +02:00
Ruofan XU
d86539c4f5
checker: clean up infix_expr
2020-04-25 20:28:49 +02:00
ka-weihe
d72e401378
string: optimize eq
2020-04-25 20:19:53 +02:00
Alexander Medvednikov
b7e5be41f5
checker/cgen: `as` fixes
2020-04-25 18:41:12 +02:00
yuyi
c26e83f58a
array: fix fixed array errors
2020-04-25 18:26:38 +02:00
yuyi
ec9566988a
cmdline: minor optimizaztion
2020-04-25 17:49:51 +02:00
Enzo Baldisserri
fb54a2635c
fmt: lots of fixes
2020-04-25 17:49:16 +02:00
Delyan Angelov
7c080c5d4a
checker: prevent `x := voidfn()`
2020-04-25 18:06:34 +03:00
Larpon
6a834c0528
checker: use 'mut' instead of 'var' in error message
2020-04-25 17:51:12 +03:00
Delyan Angelov
a20bef65ba
fmt: workaround a vfmt limitation preventing formatting of vlib/v/ast/ast.v
2020-04-25 17:34:42 +03:00
Delyan Angelov
9a19531909
compiler: add support for `[if myflag]` void fn/methods
2020-04-25 16:57:11 +03:00
Delyan Angelov
945f964c0c
parser: stay silent about unused variables starting with _
2020-04-25 15:38:15 +03:00
joe-conigliaro
aacc3c6f7e
cgen: generate str for variadic ( #4587 )
2020-04-25 22:23:47 +10:00
Delyan Angelov
4bcdf11743
cgen: support `-profile -` and `-profile x.txt`
2020-04-25 13:41:49 +03:00
Delyan Angelov
eecf92cdb0
cgen: implement -profile support.
2020-04-25 13:05:49 +03:00
joe-conigliaro
41cc96aaec
revert parser: simplify array push detection
2020-04-25 18:57:12 +10:00
joe-conigliaro
4675656786
parser: simplify array push detection
2020-04-25 18:42:53 +10:00
Delyan Angelov
e0ab318f56
cgen: add support for `v -printfn main file.v`
2020-04-25 11:15:57 +03:00
joe-conigliaro
900d96c638
parser: allow deref assign without parens pt2 update vlib
2020-04-25 18:14:01 +10:00
joe-conigliaro
7177e71444
revert parser: allow deref assign without parens pt2 update vlib
2020-04-25 18:11:14 +10:00
joe-conigliaro
f92cf69e60
parser: allow deref assign without parens pt2 update vlib
2020-04-25 18:09:52 +10:00
joe-conigliaro
9fff8733a0
parser: allow deref assign without parens pt1
2020-04-25 18:07:30 +10:00
joe-conigliaro
6696e1a6e2
table: move set_nr_muls to method
2020-04-25 17:54:32 +10:00
Alexander Medvednikov
d54b48b300
table: interface cast fix
2020-04-25 09:18:10 +02:00
Alexander Medvednikov
9229a963ed
array: use __new_array everywhere
2020-04-25 09:10:54 +02:00
joe-conigliaro
fbcdffbbc8
table: move Type functions to methods
2020-04-25 17:08:53 +10:00
Alexander Medvednikov
6248899d25
compiler_test: handle panics
2020-04-25 09:05:14 +02:00
Delyan Angelov
1c46dabc84
tetris: cleanup unused variable warnings
2020-04-25 09:49:02 +03:00
Alexander Medvednikov
48857090fc
runtime `as` type check: part 2
2020-04-25 08:42:23 +02:00
Alexander Medvednikov
2d187fb951
runtime `as` type check: part 1
2020-04-25 08:36:53 +02:00
Alexander Medvednikov
f1f9e423c3
interfaces: preparatory fixes
2020-04-25 08:00:44 +02:00
Junya Okuno
5600fd8613
net.http: remove redundant httponly handling
2020-04-25 06:15:05 +02:00
Enzo Baldisserri
a924defb94
checker: check `in` left type
2020-04-25 06:14:17 +02:00
Enzo Baldisserri
fa4739794f
checker: fix "unnecessary `()`" error position
2020-04-24 20:27:18 +02:00
Delyan Angelov
cc4090cc74
vfmt: remove unused variable check for vfmt
2020-04-24 20:25:11 +03:00
Delyan Angelov
8be10ffbd6
vfmt: always walk over all comptime branches
2020-04-24 19:05:55 +03:00
Delyan Angelov
f6f204387d
cgen: fix for msvc
2020-04-24 18:44:25 +03:00
Delyan Angelov
c6a829ce82
cgen: support for error('abc').str() and printing errors
2020-04-24 18:35:33 +03:00
Enzo Baldisserri
323ca2b3bb
checker: check duplicates on match with no else
...
Refactor match duplication test to work even if there is not else, and to include every expression.
Add tests for duplicate expressions in match.
2020-04-24 17:04:39 +03:00
Delyan Angelov
aa15dec660
checker: check default struct field expression types
2020-04-24 16:46:55 +03:00
Delyan Angelov
d6899788dd
time: add back vlib/time/time_linux.c.v
2020-04-24 15:28:16 +03:00
yuyi
afa9d42ff0
cgen: fix gen_str_for_array_fixed error
2020-04-24 12:36:45 +02:00
Alexander Medvednikov
a3382a5319
x64: debug opcodes nicely
2020-04-24 09:44:54 +02:00
Delyan Angelov
6bd34a069d
benchmark: show xxx.yyy ms, using the new highres timer
2020-04-24 10:26:47 +03:00
Delyan Angelov
117ec722a2
time: remove temporary time__linux.c.v workaround
2020-04-24 09:12:34 +03:00
Delyan Angelov
20637ae54c
time: restore building v on linux, till v.c is regenerated with `-os cross`
2020-04-24 09:00:07 +03:00
Delyan Angelov
863fab0268
comptime: enable again skipping parsing of other platform branches
2020-04-24 08:51:48 +03:00
Delyan Angelov
7a132e5c79
cgen: cleaner comptime ifdefs .
2020-04-24 08:42:31 +03:00
Major Taylor
25f2b171fc
time: Timer -> StopWatch; time.Duration
2020-04-24 07:33:25 +02:00
Leah Lundqvist
f3e3d7e0c5
websocket: update to work with latest V
2020-04-24 07:32:51 +02:00
yuyi
998fc8fc07
cgen: add gen_str_for_array_fixed
2020-04-24 07:32:27 +02:00
Alexander Medvednikov
c30c76c285
tests: fix x64 test
2020-04-24 05:26:29 +00:00
Delyan Angelov
6b31ebe456
Revert "comptime: enable again skipping parsing of other platform branches"
...
This reverts commit 0f4c5fb1c9
.
2020-04-23 22:47:16 +03:00
Alexander Medvednikov
8cb88d5c9a
x64: remove fn arg test for now
2020-04-23 20:55:23 +02:00
Delyan Angelov
ebc41375f1
os.executable: fix panic when os.executable_fallback fails (early in startup)
2020-04-23 21:53:18 +03:00
Alexander Medvednikov
1247718cbd
x64: pass fn args
2020-04-23 20:27:34 +02:00
Delyan Angelov
0f4c5fb1c9
comptime: enable again skipping parsing of other platform branches
2020-04-23 20:45:16 +03:00
Delyan Angelov
4f4567513e
comptime: fix `$if debug {}` when giving -cg or -d debug
2020-04-23 18:03:07 +03:00
Delyan Angelov
adb8fb1dc6
comptime: fix custom -d flags and `$if x? {}`. Fixes ftp_test.v .
2020-04-23 17:52:44 +03:00
Delyan Angelov
1a79e5419f
tests: fix aes_test.v by manually dereferencing the mut dst parameter
2020-04-23 16:45:25 +03:00
yuyi
2b4f72ef64
parser: fix empty import error
2020-04-23 14:48:05 +02:00
yuyi
f2e505d962
tests: enable compiler_test.v on Windows
2020-04-23 14:15:15 +02:00
Delyan Angelov
8b5573a6f3
errors: use more distinct and detailed name redefinition messages
2020-04-23 13:15:01 +03:00
Enzo Baldisserri
7e400124e8
parser: allow blank ident in nested loops
2020-04-23 12:00:51 +02:00
Delyan Angelov
fb97c2e01e
examples: fix path_tracing.v compilation, using (*ptr) = expression
2020-04-23 12:28:16 +03:00
Alexander Medvednikov
7f5e3b36bc
x64: for loop
2020-04-23 05:29:07 +02:00
yuyi
5664cbd3d0
enum: check enum name and modify related files
2020-04-23 05:16:10 +02:00
Alexander Medvednikov
45e21085c7
tests: re-enable some old array tests
2020-04-23 04:23:19 +02:00
Alexander Medvednikov
9fe0ca5323
x64: ++
2020-04-23 01:55:38 +02:00
Kris Cherven
d871595437
all: replace `var` with `mut`
2020-04-23 01:16:58 +02:00
yuyi
4e1abc8503
all: remove commas between enum vals
2020-04-23 01:16:16 +02:00
Alexander Medvednikov
d7ee4755c2
parser/cgen: interfaces (part 1)
2020-04-22 20:23:53 +02:00
Kris Cherven
faed178cb1
fmt: fix optional formatting
2020-04-22 20:12:58 +02:00
Enzo Baldisserri
fecf4ddf65
cgen: fix optional pointers
2020-04-22 20:12:30 +02:00
joe-conigliaro
de182d5809
parser: use single scope for fn args/body
2020-04-22 21:15:38 +10:00
joe-conigliaro
80a4fbf0be
parser: anon fn arg scope fix
2020-04-22 21:11:58 +10:00
joe-conigliaro
830b1807c1
test: add comment for assert bug in fn_test
2020-04-22 18:47:46 +10:00
joe-conigliaro
3ca4f5fada
checker/parser: anon fn call & return type fix
2020-04-22 18:41:57 +10:00
Delyan Angelov
4b8ed3f831
cgen: fixes for ustring, makes utf8_util_test.v pass
2020-04-22 10:35:14 +03:00
Alexander Medvednikov
50436a0e4a
x64: local variables; if
2020-04-22 07:11:17 +02:00
joe-conigliaro
c35e0e49ce
cgen: use gen_varg var in condition
2020-04-22 13:31:24 +10:00
joe-conigliaro
c1e8612624
checker/gen: allow vargs to be forwarded. fix/enable variadic test
2020-04-22 13:28:47 +10:00
Kris Cherven
b288ecb795
cgen: add map string generation
2020-04-22 04:00:38 +02:00
Kris Cherven
5c3742fbd2
parser: check var names in for loops
2020-04-22 03:48:51 +02:00
Kris Cherven
155891a4e0
parser: add unused variable warning
2020-04-22 01:52:56 +02:00
Uwe Krüger
08fac28c52
cgen: fix string interpolation for non-standard integer types
2020-04-22 01:48:53 +02:00
penguindark
34fd148f2f
ftoa: some fixes for rounding, new functions
2020-04-22 01:42:44 +02:00
joe-conigliaro
b9c0d2d362
cgen: fix passing high order function with body
2020-04-21 22:45:20 +10:00
yuyi
bc4a576c54
flag: fix flag_test.v
2020-04-21 14:44:17 +03:00
yuyi
a8dc0ccbcd
checker: add more op checks
2020-04-21 13:26:02 +02:00
Delyan Angelov
7c1d6b60c2
cgen: add g.auto_str_funcs, print &Struct pointers with enum fields
2020-04-21 13:32:17 +03:00
Alexander Medvednikov
baf3bf6778
uiold: make compile (fix vid); x64: mov rbp, rsp
2020-04-21 10:48:52 +02:00
Alexander Medvednikov
4471314291
clipboard: make the Linux version compile
2020-04-21 07:24:23 +00:00
Delyan Angelov
9d107007a1
x64: enhance diagnostic for unhandled nodes
2020-04-21 09:34:00 +03:00
Alexander Medvednikov
ab38605802
tests: disable clipboard on linux; x64: leave()
2020-04-21 06:16:47 +02:00
Alexander Medvednikov
77679d9650
tests: mark more tests as fixed
2020-04-21 05:52:44 +02:00
Alexander Medvednikov
9278a0cfba
tests: fix mut_test; x64: sub32()
2020-04-21 05:49:03 +02:00
joe-conigliaro
abf5942433
parser/cgen: anon fn var & calling ( #4534 )
2020-04-21 13:23:36 +10:00
Alexander Medvednikov
ee2e83fef0
go back to `mut`. decisions, decisions...
2020-04-21 05:11:50 +02:00
Alexander Medvednikov
1bf094fbca
parser: mut in receivers
2020-04-21 05:07:49 +02:00
Alexander Medvednikov
cc0e0ed281
fmt: single line match fix; x64: minor fixes
2020-04-21 04:51:53 +02:00
sambeckingham
4ea4d1c8c4
csv: handle missing line ending
2020-04-21 00:02:55 +02:00
Alexander Medvednikov
67a76cee1e
tests: fix x64 output comparison
2020-04-20 22:57:41 +02:00
Alexander Medvednikov
10677c2b0c
x64: fn call test
2020-04-20 22:36:12 +02:00
Alexander Medvednikov
871c29ea5d
x64: fn calls; return;
2020-04-20 22:21:40 +02:00
sambeckingham
b1459ade69
csv: fix missing last column
2020-04-20 21:49:05 +02:00
Ruofan XU
f725b93019
tests: delete an unused file
2020-04-20 21:48:14 +02:00
Alexey
9c0d97335e
builtin: improve backtrace on Windows
2020-04-20 20:59:08 +02:00
Ruofan XU
cdb1b0344c
checker: improve type check for arithmetic assignment op and fix error pos
2020-04-20 20:56:05 +02:00
Major Taylor
dc8199709f
cli: add smart-wrap for help description
2020-04-20 14:50:15 +02:00
yuyi
717e26b45e
checker: more infix checks
2020-04-20 14:49:26 +02:00
yuyi
07f69fab19
checker: remove dots from error messages
2020-04-20 11:57:07 +02:00
Alexander Medvednikov
2805f8d0cc
tests: fix x64_test.v
2020-04-16 14:19:14 +03:00
Alexander Medvednikov
78cbb7746f
tests: fix hello.vv output
2020-04-20 09:07:19 +02:00
Alexander Medvednikov
2642f6a0da
cgen: remove _PUSH
2020-04-20 09:04:17 +02:00
Alexander Medvednikov
e006da7259
parser: fix a bad comment
2020-04-20 08:44:14 +02:00
Alexander Medvednikov
4b329cb89d
tests: fix a typo
2020-04-20 08:32:10 +02:00
Alexander Medvednikov
ee2f1652b5
fmt: add EOL
2020-04-20 08:30:42 +02:00
Alexander Medvednikov
639dc02cc8
x64: test hello world
2020-04-20 08:27:37 +02:00
Alexander Medvednikov
c1fc768c1b
fmt: run on cmd/v; cgen: fix anonymous functions
2020-04-20 07:04:31 +02:00
Alexander Medvednikov
efff96d622
x64: make hello world run
2020-04-20 07:02:09 +02:00
Alexander Medvednikov
19a5436118
cgen: use faster array_push instead of _PUSH; re-fmt cgen.v
2020-04-20 03:54:41 +02:00
yuyi
be3bd520f6
checker: fix for in range type mismatch
2020-04-20 00:21:16 +02:00
Ruofan XU
5edd9cdc3a
checker: add type check for bit op
2020-04-19 22:29:45 +02:00
yuyi
dbb81b89fd
checker: fix type mismatch of `in` array
2020-04-19 22:26:58 +02:00
Daniel Däschle
b62bb22fa6
checker: allow C values in enum
2020-04-19 22:26:04 +02:00
Ruofan XU
6c59b306c7
checker: add type check for arithmetic assignment ops
2020-04-19 22:24:12 +02:00
yuyi
4de16e9f0f
tests: enable checker_error_test on windows
2020-04-19 20:48:13 +02:00
Keito Nagai
57859db07c
readme: fix docs link
2020-04-19 20:47:36 +02:00
Kris Cherven
95ae915c0c
checker/parser: fix outdated error messages
2020-04-19 20:46:48 +02:00
yuyi
27e04748ed
cgen:gen_str_for_array
2020-04-19 10:42:34 +02:00
Alexey
3ee858cd79
cgen: fix struct initialization bugs
2020-04-19 04:44:39 +02:00
Major Taylor
be0a8794c2
time: add Timer; refactor benchmark to use Timer
2020-04-19 03:40:32 +02:00
Enzo Baldisserri
57c142b993
checker: disallow pub in main
2020-04-19 00:07:57 +02:00
Alexander Medvednikov
de9f302412
fmt: array newlines test
2020-04-18 23:58:59 +02:00
Alexey
85c5103ba3
tests: test cflags parsing
2020-04-18 23:45:17 +02:00
Alexey
3d6142064d
tests: remove `msvc-test`
2020-04-18 23:44:42 +02:00
Alexander Medvednikov
a18201faa7
fmt: save newlines between array elements
2020-04-18 23:09:23 +02:00
Alexey
2ab2a58bc5
string: add more interpolation tests
2020-04-18 18:26:07 +02:00
Ruofan XU
b0e498bf0b
scanner: refactor ident_dec_number
2020-04-18 17:49:27 +02:00
Tim Basel
86df486988
compiler: rename is_so to is_shared
2020-04-18 17:46:23 +02:00
Kris Cherven
3cc7009440
cflag: remove circular dependency
2020-04-18 16:29:43 +02:00
Kris Cherven
eb923b4995
testing: fix count of succeeded tests
2020-04-18 05:49:03 +03:00
yuyi
5374899f29
parser: fix interpolation error
2020-04-18 00:22:03 +02:00
Enzo Baldisserri
0f9322bf36
checker: print error and pos for lacking main or pub main
2020-04-18 00:20:38 +02:00
Enzo Baldisserri
f2be3d7ffb
checker: check that right `is` type exists
2020-04-18 00:19:33 +02:00
Tim Basel
73073cd954
parser: anonymous functions (part 1)
2020-04-17 21:59:19 +02:00
yuyi
3e324befd0
builder: clean up and simplify some methods
2020-04-17 21:17:19 +02:00
Alexander Medvednikov
515da900e4
fmt: remove \t before same line comments
2020-04-17 20:53:39 +02:00
Alexander Medvednikov
2c778c8849
fmt: single line matches
2020-04-17 20:51:19 +02:00
yuyi
67cd90de6e
parser: fix number parse error
2020-04-17 20:31:32 +02:00
Kris Cherven
84ac634c31
checker: disallow pub fn main()
2020-04-17 20:30:43 +02:00
Alexander Medvednikov
c4b7d7cab3
match: shadow variable instead of `it`
2020-04-17 19:24:10 +02:00
Alexander Medvednikov
59baef89a0
parser: assign.v, containers.v, for.v, if.v
2020-04-17 18:16:55 +02:00
Alexander Medvednikov
b53fb365a6
parser: move pratt logic to pratt.v
2020-04-17 18:11:04 +02:00
Alexander Medvednikov
16931fd23f
parser: move all struct logic to struct.v
2020-04-17 18:01:02 +02:00
Alexander Medvednikov
ed8855c4cd
tests: fix struct_unknown_field.v
2020-04-17 17:20:35 +02:00
Alexander Medvednikov
4a556f72bb
checker: allow calling private functions in tests
2020-04-17 17:18:40 +02:00
Alexander Medvednikov
06c1b9e95e
table/checker: verify private functions/methods
2020-04-17 17:16:14 +02:00
Daniel Däschle
af30bf939e
checker: fix return underlining
2020-04-17 16:16:56 +02:00
Daniel Däschle
c1d9e22ca6
cgen: gen str() from eprintln and eprint as well
2020-04-17 16:15:28 +02:00
yuyi
420ecaf31d
cgen: gen_str_for_array()
2020-04-17 16:10:41 +02:00
Daniel Däschle
402e55d115
ast: expr.Position; struct field refactoring
2020-04-17 02:38:39 +02:00
yuyi
8bb11d9035
cgen: fix string_interpolation_struct_test.v error
2020-04-17 01:45:42 +02:00
Major Taylor
7bfc3ef767
cli: fix issue with long cmd and flag names
2020-04-16 23:01:04 +02:00
Enzo Baldisserri
051cc732bb
cgen: generate typeof for functions
2020-04-16 21:04:27 +02:00
yuyi
dee64347e0
cgen: fix const_embed_test.v error
2020-04-16 19:43:39 +02:00
Alexey
4c8510dfaf
cgen: use `wWinMain` for Windows GUI applications
2020-04-16 19:42:04 +02:00
Delyan Angelov
aed8370d87
tetris: enable compilation with -prod; cleanup of font loading errors
2020-04-16 19:44:15 +03:00
Kris Cherven
182108faca
fmt fmt.v, vfmt.v
2020-04-16 15:54:17 +02:00
Alexey
54226e74cf
sokol: add missing `C` prefixes
2020-04-16 15:53:34 +02:00
Alexander Medvednikov
714ff50322
fmt: use the new receiver syntax
2020-04-16 15:42:40 +02:00
Alexander Medvednikov
4b5acfd960
parser: (var x X) receiver syntax
2020-04-16 15:40:21 +02:00
Alexander Medvednikov
8760313ce5
fmt builder.v
2020-04-16 15:35:19 +02:00
Alexander Medvednikov
af224b4933
parser/cgen: is keyword
2020-04-16 15:32:14 +02:00
Delyan Angelov
cc9828b481
checker: fix building of shared .so libs
2020-04-16 16:30:19 +03:00
Enzo Baldisserri
e05f103c41
cli: make compile
2020-04-16 14:50:04 +02:00
Delyan Angelov
1318c27699
tetris: it now works with v2 (on linux) :-)
2020-04-16 13:30:40 +03:00
Daniel Däschle
19723c927b
checker: move more checks from parser
2020-04-16 12:17:15 +02:00
Delyan Angelov
554d87f5b0
tetris: part 1 of fixing compilation with v2
2020-04-16 12:37:59 +03:00
Delyan Angelov
8a1248b2e7
builder: restore module import cycle detection/topological reorder
2020-04-16 12:29:36 +03:00
Daniel Däschle
04db2d02b8
checker: move struct name check from parser to checker
2020-04-16 11:01:18 +02:00
yuyi
54a02996f2
cgen: fix string interpolation float type
2020-04-16 07:30:25 +02:00
Kris Cherven
332d52f459
fmt: stop mangling reference names
2020-04-16 07:28:41 +02:00
joe-conigliaro
c3ddaf16ec
cgen: fix sum type casting for array push
2020-04-16 15:18:33 +10:00
Daniel Däschle
a680db44ed
parser: change `for` error message
2020-04-16 06:01:14 +02:00
yuyi
b15780ae51
parser: better const error
2020-04-16 06:00:05 +02:00
Delyan Angelov
4b3c44cfd7
Revert "tetris: part 1 of fixing building it with v2"
...
This reverts commit d42725aafe
.
2020-04-16 01:16:54 +03:00
Delyan Angelov
d42725aafe
tetris: part 1 of fixing building it with v2
2020-04-16 00:35:16 +03:00
Delyan Angelov
92129d760d
checker: fix false positives for sumtype kind of matches
2020-04-16 00:32:56 +03:00
Abdullah Atta
6a186e8f11
jsgen: implement js backend
2020-04-15 23:16:49 +02:00
Kris Cherven
a3ab5df2ed
cgen: prepend __ to new_array
2020-04-15 20:12:06 +02:00
Daniel Däschle
27b6f30305
checker: move capital var check from parser to checker
2020-04-15 19:09:51 +02:00
Daniel Däschle
93b942de46
parser: fix a match error
2020-04-15 16:23:03 +02:00
joe-conigliaro
fde83aff0b
checker/cgen: fix calling struct field with fn type
2020-04-15 04:28:18 +02:00
Alexander Medvednikov
da28bc7026
Revert "fmt: `(var f Foo)`"
...
This reverts commit 4b110756e0
.
2020-04-15 04:15:42 +02:00
Alexander Medvednikov
4b110756e0
fmt: `(var f Foo)`
2020-04-15 03:56:16 +02:00
Kris Cherven
4dd8796dba
cgen: fix assignment to nested maps
2020-04-15 02:42:00 +02:00
Alexander Medvednikov
f34352faf9
fmt: use var instead of mut
2020-04-15 01:55:51 +02:00
Alexander Medvednikov
efaec8be8e
token/parser: var keyword
2020-04-15 01:45:27 +02:00
Daniel Däschle
4068cbc6eb
parser: fix var name check pos
2020-04-14 21:27:17 +02:00
Alexey
e1739549b2
crypto: fix `rand` module
2020-04-14 21:03:02 +02:00
Alexander Medvednikov
14e1b963f2
parser: do not allow variable names with capital letters
2020-04-14 20:40:00 +02:00
Alexey
91de4e1ece
array: test assignment operators
2020-04-14 20:32:06 +02:00
Enzo Baldisserri
86402204a7
checker: fail if else isn't the last branch of match
2020-04-14 20:31:51 +02:00
Alexey
0c63f5c80d
builtin: test left/right shift precedence
2020-04-14 19:38:11 +02:00
Daniel Däschle
50871d1a92
checker: for in index type error position
2020-04-14 19:37:56 +02:00
Alexander Medvednikov
deab448d93
cgen: fix array[i] &=, |= etc
2020-04-14 19:36:52 +02:00
Alexander Medvednikov
233ae3f772
fmt: use `import module` syntax
2020-04-14 19:32:23 +02:00
Alexander Medvednikov
2251634743
parser: hide import deprecation warning for now
2020-04-14 18:36:29 +02:00
Alexander Medvednikov
f91d527154
deprecate `import module`
2020-04-14 18:27:30 +02:00
Alexander Medvednikov
211275ab49
fmt: always use import() syntax
2020-04-14 18:24:19 +02:00
Alexander Medvednikov
ec10831318
parser: `[]int{cap:cap, len:len}` syntax; minor fixes
2020-04-14 18:10:16 +02:00
joe-conigliaro
b33a9fc9e7
parser: fix left shift precedence
2020-04-15 01:41:14 +10:00
Delyan Angelov
2b3204603a
parser: add an $if tinyc{} wrapper for the tcc_stack_bug variable
2020-04-14 18:02:55 +03:00
Delyan Angelov
e947d5e8c8
checker: fully exhaustive matches for sumtypes and enums
...
Also change the vlib/v/checker/tests/inout/match_expr_else.out to reflex the
new error details.
2020-04-14 16:50:43 +03:00
Daniel Däschle
75603beeea
checker: match exhaustive as stmt and with enum
2020-04-14 15:12:26 +02:00
Delyan Angelov
c04c973f84
cgen: use a temp variable for the array part inside 'for x in array{}'
2020-04-14 13:22:58 +03:00
Delyan Angelov
2df4998acc
parser: fix v selfcompilation with tcc (tcc bug workaround)
2020-04-14 11:06:19 +03:00
yuyi
956651384c
cgen: fix math/complex_test.v
2020-04-14 07:44:19 +02:00
yuyi
682c619456
array: fix array_byte.str error
2020-04-14 05:55:53 +02:00
Alexander Medvednikov
5f1b88c2c4
checker: do not use !in for now
2020-04-14 04:14:02 +02:00
Alexander Medvednikov
bbc35b1179
checker: check bool and string ops
2020-04-14 04:12:28 +02:00
yuyi
885612afea
ftoa: fix strconv/ftoa/f32_f64_to_string_test.v
2020-04-14 03:53:34 +02:00
Alexander Medvednikov
df37597f00
tests: disable cookie test for now
2020-04-14 03:43:59 +02:00
Chris Watson
c6c2fccb23
net.http: add cookie support
2020-04-14 03:34:05 +02:00
Daniel Däschle
12e48c6fe2
checker: check match for exhaustion
2020-04-14 01:03:31 +02:00
Alexander Medvednikov
1185f04868
json: encode
2020-04-14 00:37:47 +02:00
Alexander Medvednikov
a9a8f8c804
rand: remove duplicate C fn
2020-04-13 20:11:44 +02:00
krischerven
8c0b25a2ab
cgen: fix printing alias types
2020-04-13 20:07:25 +02:00
Alexander Medvednikov
7aacf77262
checker: remove an extra fn check
2020-04-13 20:06:20 +02:00
Alexander Medvednikov
24958df565
parser: do not allow duplicate fns; cgen: move fn code to fn.v
2020-04-13 19:59:57 +02:00
yuyi
fb4cfa72cd
cgen: fix str() for arrays
2020-04-13 19:18:22 +02:00
Daniel Däschle
a6100be8df
parser: fix position of array init
...
* parser: fix position of array init
* fix checker_error_test.v tests
2020-04-13 19:08:02 +03:00
krischerven
ac67b1ea1b
tests: add new type alias syntax tests
2020-04-13 16:44:21 +02:00
Alexander Medvednikov
c36984cc94
fmt: handle indents
2020-04-13 16:36:32 +02:00
Alexander Medvednikov
2bd22aa4a4
parser: type Foo = Bar
2020-04-13 15:06:02 +02:00
Alexander Medvednikov
77fcd572dc
fmt: remove unused imports
2020-04-13 15:05:51 +02:00
Daniel Däschle
8cbdb75dd6
cgen: fix match expr multiline error
...
* cgen: fix match expr multiline error
* Support for multiple statements in the else part of the match.
* Add a test for the match expression with multiple statements.
2020-04-13 13:05:38 +03:00
Delyan Angelov
99db5f53f7
repl_test.v: fix compilation (non working ones are for now renamed to .skip)
2020-04-13 11:06:52 +03:00
krischerven
74ba8f5cc9
tests: add testing for !in
2020-04-13 02:29:07 +02:00
krischerven
78f9f25a00
cgen: fix !in not working with maps
2020-04-13 02:22:55 +02:00
krischerven
a0d6651e0e
tests: fix typeof_test
2020-04-13 02:22:14 +02:00
Daniel Däschle
1a4113d245
checker: store errors in []Error
2020-04-13 01:56:01 +02:00
Enzo Baldisserri
da5a1e458b
cgen: fix match expr in assert
2020-04-13 01:53:26 +02:00
Alexander Medvednikov
6ada43df61
fmt: test automatic import insertion
2020-04-12 17:57:05 +02:00
Alexander Medvednikov
810a0725ec
tests: fix fmt tests
2020-04-12 17:49:31 +02:00
Alexander Medvednikov
0db0c642c3
vfmt: add missing imports automatically
2020-04-12 17:45:04 +02:00
Daniel Däschle
d55f4ab097
cgen: fix error priting struct which has .str already
2020-04-12 16:25:02 +03:00
Daniel Däschle
5818956cdc
cgen: % escape in string interpolated literals
...
* cgen: % escape in c call to _STR
* tests: add test for string % escape
* Add a test for the % escaping when interpolating inside strings
2020-04-12 16:24:23 +03:00
Daniel Däschle
4449468ca4
parser: correct error position on field and method errors
2020-04-12 15:19:07 +03:00
ka-weihe
e247690fe1
map: fast_string_eq and improved comments
...
* improved comments and fast_string_eq
* make it pass CI
* enumerate traits
* Add parameter back
* remove space
* remove parameter
* Allow bootstrap compilation in one step with old vc (add new_map/2 shim).
2020-04-12 15:10:06 +03:00
Daniel Däschle
79dad0bca9
parser: fix enum default value in struct
...
* parser: fix enum default value in struct
* Add a test for the enum default values in structs.
* Fix compilation of vfmt.
* Run vfmt over enum_default_value_in_struct_test.v
* Cleanup spurious , in vfmt output for enum declarations
Co-authored-by: Delyan Angelov <delian66@gmail.com>
2020-04-12 13:35:54 +03:00
yuyi
0ced7116b6
string: add is_upper/is_lower and fix parser.match_expr error
...
* string: add is_upper/is_lower and fix parser.match_expr error
* to_capital => capitalize, to_title => title
* is_titled => is_title, is_capitalized => is_capital
2020-04-12 13:09:05 +03:00
Ned Palacios
db2c656da8
scanner: `!in` token
2020-04-12 07:30:26 +02:00
yuyi
c3e78b8c8f
vdoc: use the new suffix
2020-04-12 02:50:19 +02:00
krischerven
0a03797694
tests: run vfmt
2020-04-12 01:41:26 +02:00
krischerven
1abdf2d68f
cgen: fix missing defer in fn main()
2020-04-12 01:38:14 +02:00
Alexey
0f19f9dd51
tests: test call of variadic function with no arguments
2020-04-12 01:37:34 +02:00
Alexander Medvednikov
4b029567e5
tests: test string literal indexing and mutable array filter
2020-04-11 23:32:00 +02:00
Alexander Medvednikov
39245f088a
array: test !in and filter
2020-04-11 23:01:50 +02:00
Alexander Medvednikov
449d839684
checker: make sure functions return
2020-04-11 21:50:14 +02:00
Alexander Medvednikov
581d836de6
!in operator
2020-04-11 21:31:54 +02:00
Alexander Medvednikov
1b6ae00966
os: rename os_nix.v to os_nix.c.v
2020-04-11 20:43:17 +02:00
lutherwenxu
dc4db87be3
vlib: use new filename format
2020-04-11 19:51:32 +02:00
Alexander Medvednikov
f91e3a5d3c
cgen: arr[i] +=, /=, -=
2020-04-11 19:07:03 +02:00
Alexey
d078e6bb08
net: check if socket descriptor is valid
2020-04-11 19:06:01 +02:00
Alexey
1fde205f97
time: return optional value directly
2020-04-11 18:56:39 +02:00
Alexey
0050c1915b
cgen: call module `init` function if available
2020-04-11 18:38:51 +02:00
Alexander Medvednikov
d0ac69d12e
parser: fix sizeof(&Foo)
2020-04-11 18:38:25 +02:00
yuyi
ea960b2ce2
parser: fix inter literal format error
2020-04-11 17:25:39 +02:00
Alexey
df825506fd
cgen: fix check for array equality
2020-04-11 17:25:25 +02:00
Alexander Medvednikov
63d747042e
cgen: fix sizeof(&int)
2020-04-11 16:24:25 +02:00
Delyan Angelov
61c1535199
assert: generate tos3/1 calls instead of _STR (bugfix)
2020-04-11 16:18:09 +03:00
Delyan Angelov
30714d16d9
c linker: pass -Xlinker -z -Xlinker muldefs only on Linux with -cache
2020-04-11 15:24:23 +03:00
yuyi
c1aba95d7d
parser: refactor script & repl handling
2020-04-11 15:06:26 +03:00
Daniel Däschle
be16c5b21d
parser: better error on short init struct
2020-04-11 14:56:55 +03:00
Swastik Baranwal
6ecb6cfe8e
tests: add an operator overloading test
2020-04-11 14:39:51 +03:00
Delyan Angelov
15f4594e44
msvc: fix self compile, by avoiding explicit casting to the same type
2020-04-11 13:35:41 +03:00
Delyan Angelov
b10fcc79ba
comptime: fix #ifdef/#endif generation
2020-04-11 12:41:48 +03:00
Delyan Angelov
93d2ab200f
cheaders: fix selfcompilation with tcc
2020-04-11 12:18:26 +03:00
Delyan Angelov
6433c23a34
string: add s.strip_margin_custom/1, instead of passing varargs to s.strip_margin()
...
The reason for adding s.strip_margin_custom/1 is that
passing varargs interfere with the current implementation of the
builtin module caching.
2020-04-11 11:06:12 +03:00
Delyan Angelov
95709811e0
v: support VFLAGS, fix 'v run source.v arg after source'
2020-04-11 10:28:43 +03:00
Delyan Angelov
ba799b3f85
builder: support v.mod/@VROOT, fix -cflags and -cache
2020-04-11 09:57:31 +03:00
Alexander Medvednikov
053de0b8e3
checker: check variable mutability
2020-04-11 04:09:41 +02:00
Alexander Medvednikov
9422cd1009
parser: handle mut & receivers; fix checker_error_test
2020-04-11 02:24:00 +02:00
Alexander Medvednikov
8fbae86bb3
vfmt: skip skipped modules; add module test
2020-04-10 22:32:52 +02:00
Alexander Medvednikov
b95a47b5a7
checker: check fn main(); vfmt: fix for{}, module and module comments
2020-04-10 22:27:54 +02:00
Delyan Angelov
fdac3a1f2e
ftp.v: fix compilation
2020-04-10 23:23:42 +03:00
Delyan Angelov
4f74410125
test-fixed: always chdir to main v folder before running the tests
2020-04-10 22:40:56 +03:00
Delyan Angelov
217e6f3b8e
checker/parser: allow for fixed array with sizes defined with a const
2020-04-10 22:01:22 +03:00
lutherwenxu
514d989a27
builder: parse `.c.v` and `.js.v` correctly
2020-04-10 18:25:23 +02:00
Alexander Medvednikov
f76931c01e
cache builtin modules
2020-04-10 18:11:43 +02:00
Daniel Däschle
c815f84722
parser: fix void assign check
2020-04-10 15:53:06 +03:00
Daniel Däschle
42b3b19af4
checker: fix checker enum infix error
2020-04-10 15:44:01 +03:00
Daniel Däschle
adb379dd63
parser: fix string position
2020-04-10 15:40:52 +03:00
Delyan Angelov
83dfc6b9b9
checker: add more checks for multivar assignments
2020-04-10 15:38:43 +03:00
Delyan Angelov
3573030b9b
checker: fix error position for assignment expression
2020-04-10 15:14:05 +03:00
Delyan Angelov
3ea563291c
big.v: use again @VROOT/ for #flags
2020-04-10 13:09:04 +03:00
Delyan Angelov
60d6543733
comptime: support @VROOT again
2020-04-10 13:02:00 +03:00
yuyi
7f87ac996d
test: fix vlib/math/big/big_test.v
2020-04-10 12:26:15 +03:00
Daniel Däschle
0f11d883fa
checker: fix error messages and add checker tests
...
* checker: fix error messages
* tests: fix command and ignore defect output
2020-04-10 11:59:07 +03:00
Delyan Angelov
74ac9ef195
builder: write intermediate .c files in the vtmp folder again
2020-04-10 11:55:04 +03:00
Delyan Angelov
7d564e9791
cgen: skip inc generation for ForCStmt, when empty in the v source
2020-04-10 10:00:14 +03:00
Alexander Medvednikov
d5fb68e3d6
vfmt: fix struct init; run on struct_test.v
2020-04-10 00:36:50 +02:00
Alexander Medvednikov
9b2511133d
vfmt: lots of fixes; cmd/v: -keepc;
2020-04-10 00:30:43 +02:00
Daniel Däschle
32550c6d69
scanner: even better error messages
2020-04-10 00:09:34 +02:00
Daniel Däschle
320fad49c5
checker: check enum
2020-04-09 19:23:49 +02:00
Alexander Medvednikov
6ac64c8586
parser: register #flags
2020-04-09 16:39:53 +02:00
Alexander Medvednikov
2b685fc80a
table: bring back parse_cflag()
2020-04-09 15:59:22 +02:00
Daniel Däschle
c0d86eb651
cgen: printing pointer should print the address
2020-04-09 15:35:52 +02:00
Alexander Medvednikov
f508955b64
vfmt: fix mod.Type; run vfmt on ast.v
2020-04-09 15:33:46 +02:00
Alexander Medvednikov
f3c917e0aa
fmt: fix array receivers; cmd/v: -showcc
2020-04-09 15:05:06 +02:00
Alexander Medvednikov
d7ae9d7279
cgen: optional fixes; make http compile
2020-04-09 14:03:47 +02:00
yuyi
87df587f5a
parser: fix script and repl error
2020-04-09 12:46:16 +02:00
Alexey
384d401af0
math: fix `bits_test`
2020-04-09 12:43:37 +02:00
Daniel Däschle
3fbf91a044
cgen: printing pointers
2020-04-09 12:29:29 +02:00
Delyan Angelov
806f86e4e2
assert: pretty print function calls too
2020-04-09 13:24:26 +03:00
Alexey
56c3a8b9a2
base64: fix build
2020-04-09 12:17:01 +02:00
yuyi
89b83400f5
math: fix factorial_test.v error
2020-04-09 04:21:11 +02:00
yuyi
bf20b01586
map: fix map_test.v error
2020-04-09 03:57:08 +02:00
krischerven
8f8f8c418e
cgen: implement equality on arrays
2020-04-09 03:55:37 +02:00
ka-weihe
71190c27a9
fmt: align consts
2020-04-09 01:10:08 +02:00
ka-weihe
77d41d03f5
cgen: inline
2020-04-09 00:35:13 +02:00
Alexander Medvednikov
3f480a358e
fix type_alias test
2020-04-08 22:34:21 +02:00
Daniel Däschle
1c340174b7
cgen: print nested structs
2020-04-08 22:14:01 +02:00
Alexander Medvednikov
a08e64f37f
cgen: operator overloading
2020-04-08 22:12:42 +02:00
Alexander Medvednikov
3521b7ff89
websocket: fmt example + minor fixes
2020-04-08 21:21:58 +02:00
Abdullah Atta
6f8f8d7b1b
websocket: eventbus and other cleanup
2020-04-08 21:19:01 +02:00
Alexander Medvednikov
b40fdd9089
scope: find_const
2020-04-08 19:47:20 +02:00
Leah Lundqvist
b28ab2511c
websocket: move library files to root of module
2020-04-08 19:44:30 +02:00
Alexander Medvednikov
fa6aaad6df
checker: handle `x := x`
2020-04-08 19:15:19 +02:00
Daniel Däschle
03c307a8c0
parser: fix struct name error
2020-04-08 19:08:54 +02:00
hazohelet
78fc9bd12b
fmt: short_module for enum values
2020-04-08 18:55:50 +02:00
Daniel Däschle
d38acb5487
cgen: fix enum print case
2020-04-08 18:55:10 +02:00
Delyan Angelov
3fd547f2e5
flag: fix compilation of programs using flag module
2020-04-08 19:49:32 +03:00
Delyan Angelov
292b165abe
tests: use the yellow color for 'the ok, fail, skip, total' line too
2020-04-08 18:49:00 +03:00
Delyan Angelov
e10290eb8e
tests: make the SKIP and FAIL labels more distinctive
2020-04-08 18:42:05 +03:00
Alexander Medvednikov
7a218286b3
cgen: fix returning optional consts; fix csv test
2020-04-08 17:21:36 +02:00
Delyan Angelov
3abbdd4a39
tests: fix vlib/os/environment.v
2020-04-08 18:01:19 +03:00
hazohelet
10c4c44d03
parser: allow C struct declaration that lacks body
2020-04-08 16:54:49 +02:00
Daniel Däschle
a61654009f
tests: change skip color to yellow instead of red
2020-04-08 16:52:40 +02:00
krischerven
bcb9d90abb
cgen: remove redundant spaces in generated C
2020-04-08 16:52:07 +02:00
Delyan Angelov
5247d5924e
tests: stats_test.v, pcg32_test.v, splitmix64_test.v now also pass
2020-04-08 17:29:43 +03:00
Daniel Däschle
6bba7d4e3a
cgen: enum str()
2020-04-08 15:54:38 +02:00
Delyan Angelov
1388532bd4
tests: fix crc32_test.v
2020-04-08 16:48:13 +03:00
Delyan Angelov
a8fe3a59b0
tests: fix sha1 test by fixing << | expressions with explicit parenthesis for now.
2020-04-08 16:30:19 +03:00
Alexander Medvednikov
80888b9518
tests: fix fmt test
2020-04-08 14:25:08 +02:00
Alexander Medvednikov
8426db7fe5
copy thecodrr/vws to vlib/net/websocket
2020-04-08 14:22:31 +02:00
Alexander Medvednikov
5ef5712e91
vfmt: do not generate a space if the comment is empty
2020-04-08 14:19:13 +02:00
Alexander Medvednikov
2e78051933
tests: fix in_expression_test
2020-04-08 13:56:09 +02:00
Alexander Medvednikov
eb78396307
parser: fix prefix precedence
2020-04-08 13:53:11 +02:00
Delyan Angelov
c00ec77737
tests: fix compilation of parser_test.v
2020-04-08 05:57:36 +03:00
Delyan Angelov
ef19aa1de6
assert: fix line position, pretty print float literals and casts
2020-04-08 05:47:29 +03:00
Delyan Angelov
3bad02abdd
cgen: do comparison of f32/f64 values for == and != by calling f64_eq(a,b) and f64_ne(a,b)
2020-04-08 03:51:06 +03:00
Delyan Angelov
8e06f4e519
tests: rename vlib/rand/rand_test.v to random_numbers_test.v to fix sporadic CI fails
2020-04-08 03:04:04 +03:00
Delyan Angelov
b9ec1479e4
checker: allow again fallthrough in or{} blocks of option calls without assignment
2020-04-08 02:56:24 +03:00
Alexander Medvednikov
7ff0c3aaa9
cgen/parser: fix unions
2020-04-08 01:20:55 +02:00
Alexander Medvednikov
cdcb8b6c06
fmt: ` ` fix
2020-04-08 01:04:08 +02:00
yuyi
9984691eaf
parser: fix float_test.v
2020-04-08 01:00:58 +02:00
Alexander Medvednikov
d54150cd22
vfmt: fix struct init indent and wrapped lines
2020-04-08 00:59:28 +02:00
Alexander Medvednikov
2fbed2f880
cgen: fix _ = ...
2020-04-08 00:46:16 +02:00
ka-weihe
7406abe3b6
map: use strcmp and update wyhash
2020-04-08 00:02:15 +02:00
Daniel Däschle
59ac0bd46b
cgen: print bool correctly in interpolation
2020-04-07 23:26:20 +02:00
Delyan Angelov
582ee9e643
urllib: put braces in << | expressions in urllib.v to make test pass
2020-04-07 22:58:29 +03:00
Delyan Angelov
cb52dd85e7
tests: add an isolated test case for long struct names with capitalization
2020-04-07 22:03:20 +03:00
Delyan Angelov
589b932f19
compiler: more permissive structure names, that allow URL as a struct name
2020-04-07 22:00:25 +03:00
Alexander Medvednikov
6bbd1943dd
cgen: fix &string cast; vfmt fixes
2020-04-07 18:51:44 +02:00
Daniel Däschle
4aedef367c
cgen: print bool and string correctly in struct
2020-04-07 17:52:15 +02:00
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