Alexander Medvednikov
|
2254f41722
|
autofree: free all vars in parent scopes recursively
|
2020-11-09 15:56:28 +01:00 |
Nick Treleaven
|
c76e486765
|
parser: implement `T.name` for generic types (#6783)
|
2020-11-09 14:35:26 +01:00 |
Alexander Medvednikov
|
1c257abc23
|
autofree: simplify: merge tmp arg logic with scope vars
|
2020-11-09 14:24:46 +01:00 |
Alexander Medvednikov
|
507d724ee6
|
autofree: free before return tests
|
2020-11-09 11:54:45 +01:00 |
KJ Lawrence
|
7108f89b69
|
pg: fix exec & exec_param_many (#6782)
|
2020-11-09 08:22:16 +01:00 |
div72
|
b0053d8910
|
x.json2: change default number type to i64 (#6773)
|
2020-11-09 07:37:53 +01:00 |
Carlos Esquerdo Bernat
|
ba366b126f
|
ws: handle close on client quit (#6776)
|
2020-11-08 20:36:42 +02:00 |
spaceface777
|
3c83551dfe
|
parser: fix treating JS fn calls as type casts (#6779)
|
2020-11-08 20:33:55 +02:00 |
Tomas Hellström
|
68cfbd6d66
|
websocket: fix autobahn test to always use latest v(#6780)
|
2020-11-08 17:46:06 +01:00 |
pancake
|
af5836202c
|
js: fix wrong filename and invalid backend selected when using -o .js (#6777)
|
2020-11-08 17:45:32 +01:00 |
pancake
|
2994e7150f
|
vweb: check function and route parameter count (#6761)
|
2020-11-08 09:14:24 +01:00 |
Delyan Angelov
|
6da8454b3b
|
builder: a small -usecache fix, when v is run in subfolders
|
2020-11-08 09:18:05 +02:00 |
Delyan Angelov
|
4b35495fbe
|
all: support VMODULES environment variable (defaulting to ~/.vmodules)
|
2020-11-08 08:07:17 +02:00 |
Delyan Angelov
|
0ba5544446
|
checker: add a check for `ptr = Abc{}`
|
2020-11-07 21:19:46 +02:00 |
Nick Treleaven
|
931882d720
|
checker: support ?T, &T generic return types (#6772)
|
2020-11-07 18:27:10 +02:00 |
Tomas Hellström
|
b47c23b73e
|
x.websocket: fix the uri port parsing problem. Make failures more informative (#6775)
|
2020-11-07 18:14:33 +02:00 |
Swastik Baranwal
|
6354fa031c
|
checker: add more checks for index_expr (#6737)
|
2020-11-07 14:55:05 +01:00 |
Nick Treleaven
|
125650c986
|
cgen: fix using brackets for match expression (#6768)
|
2020-11-07 14:47:27 +01:00 |
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 |