Alexander Medvednikov
0e8c7ca2e3
autofree: fix string reassignment
2020-11-07 04:00:45 +01:00
Nick Treleaven
62cae1ba00
parser: parse func<T>() when T is a map or array type ( #6765 )
2020-11-07 02:55:28 +01:00
spaceface777
1d706674f2
cgen: don't generate a default expr if a function ends with return
( #6766 )
2020-11-06 18:46:41 +02:00
Ned Palacios
6d8a7ced24
cgen: fix setting nested map elements fields ( #6744 )
2020-11-06 16:32:44 +02:00
spaceface777
a9e9554b11
all: fix most C warnings ( #6758 )
2020-11-06 16:26:59 +02:00
Delyan Angelov
98e8894d90
x.websocket: more informative errors
2020-11-06 16:10:22 +02:00
Alexander Medvednikov
3e5871ffb3
autofree: disable optional_return test for now
2020-11-06 10:30:27 +01:00
Alexander Medvednikov
212e6fe52c
autofree: do not run in builtin
2020-11-06 10:13:05 +01:00
Delyan Angelov
b14f779853
vweb: add a placeholder for checking route validity at startup
2020-11-05 22:59:11 +02:00
Delyan Angelov
d34c5b767b
vfmt: keep the source fn type alias names, instead of the expanded fn declarations
2020-11-05 20:21:37 +02:00
Delyan Angelov
26c2654632
parser: vfmt vlib/v/parser/struct.v
2020-11-05 19:55:20 +02:00
Delyan Angelov
953d102996
parser: prevent a segfault, when compiling cmd/tools/vtest-vet.v in PR 6754
2020-11-05 19:40:15 +02:00
Delyan Angelov
3f9b05a876
vfmt: skip {} for pure fn declarations (let the bodies hit the floor)
2020-11-05 18:59:36 +02:00
Delyan Angelov
e80487b35c
vfmt: support inline comments before fields in struct initializations
2020-11-05 18:49:52 +02:00
Delyan Angelov
4bf1c2fdcc
vfmt: support match a { x...y {} }
2020-11-05 18:35:14 +02:00
Delyan Angelov
35096cda3f
vfmt: support comments after interface methods
2020-11-05 18:23:45 +02:00
Larpon
4051ce869c
all: remove unused enum value and improve error message for @
tokens in scanner ( #6751 )
2020-11-05 12:59:49 +02:00
Larpon
785bf40f67
all: remove comp time '@' expansion from scanner ( #6746 )
2020-11-05 10:12:32 +02:00
Alexander Medvednikov
1b1d17cfb5
os: basic proof of concept stdout capture; autofree: small fixes
2020-11-05 08:44:37 +01:00
Carlos Esquerdo Bernat
8157f3c6ab
websocket: get port of the uri ( #6750 )
2020-11-05 06:36:50 +01:00
Nick Treleaven
ca8d23acab
table: make Table.type_to_str generate proper function type, not fn name ( #6716 )
2020-11-05 06:34:56 +01:00
Daniel Däschle
a2fc19880a
parser: fixes or block position ( #6736 )
2020-11-04 16:02:01 +02:00
Delyan Angelov
9eb655e65c
all: add .pos fields to all AST nodes, to avoid wrong positions in error messages
2020-11-04 13:34:12 +02:00
Daniel Däschle
25912673a9
cgen: fix generic json bug ( #6731 )
2020-11-04 10:21:30 +02:00
Ekopalypse
cc4bb71f29
os: prevent unnecessary dependencies when importing os
on windows ( #6741 )
2020-11-04 10:19:46 +02:00
Daniel Däschle
9d5be12517
gen: add prefix when printing type aliases ( #6701 )
2020-11-03 14:13:35 +01:00
Delyan Angelov
18f5ed671d
builder: fix -showcc with msvc
2020-11-03 12:37:04 +02:00
Delyan Angelov
aecdfb06e7
x.net: fix C fn redeclaration of C.inet_ntop (prevented compiling x.net and net together)
2020-11-03 10:06:47 +02:00
Delyan Angelov
204fd8be03
builder: improve the function redefinition detector
2020-11-03 10:00:06 +02:00
Delyan Angelov
2c3f695469
checker,parser: treat C.Struct fields as public by default
2020-11-03 09:35:44 +02:00
Delyan Angelov
ae241785bf
vfmt: fix union {}
declarations
2020-11-03 00:35:12 +02:00
Lukas Neubert
4ccb219079
clipboard: fix windows warnings and run vfmt ( #6715 )
2020-11-02 23:00:29 +01:00
Nick Treleaven
788de9938a
cgen: fix typeof(expr).name for generic type, pointers, etc ( #6712 )
2020-11-02 22:59:48 +01:00
Delyan Angelov
2202ee5d66
tests: add tests for continue/break in last statement of an or{}
2020-11-02 12:54:45 +02:00
Delyan Angelov
4e760c703e
checker: disallow opt_returning_string() or { ... 123 }
( closes #6711 )
2020-11-02 05:29:37 +02:00
pancake
d040af4939
checker: improve error message for: a := foo() or { println(err) }
( #6710 )
2020-11-02 04:52:35 +02:00
Alexander Medvednikov
613d6c043b
autofree: fix the tests
2020-11-02 01:39:10 +01:00
Alexander Medvednikov
06e4c45350
tests: re-enable valgrind tests
2020-11-02 01:25:16 +01:00
Daniel Däschle
d5a421e3f5
checker: add alias cast type check ( closes #6705 ) ( #6709 )
2020-11-02 01:17:35 +01:00
Delyan Angelov
3c0f4c46fa
checker: add check preventing if x:=non_optional() {}
2020-11-02 01:58:07 +02:00
Alexander Medvednikov
a0bf796926
autofree: handle SelectorExpr and fix json
2020-11-02 00:57:45 +01:00
zacanger
f0c98fb5c2
doc: fix syntax in sqlite install instructions( #6707 )
2020-11-01 22:16:18 +01:00
sunnylcw
f934ca37c9
mysql: patch for Windows and FreeBSD ( #6703 )
2020-11-01 22:15:33 +01:00
Delyan Angelov
e2505479ee
cgen: encode newlines as \n in the assert meta information
2020-11-01 17:01:45 +02:00
Delyan Angelov
e72d9c0f88
parser: protect against infinite loops in -silent mode over invalid .v files
2020-11-01 14:02:32 +02:00
Daniel Däschle
9fdf04b7ff
cgen: make generics printable ( #6700 )
2020-10-31 19:43:06 +02:00
Delyan Angelov
db59585a51
sokol.gfx: fix C.sg_depth_stencil_state compilation with tcc
2020-10-31 14:15:05 +02:00
Ned Palacios
a2a0765eff
cgen: fix setting map elements' fields ( #6699 )
2020-10-31 13:00:04 +01:00
Alexander Medvednikov
b59c5fd82b
autofree: do not free tmp vars twice
2020-10-31 08:26:54 +01:00
Delyan Angelov
70cbf56655
cgen: show more informative errors, instead of a invalid type (typ=0 idx=0)
verror panic
2020-10-30 20:26:08 +02:00
Delyan Angelov
ff93e8afee
builtin: eliminate the usage of _us32_eq for frequent builtin array operations
2020-10-30 14:11:07 +02:00
Alexander Medvednikov
791fda16d3
fmt: handle "it" in lambdas
2020-10-30 07:35:44 +01:00
Alexander Medvednikov
2c75b1397c
all: struct embedding
2020-10-30 07:09:26 +01:00
Alexander Medvednikov
dca3d13606
autofree: another lambda fix
2020-10-30 00:43:04 +01:00
Ned Palacios
ccc0cb23ed
doc: store source content, restructure module directory ( #6692 )
2020-10-29 17:21:37 +01:00
Ned Palacios
7b5a580c0c
util: split bom checking to a separate fn ( #6694 )
2020-10-29 17:21:08 +01:00
Delyan Angelov
be02ee97fb
sync: enable compilation with -autofree
2020-10-29 12:17:08 +02:00
pancake
367067dfff
pkgconfig: improve and fix the parser; move to v.pkgconfig ( #6695 )
2020-10-29 11:57:23 +02:00
Alexander Medvednikov
423044d4d6
autofree: skip lambda for now
2020-10-29 08:59:13 +01:00
Alexander Medvednikov
71dfec3c4d
autofree: generate unique names for each arg
2020-10-29 08:26:45 +01:00
Ned Palacios
ce7da85166
parser: make .parse() public ( #6693 )
2020-10-29 07:10:45 +01:00
Alexander Medvednikov
21002bf2de
autofree: fix re-assigning an optional
2020-10-29 07:06:58 +01:00
Alexander Medvednikov
f19ca6b411
autofree: simplify, use more scoping, fix expressions inside or blocks
2020-10-29 01:09:38 +01:00
Delyan Angelov
b7121786a5
table: run vfmt over atypes.v
2020-10-28 08:46:54 +02:00
Delyan Angelov
7fb739ebcf
table: make mut/not mut aggregate fields equal (for read only access)
2020-10-28 08:43:18 +02:00
Swastik Baranwal
0c987f433d
string: enable test for string escaping ( #6688 )
2020-10-27 15:25:44 +01:00
pancake
36c5eab799
all: add #pkgconfig directive using the new vlib modules ( #6673 )
2020-10-26 18:05:18 +01:00
Delyan Angelov
cf21c63183
v.vcache: extract v.vcache to a separate module, to test it and reuse it
2020-10-26 18:37:37 +02:00
Delyan Angelov
0c192cfd64
tests: fix warnings when doing ./v -W -progress -check-syntax test-fixed
2020-10-26 14:41:57 +02:00
Delyan Angelov
535c4ed0d6
builder: return early in run_compiled_executable_and_exit, when -check-syntax is passed
2020-10-26 11:23:28 +02:00
Rolf Schmidt
3f5be0f4fc
mysql: fix unwrapped unsafe code of mysql lib ( #6680 ). ( #6681 )
2020-10-26 11:21:28 +02:00
Delyan Angelov
60cc8ac39c
vcache: use 2x wyhash.sum64_string(hk,x).hex_full(), instead of md5.sum(hk.bytes()).hex()
2020-10-25 09:22:31 +02:00
Delyan Angelov
5cb31c2c8f
builder: fix support for tcc on windows (openlibm.o)
2020-10-25 03:35:34 +03:00
Delyan Angelov
5f6259dde6
v: add VCACHE support for thirdparty object files and for v build-module
2020-10-25 03:09:07 +03:00
Delyan Angelov
89daec4e93
ci: run vfmt over compile.v and checker.v
2020-10-24 20:41:52 +03:00
Delyan Angelov
8b01146b90
compiler: implement -W and -reuse-tmpc
2020-10-24 20:34:50 +03:00
Alexander Medvednikov
42da37e900
autofree: fix if expressions
2020-10-24 19:06:31 +02:00
Delyan Angelov
23ee3018c3
tools: add v test-vet
2020-10-24 16:37:58 +03:00
Delyan Angelov
296a6095a4
builder: vfmt compile.v
2020-10-24 15:48:11 +03:00
Delyan Angelov
8f85396a31
builder: use unique .tmp.c and .tmp.c.rsp files, and rm them on successfull non debug builds.
2020-10-24 15:08:45 +03:00
Delyan Angelov
ac6fad6a63
checker: fix comptime custom defines usages, add tests
2020-10-24 15:06:51 +03:00
Larpon
e97d3af4b1
tcc: fix 'tcc: error: library atomic
not found' on older Ubuntu distros ( #6672 )
2020-10-24 13:49:57 +03:00
Alexander Medvednikov
c2e9be5a45
cgen: use even more efficient array.delete_last()
2020-10-23 23:04:22 +02:00
Alexander Medvednikov
334497fdc0
cgen: use more efficient array.pop()
2020-10-23 22:52:50 +02:00
Alexander Medvednikov
3b3501cf09
autofree: if expression fixes
2020-10-23 22:50:22 +02:00
Delyan Angelov
8ffbcdc553
cgen: extract g.new_ctemp_var/2, g.new_ctemp_var_then_gen/2 and g.gen_ctemp_var from gen_assert_stmt
2020-10-22 19:48:06 +03:00
Delyan Angelov
66787b05d6
cgen: support most kinds of ast.PrefixExpr in gen_assert_metainfo
2020-10-22 19:25:07 +03:00
Delyan Angelov
f7698ea160
v symlink: fix windows PATH setting (cmd.exe needs C: not c:)
2020-10-22 17:31:37 +03:00
Alexander Medvednikov
66b8462d7a
autofree: handle method chains
2020-10-22 03:51:28 +02:00
Delyan Angelov
ab137e4164
cgen: print results of failed callexprs in assert fn() == fn2()
( #6665 )
2020-10-21 21:58:40 +02:00
Alexander Medvednikov
6d11caf784
autofree: string.replace() test
2020-10-21 19:44:31 +02:00
Swastik Baranwal
019e3b2f4a
checker: add error for ast.PrefixExpr on the left side of decl_assign ( #6660 )
2020-10-21 17:37:30 +02:00
Delyan Angelov
d67e177733
ci: run v vet
over cmd/tools and cmd/v too
2020-10-21 15:26:29 +03:00
Delyan Angelov
9322e91d1b
v test-fmt: add 1 sec sleep before rebuilding vfmt, to avoid its parallel recompilation afterwards
2020-10-21 15:20:07 +03:00
Delyan Angelov
87f659a0dc
ci: fix should_recompile_tool/2
2020-10-21 15:07:57 +03:00
Delyan Angelov
1aa6c125d9
ci: fix v self
2020-10-21 13:43:18 +03:00
Delyan Angelov
02db94c4bc
v test-fmt: reuse v.util.should_recompile_tool/2, extracted from v.util.launch_tool/3
2020-10-21 12:54:10 +03:00
Delyan Angelov
dab66593fc
vlib: run vfmt over vlib files, so that v doc -m vlib/
can run without warnings
2020-10-21 12:54:10 +03:00
Ned Palacios
5b1ab3b0bb
vdoc: use maps, enum-based categorization; fixes ( #6659 )
2020-10-21 11:26:33 +03:00
Delyan Angelov
f3732b730a
term: replace assert with panic to enable build-module for it too
2020-10-21 08:49:07 +03:00
Enzo
21db4b338b
parser: clean error when nesting unsafe
( #6656 )
2020-10-20 22:57:24 +03:00
Delyan Angelov
5c93f942be
docs,tests: add project_with_c_code_2 (passing structs from C to V to C)
2020-10-20 17:59:48 +03:00
Delyan Angelov
0e55534c6e
cgen: fix spurious autoref bug, for struct init of a &C.type field, with a byteptr value
2020-10-20 16:28:33 +03:00
Alexey
74ebce6b1f
vdoc: fix generating documentation for 3rd-party modules ( #6651 )
2020-10-20 02:52:56 +02:00
Lukas Neubert
f37e936321
pg, sqlite, mysql: run vfmt ( #6650 )
2020-10-19 20:11:04 +02:00
Alexander Medvednikov
37d6503437
parser: do not allow fn consts
2020-10-19 13:48:39 +02:00
Delyan Angelov
0d31b39f11
cgen: improve error message for <inttypes.h>
2020-10-19 12:44:53 +03:00
Delyan Angelov
d89986dd5e
cgen: use a guarded include for <inttypes.h> too
2020-10-19 12:18:22 +03:00
Delyan Angelov
92d9569d5d
checker: fix #include with @VROOT
2020-10-18 22:31:21 +03:00
Alexander Medvednikov
396dca7f48
checker: handle bad $if
values
2020-10-18 21:22:37 +02:00
Alexander Medvednikov
30214a7700
Revert "cgen: enable new if expression implementation everywhere"
...
This reverts commit 958577b98b
.
2020-10-18 20:19:52 +02:00
Alexander Medvednikov
958577b98b
cgen: enable new if expression implementation everywhere
2020-10-18 20:14:58 +02:00
Delyan Angelov
9cf5c9ac43
tests: simplify print mode logic
2020-10-18 20:49:25 +03:00
Delyan Angelov
2440413310
tests: turn off live_test.v on macos for now (due to frequent false positives)
2020-10-18 19:45:49 +03:00
Delyan Angelov
7bc94fff9a
tests: implement compact progress mode (the old one is available with -expand)
2020-10-18 19:27:29 +03:00
Alexander Medvednikov
8a68714095
cgen: new experimental simple if expression implementation
2020-10-18 15:55:18 +02:00
Delyan Angelov
2f149e6984
vfmt: fix merged param warnings in sokol's particles example and vlib/x/net/udp.v
2020-10-18 13:45:13 +03:00
Delyan Angelov
44753e62ab
builder: enable v run x_test.v
to allow universal make/compile commands in vim/emacs
2020-10-18 10:34:40 +03:00
Delyan Angelov
8b2e704741
examples: make v -prod build-examples
pass without warnings/errors
2020-10-18 09:48:13 +03:00
Delyan Angelov
dd96ba0d24
vfmt: fix type TwoSameArgs = fn (i int, j int) string
formatting
2020-10-18 08:54:29 +03:00
Delyan Angelov
5c4ba3474b
vfmt: fix init_fn gg.FNCb = voidptr(0)
when vfmt-ing gg.v
2020-10-18 08:42:08 +03:00
Alexander Medvednikov
55536bb364
autofree: handle more statements
2020-10-18 00:48:06 +02:00
Swastik Baranwal
acc85be5ae
checker: disallow type casting to none
( #6635 )
2020-10-17 20:02:30 +03:00
Delyan Angelov
9309a07438
net.openssl: update custom missing headers message
2020-10-17 19:30:50 +03:00
Lukas Neubert
dea8662d6b
cli: show help for empty root command ( #6636 )
2020-10-17 19:06:27 +03:00
Delyan Angelov
3c2202572b
cgen: produce cleaner error on missing C headers (with optional explanation) ( #6637 )
...
Implements support for `#include <openssl/rand.h> # Please install OpenSSL`.
2020-10-17 18:27:06 +03:00
Delyan Angelov
aad122334b
vlib: fix warnings due to the vfmt change
2020-10-17 16:26:56 +03:00
Delyan Angelov
8d88b73512
parser: fix formatting
2020-10-16 17:47:23 +03:00
Delyan Angelov
140166e1cd
interpolation: support '' (rounding like in C)
2020-10-16 17:28:11 +03:00
Delyan Angelov
11ee68e799
cgen: fix an interface index generation bug
2020-10-16 15:22:25 +03:00
Delyan Angelov
eab0974e7d
net: allow more accurate profiling, using res := C.xxx return res
instead of return C.xxx
2020-10-16 00:43:55 +03:00
Delyan Angelov
6cea20e427
tests: fix warnings in live_test.v
2020-10-15 23:15:00 +03:00
Enzo
b083f4014b
fmt: fix multiple things and format most of the compiler ( #6631 )
...
Format expressions inside string interpolation like the rest (it used to be a+b instead of a + b, not too sure why)
Fix formatting some match branches when there were only one statement inside (it was inlined)
Fix parsing and formatting some comments edge case on struct field init. You should check out this test because the result is a bit different from before. I personally find it more logical but I would understand if the former format was to stay
Fix formatting of void-returning function signature
2020-10-15 22:12:59 +02:00
Delyan Angelov
d261844da0
vweb: fix warnings about fn f(x, y Type)
2020-10-15 22:04:42 +03:00
Nick Treleaven
3c336b566d
checker: add check_expected() which returns an optional error ( #6623 )
2020-10-15 17:30:36 +02:00
Alexander Medvednikov
0dfd51408e
autofree: use scopes to avoid dups
2020-10-15 16:26:59 +02:00
Daniel Däschle
df82ef6bc7
base64: encode_url ( #6622 )
2020-10-15 16:04:06 +02:00
Delyan Angelov
31ef921ef2
ci: fix warnings/errors due to the vfmt change
2020-10-15 16:17:52 +03:00
Delyan Angelov
50a2b033b7
ci: fix failing tests on windows too
2020-10-15 15:54:44 +03:00
Delyan Angelov
5d4cce3e95
ci: fix failing tests
2020-10-15 15:42:16 +03:00
Alexander Medvednikov
8b13f3b53f
fmt: fix tests
2020-10-15 12:45:34 +02:00
Alexander Medvednikov
3d4ab7de1e
checker: update tests
2020-10-15 12:39:32 +02:00
Alexander Medvednikov
7da1afa140
all: switch to the new fn arg syntax everywhere; add lots of vfmt -verify tests
2020-10-15 12:32:28 +02:00
Alexander Medvednikov
982056894e
fmt: use f(x int, y int)
instead of f(x, y int)
2020-10-15 12:00:46 +02:00
Swastik Baranwal
314fae7446
checker: add more checks for hash_stmt ( #6615 )
2020-10-15 11:58:01 +03:00
Delyan Angelov
44a42b7273
ci: fix parser.v formatting
2020-10-15 11:41:43 +03:00
Delyan Angelov
6326b6d58e
parser: add helper method p.trace/2
2020-10-15 11:09:19 +03:00
JalonSolov
a4cc1ab7e3
all: cleanup more match statements ( #6616 )
2020-10-15 08:08:27 +03:00
Delyan Angelov
3795aaab5c
v test-fmt: reformat some skipped files, comment on the remaining ones
2020-10-15 00:39:09 +03:00
Delyan Angelov
46c5a2c8fc
v test-fmt: fix some embedded comments in expressions
2020-10-14 22:52:33 +03:00
Delyan Angelov
c33a748344
vfmt: handle more comments in interface/struct init/match branches
2020-10-14 22:52:33 +03:00
Alexander Medvednikov
6ad5ecf569
table: add "please create a gh issue" to the "compiler bug" error
2020-10-14 21:09:10 +02:00
Delyan Angelov
3c48a6e4ce
tests: rename _test.v files with dup names (temp workaround for highly parallel testing)
2020-10-14 18:25:26 +03:00
Delyan Angelov
d1e52620c7
crypto.hmac: implement hmac.equal/2 too
2020-10-14 17:21:48 +03:00
Alexander Medvednikov
9355c60b4d
cgen: fix for mut val and enable the test
2020-10-14 13:34:49 +02:00
Alexander Medvednikov
25947a7b23
autofree: handle args in optional returns
2020-10-14 13:23:58 +02:00
Alexander Medvednikov
ea09bd5e45
checker/fmt: for mut val
fixes
2020-10-14 12:50:19 +02:00
Ekopalypse
ed7e306adc
crypto: add hmac module ( #6614 )
2020-10-14 12:25:58 +02:00
Delyan Angelov
ee0baf62ad
vdoc: fix for v doc log
2020-10-13 18:11:57 +03:00
Alexander Medvednikov
194c2c926e
doc: use the new table.type_to_str
2020-10-13 16:46:56 +02:00
Alexander Medvednikov
a07f31feae
all: for mut val in vals {
(part 1)
2020-10-13 16:27:30 +02:00
Delyan Angelov
d316f78f94
vfmt: remove the buggy f.type_to_str, use f.table.type_to_str from now on
2020-10-13 16:17:02 +03:00
Delyan Angelov
1123f4fcc9
vfmt: fix deep nested map types, using f.table.type_to_str
2020-10-13 16:08:25 +03:00
Nick Treleaven
78bcda14c4
checker: infer T from parameter of type []T
( #6611 )
2020-10-13 15:15:25 +03:00
Delyan Angelov
28dea17065
ci: prevent Periodic failure, ensure VSMTP_TEST_USER/VSMTP_TEST_PASS are set in smtp_test.v
2020-10-13 09:22:28 +03:00
JalonSolov
57d705e265
ast: minor code cleanup ( #6608 )
2020-10-12 23:11:51 +02:00
Enzo
da7d531f8f
fmt: refactor type_to_str
( #6607 )
2020-10-12 18:41:42 +03:00
Enzo
93bb7564dc
fmt: fix multiple problems with types ( #6603 )
2020-10-12 09:27:55 +03:00
scurty-labs
5e86b40469
gg: update draw_circle/arc x, y to f32 ( #6595 )
2020-10-11 20:36:18 +02:00
Delyan Angelov
62f6e65509
repl: fix reset
; make echo "print(2.0 * 3.14159)" | ./v
print only the result
2020-10-11 10:50:24 +03:00
Delyan Angelov
c7e0a27e0d
ci: fix v fmt test, by formatting cgen.v and atypes.v
2020-10-11 10:00:53 +03:00
Delyan Angelov
604b28b1c5
cgen: fix for type FdfFn = fn(...) (x,y)
2020-10-11 09:53:35 +03:00
Nick Treleaven
b677ad9ca5
checker: fix panic on match expression without results ( #6597 )
2020-10-10 15:42:40 +02:00
Enzo
6038264a4c
gen: fix slicing mutable arguments ( #6596 )
2020-10-10 12:03:23 +02:00
Alexander Medvednikov
d8d80fbf42
gg: add a missing math import and vfmt
2020-10-10 10:37:17 +02:00
Alexander Medvednikov
1332bba7af
autofree: wrap up optionals
2020-10-10 10:34:51 +02:00
scurty-labs
b2fdd7fbaf
gg: add draw_circle and draw_arc ( #6594 )
2020-10-10 10:26:08 +02:00
Xavier B
d56072eb53
vweb: fix/remove todos from assets tests ( #6593 )
2020-10-10 00:54:46 +02:00
Delyan Angelov
e862fad917
parser: support mut static x := y
in -translated mode
2020-10-09 22:24:21 +03:00
Justin Jones
04d3ca7dbe
http: fix status codes ( #6590 )
2020-10-09 18:33:16 +03:00
Nick Treleaven
36706126fd
checker - improve error for as
casting on non-sum type ( #6587 )
2020-10-09 16:12:12 +02:00
Ned Palacios
fc375a40f8
x.json2: add fast_raw_decode; support for i64 and f32 ( #6586 )
2020-10-09 16:11:55 +02:00
Nick Treleaven
f734f8167b
checker: improve error message for match branch type mismatch ( #6588 )
2020-10-09 16:11:11 +02:00
Alexander Medvednikov
c463c26983
autofree: optionals fix
2020-10-09 01:13:31 +02:00
Nick Treleaven
92630a2821
checker: error if assigning to a function ( #6581 )
2020-10-09 00:48:39 +02:00
Alexander Medvednikov
7d65e4cb10
autofree: fix and test var declarations
2020-10-08 17:10:20 +02:00
Alexander Medvednikov
1123b8259a
time: vfmt time/parse.v
2020-10-08 16:59:43 +02:00
Delyan Angelov
c3626bf2e6
vfmt: prepare for using .source_name in type_to_str
2020-10-08 14:26:12 +03:00
Swastik Baranwal
aea52af9ae
checker: add is_mut check for disallowing taking address of map's key and array's element outside unsafe ( #6573 )
2020-10-08 09:37:18 +03:00
Delyan Angelov
efce448b23
parser: always treat MainLetter(x) as a cast, even when the type is not yet known
2020-10-07 15:50:54 +03:00
Delyan Angelov
d46d607334
backporting: remove C typedef redefinitions of map_int/map_string/array_byte/array_string
2020-10-07 11:32:50 +03:00
Delyan Angelov
317a9bae5f
backporting: remove redefinition of strconv__Float64u
2020-10-07 11:06:52 +03:00
Delyan Angelov
3d0f4fd756
backporting: cleanup Makefile, use -std=gnu99 by default, honor CFLAGS and LDFLAGS (CentOS 6.9)
2020-10-07 07:05:59 +00:00
shnorbluk
b940dc4f8a
cli: help displayed when a Command has no execute function ( fix #6530 ) ( #6567 )
2020-10-07 05:39:13 +02:00
Delyan Angelov
ce302c29e4
builtin: support also [abc,def].sort(b>a)
2020-10-06 21:33:15 +03:00
Nick Treleaven
f7decfe399
checker: infer generic type T from matching fn call argument ( #6298 )
2020-10-06 15:34:02 +02:00
Delyan Angelov
8e5067421f
vet: accumulate the collected errors manually (fixes CI)
2020-10-06 10:02:35 +03:00
Delyan Angelov
70826914a7
ci: fix mut_args_warning.vv error
2020-10-06 09:38:07 +03:00
Alexander Medvednikov
256a572cbe
vet: fix vet_errors
2020-10-06 07:07:50 +02:00
Alexander Medvednikov
ed15b40529
parser: do not allow array references + explain why
2020-10-06 06:53:48 +02:00
Alexander Medvednikov
63c9b88e7f
vet: remove unnecessary &[]string
2020-10-06 06:43:28 +02:00
Alexander Medvednikov
a51c445df8
ci: vfmt -verify more important files
2020-10-06 06:32:39 +02:00
Alexander Medvednikov
d2d3289a2a
all: mark pref.Preferences field as immutable
2020-10-06 06:24:50 +02:00
Delyan Angelov
06a02c41c3
tests: reduce probability of locks during macos runs of live_test.v
2020-10-05 21:20:42 +03:00
Swastik Baranwal
d77669da80
test: add tests for disallowing map/array get element/key address ( #6568 )
2020-10-05 18:40:51 +03:00
kalapalo
4b410534dd
cgen: add C fn memfreedup to cheaders.v ( #6563 )
2020-10-05 13:14:41 +02:00
Swastik Baranwal
5f07b255bd
checker: disallow address of array and map index outside unsafe ( #6557 )
2020-10-05 13:08:30 +02:00
Ned Palacios
2b1a5d7a56
vdoc: move local scope-based doc generation to its own function ( #6565 )
2020-10-05 07:59:17 +02:00
Enzo
35a83464d0
gen: separate sumtype from classic match ( #6547 )
2020-10-04 19:50:23 +02:00
Ekopalypse
2622070f14
os: ensure that setenv creates the key on windows ( #6560 )
2020-10-04 19:43:28 +02:00
Delyan Angelov
0c174104fc
checker: allow &=,|=,^=,%= on an integer number type aliases
2020-10-04 15:29:09 +03:00
Delyan Angelov
628b136e85
checker: allow casting from floats/enums to byte
2020-10-04 14:46:24 +03:00
Marcin
aa81ebb600
scanner: fix double quotes escape ( #6474 )
2020-10-04 10:34:04 +02:00
Enzo
fd88bfbac8
fmt: fix formatting of anon args ( #6545 )
2020-10-04 06:32:47 +02:00
Leonardo Cecchi
51987e17df
pg: make exec
, q_int
and q_strings
return an optional ( #6554 )
2020-10-04 06:31:47 +02:00
Enzo
c84848c417
fmt: fix formatting enum with attributes ( #6551 )
2020-10-03 21:33:02 +03:00
vmcrash
c5e46c9e55
atoi.v: add common_parse_uint2 with error code return values ( #6550 )
2020-10-03 20:57:37 +03:00
Henrixounez
c324169af0
all: remove intermediate handling for both global definition syntaxes ( #6546 )
2020-10-03 15:41:45 +02:00
Swastik Baranwal
7e13518cc2
parser: disallow match expr at certain places ( #6490 )
2020-10-03 16:30:58 +03:00
Henrixounez
a9da4dd437
parser: fix indentation to tabs ( #6548 )
2020-10-03 14:20:41 +02:00
Delyan Angelov
de77f0ba0f
vfmt: make vlib/v/table/table.v vfmt-able
2020-10-03 12:57:21 +03:00
Enzo
677b0ba2d2
gen: access fields in multi-type sumtype match ( #6541 )
2020-10-03 11:19:43 +02:00
Delyan Angelov
7b034a54e3
vfmt: make vlib/v/table/atypes.v vfmt-able
2020-10-03 11:48:12 +03:00
Henrixounez
c9574ae7d7
syntax: new global variable declaration syntax ( #6540 )
2020-10-03 07:03:44 +02:00
Leonardo Cecchi
8ac0bd44bd
pg: avoid leaking a PGconn on connection errors ( #6543 )
2020-10-03 07:03:11 +02:00
Swastik Baranwal
c8a884f57f
checker: fix typos in chan ( #6539 )
2020-10-03 06:59:30 +02:00
kalapalo
eefe067c27
cgen: fix as
cast when sumtype is the result of a function call ( #6537 )
2020-10-03 05:04:15 +02:00
Daniel Däschle
2204bad7cf
gen: removes space on struct printing ( #6535 )
2020-10-02 13:06:02 +02:00
Delyan Angelov
70c87137a9
live_test.v: wait 5 times more on macos
2020-10-02 11:38:49 +03:00
Nick Treleaven
7c86b03505
checker: don't error if last statement in match branch produces a value ( #6523 )
2020-10-02 09:33:04 +02:00
Daniel Däschle
8e8e808fc9
gen: fix sumtype custom str ( #6534 )
2020-10-02 09:32:07 +02:00
Ekopalypse
1a7ac5e382
builtin: VectoredExceptionHandler cast on x86 ( #6525 )
2020-10-02 05:17:33 +02:00
Nicolas Sauzede
c825275f7f
pref: fix whitespace in compiler message ( #6529 )
2020-10-02 05:16:16 +02:00
Henrixounez
8152b86652
checker: detect correct len expression for multidimensional array init ( #6521 )
2020-10-02 03:12:33 +02:00
Nick Treleaven
7e720a1253
pref: do not check arguments after 'run' command ( #6524 )
2020-10-01 23:30:39 +03:00
Henrixounez
a57e01fee7
parser: dont allow single letter enums ( #6526 )
2020-10-01 23:29:49 +03:00
spaceface777
f55f2fb9d1
gen: optimize str == ''
to str.len == 0
for performance ( #6527 )
2020-10-01 23:28:44 +03:00
Delyan Angelov
ac384db71f
builder: cleanup .timing_message/2
2020-10-01 18:21:34 +03:00
Delyan Angelov
a0e4be04be
compiler: print more suggestions, without a good specific match
2020-10-01 17:27:31 +03:00
Henrixounez
0f1ed1ca09
scanner: add an error for unfinished string literals ( #6519 )
2020-10-01 16:40:59 +03:00
Delyan Angelov
11b16a63cf
checker: add a suggestion for misspelled struct field name errors
2020-10-01 15:36:47 +03:00
Alexander Medvednikov
f534edc371
doc: replace os.base_dir with os.dir
2020-10-01 01:30:22 +02:00
Alexander Medvednikov
4879661f5a
os: remove base_dir(); dir() and base() fixes
2020-10-01 01:25:52 +02:00
Enzo
324d547cdb
parser: allow multiple types in match branch ( #6505 )
2020-10-01 01:07:36 +02:00
Nick Treleaven
18be7b115a
checker: disallow most statements in if/match expression branches ( #6509 )
2020-09-30 16:06:22 +02:00
Lukas Neubert
3a8be4d8d9
os: home_dir() remove trailing slash ( #6512 )
2020-09-30 16:02:54 +02:00
Lukas Neubert
76e373a5f4
v help: fix newline ( #6510 )
2020-09-30 15:57:22 +03:00
Larpon
4cd5153b32
android: enable autofree ( #6503 )
2020-09-30 07:40:05 +02:00
Alexander Medvednikov
ae7689f739
autofree: simplify, clean up, and fix complex arg exprs
2020-09-30 07:27:24 +02:00
Daniel Däschle
c38a050125
cgen: fix array and map printing ( #6508 )
2020-09-30 01:26:27 +02:00
Delyan Angelov
dc954bbb03
all: use macos
consistently in os.user_os and the compiler
2020-09-29 22:32:20 +03:00
JalonSolov
2fd6c05445
fonts: fix so it does not try for RobotoMonoMono.ttf ( #6507 )
2020-09-29 13:20:37 +03:00
Ned Palacios
1aec041371
json: fix encode/decode support for generic structs ( #6489 )
2020-09-29 03:15:00 +02:00
Nick Treleaven
05dcdfd267
pref: error if unknown argument passed to v
( #6487 )
2020-09-29 03:13:54 +02:00
Nick Treleaven
9f33b33803
parser: warn about ambiguous infix/prefix op token ( #6491 )
2020-09-29 03:13:10 +02:00
Alexander Medvednikov
9e31335744
pref: remove obsolete flags
2020-09-29 02:54:05 +02:00
Daniel Däschle
06cade6c31
all: change .ReturnType and .Type to .return_type and .typ ( #6494 )
2020-09-28 06:13:38 +02:00
Delyan Angelov
f9ce7f3542
vfmt: fix formatting for [4][4]int static arrays
2020-09-27 22:46:33 +03:00
Delyan Angelov
cbd7c7d8c6
tests: support VTEST_ONLY in vlib/v/fmt/fmt_keep_test.v too
2020-09-27 22:01:46 +03:00
Delyan Angelov
cfdf66c129
ci: run vfmt over checker.v
2020-09-27 17:08:28 +03:00
Delyan Angelov
220f3cc2b9
bare: update Signo enumeration
2020-09-27 16:48:25 +03:00
Delyan Angelov
a6d525eb92
ci: fix is not a variable and cannot be locked
failing tests
2020-09-27 16:32:46 +03:00
Emily Hudson
3a869c726b
builtin: fix definition of VectoredExceptionHandler ( #6495 )
2020-09-27 15:56:30 +03:00
Delyan Angelov
03258db26d
ci: other mut vlib test fixes
2020-09-27 11:18:55 +03:00
Delyan Angelov
aa889b0edc
ci: fix vlib/x/websocket tests
2020-09-27 11:10:56 +03:00
Delyan Angelov
7c6695317c
Revert "ci: fix building v from vc"
...
This reverts commit b3f503e0ce
.
2020-09-27 10:36:26 +03:00
Delyan Angelov
b3f503e0ce
ci: fix building v from vc
2020-09-27 10:34:11 +03:00
Alexander Medvednikov
c5dc792c5d
fmt: args => params
2020-09-27 03:46:15 +02:00
Alexander Medvednikov
3d5292b63f
tcp/udp: fix mutability
2020-09-27 03:40:59 +02:00
Alexander Medvednikov
fca344d1fb
all: fn args => params
2020-09-27 03:32:56 +02:00
Alexander Medvednikov
e2c7126d11
checker: verify mutability of method args
2020-09-27 03:14:24 +02:00
Delyan Angelov
af37c7ac6b
gg: prevent messages about missing font variants without -d debug_font
2020-09-26 09:36:46 +03:00
Daniel Däschle
d782de5b00
gen: struct str fixes ( #6483 )
2020-09-25 23:12:33 +02:00
Delyan Angelov
b999d01de7
runtime: use GetCurrentProcessorNumber for runtime.nr_cpus()
2020-09-25 22:02:29 +03:00
Nick Treleaven
fbae0a7274
checker: warn if fn looks like a test fn but filename doesn't end in _test.v
( #6469 )
2020-09-25 19:26:11 +03:00
spaceface777
b44620d065
time: use linux high-precision timers on Android as well ( #6476 )
2020-09-25 18:02:02 +03:00
spaceface777
aa1d5fcbdd
flag: fix panic if flag value was not provided ( #6478 )
2020-09-25 16:31:35 +03:00
spaceface777
ae48b709ed
gg: don't call os.is_file()
on Android (the font is part of the APK there) ( #6475 )
2020-09-25 13:06:20 +03:00
Daniel Däschle
abc98c273c
parser: require assign on type alias ( #6477 )
2020-09-25 12:02:32 +02:00
Lukas Neubert
2ea94d621f
gg: fix loading variants of many fonts in new_ft() ( #6468 )
2020-09-25 11:52:57 +02:00
spaceface777
0b95d72354
checker: comp. if branch logic fix ( #6473 )
2020-09-25 12:48:27 +03:00
Daniel Däschle
90d1a689db
gen: fix str gen for pointers in structs ( #6462 )
2020-09-24 21:14:16 +02:00
Daniel Däschle
e384dea8ac
checker: add error for amp on literals ( #6467 )
2020-09-24 21:13:46 +02:00
Alexander Medvednikov
47a62b12d4
autofree: advanced expr test
2020-09-24 19:22:16 +02:00
Alexander Medvednikov
403cd0d915
Revert "gen: scape string function in gen/str.v ( #6452 )"
...
This reverts commit 60fbcc37fc
.
2020-09-24 18:19:18 +02:00
Marcin
60fbcc37fc
gen: scape string function in gen/str.v ( #6452 )
2020-09-24 18:18:10 +02:00
Nick Treleaven
be2ac0ba89
fmt: fix writing ConcatExpr ( #6466 )
2020-09-24 18:04:39 +02:00
Delyan Angelov
dbce01792c
gg: try 3 different fonts in system_font_path on MacOS
2020-09-24 17:09:08 +03:00
Delyan Angelov
1f21bc4b49
gg: bugfix on missing font file, remove last empty line in v doctor
2020-09-24 16:53:06 +03:00
Nick Treleaven
3925c3fa20
parser: disallow index variable with range for
( #6464 )
2020-09-24 15:52:44 +03:00
Marcin
fb45e2e046
flag: fix panic on single -
2020-09-24 15:50:44 +03:00
Uwe Krüger
72ecc222ee
fmt: support select
expressions ( #6460 )
2020-09-23 22:22:39 +02:00
Daniel Däschle
4f09ddccb4
cgen: implement sum type str gen ( #6454 )
2020-09-23 20:51:51 +02:00
Nick Treleaven
2886b1c67d
checker: require binary operands for &&, || ( #6449 )
2020-09-23 20:48:25 +02:00
Uwe Krüger
9c0758639b
cgen: fix for match {...} {
and for select {...} {
( #6441 )
2020-09-23 06:05:12 +02:00
Alexander Medvednikov
624f22e27e
all: mutability check (part 1); enable mutable sumtype args
2020-09-22 05:28:29 +02:00
Delyan Angelov
a9ef7d173f
doctor: suggest v doctor
in issue templates and C builder errors
2020-09-21 18:29:52 +03:00
Ned Palacios
744f685973
vdoc: document variables in a specific pos/scope; support v doc os File
( #6354 )
2020-09-21 17:40:39 +03:00
Swastik Baranwal
077b597bd8
scanner/parser: change error msgs for \0
and \x00
and add error for rbyte
and cbyte
( #6436 )
2020-09-21 17:34:24 +03:00
Uwe Krüger
0f1c484ad1
parser/checker: if select { ... } {
( #6434 )
2020-09-21 07:34:04 +02:00