yuyi
|
83bc9b35b1
|
ast: fix checking generic fn call with fntype arg mismatch (#12132)
|
2021-10-10 11:14:19 +03:00 |
yuyi
|
963233687e
|
v.fmt: fix fmt of 'fn(mut a &int)' (#12075)
|
2021-10-06 20:51:38 +03:00 |
yuyi
|
f1742a6f62
|
v.ast: change 'type.to_ptr()' to 'type.ref()' (#12086)
|
2021-10-06 20:49:39 +03:00 |
crthpl
|
7cf9c198fe
|
asm: add segment addressing and fix [10] (#12068)
|
2021-10-05 18:57:15 +03:00 |
yuyi
|
8789cc422c
|
v.ast: fix fmt of 'bytestr' to '&byte' (#12014)
|
2021-09-29 13:53:46 +03:00 |
crthpl
|
85b58b03a3
|
cgen: parallelize (#10844)
|
2021-09-28 10:28:04 +03:00 |
Ekopalypse
|
400ab7876b
|
ast: fix fixed array typedef generation issue (#11962)
|
2021-09-24 17:01:42 +03:00 |
Delyan Angelov
|
bf2569a9a8
|
all: support `mut volatile x := 123` declarations (#11940)
|
2021-09-22 13:06:30 +03:00 |
yuyi
|
108a01d65f
|
fmt: fix unnecessary line break in array init (fix #11448) (#11562)
|
2021-09-21 16:20:09 +03:00 |
Enzo
|
b2ecca3966
|
all: remove `size_t` (#11478)
|
2021-09-21 02:12:38 +03:00 |
Daniel Däschle
|
b63ec8fbcf
|
checker: require `params` attribute to use struct as keyword arguments in function (#11135)
|
2021-09-14 00:05:30 +03:00 |
Enzo
|
012da10517
|
ast, fmt: cleanup (#11477)
|
2021-09-13 04:08:58 +03:00 |
zakuro
|
fb20a92b1e
|
fmt: fix a bug that break generics call in string inter (#11468)
|
2021-09-11 04:47:22 +03:00 |
Enzo
|
c8471528ce
|
fmt: format long sum-types with a line for each type (#11461)
|
2021-09-10 20:56:55 +03:00 |
Daniel Däschle
|
be0c54caf9
|
checker: require or block for sumtype map (#11089)
|
2021-09-10 16:07:39 +03:00 |
Alexander Medvednikov
|
ab3adf3346
|
checker: no longer allow automatic dereferncing in `a = b`
|
2021-09-09 20:21:01 +03:00 |
Enzo
|
e3b65092d6
|
parser: deprecate `size_t` (#11443)
|
2021-09-08 13:09:32 +03:00 |
Enzo
|
cc8ee5fb84
|
all: introduce `isize` and `usize` (#11437)
|
2021-09-08 05:53:39 +03:00 |
yuyi
|
b80777df4b
|
table: fix alias of sumtype method_call (#11268)
|
2021-08-22 17:20:10 +03:00 |
Delyan Angelov
|
ec196cfcd1
|
all: support overriding individual function from .v files in .c.v or .js.v files.
|
2021-08-22 15:51:26 +03:00 |
yuyi
|
0d81d0c0c6
|
table, checker: fix sumtype array appending aggregate type values (fix #11197) (#11258)
|
2021-08-21 17:18:01 +03:00 |
yuyi
|
3d22dc1608
|
all: fix formating Foo<A,B> to Foo<A, B> (#11225)
|
2021-08-18 17:17:21 +03:00 |
spaceface
|
d2ce1f74d6
|
ast.table: fix aggregate field type equality check (#11210)
|
2021-08-18 14:09:54 +03:00 |
spaceface
|
7d9969ac17
|
all: support runtime interface conversions (#11212)
|
2021-08-17 21:00:27 +03:00 |
Delyan Angelov
|
900c37aa65
|
v.gen.c: support `T.typ` - an int for the type index of the generic type `T` (#11175)
|
2021-08-14 08:48:25 +03:00 |
Delyan Angelov
|
34d39ccb64
|
builtin: fix leak in rune.str(), fix leaks in most assert x == y statements in tests (#11091)
|
2021-08-13 18:37:34 +03:00 |
Enzo
|
da53f818df
|
all: initial support for closures (x64 / linux-only) (#11114)
|
2021-08-10 21:27:15 +03:00 |
yuyi
|
aceaaa681d
|
ast: fix formatting fn variadic of reference param (#11130)
|
2021-08-10 21:14:37 +03:00 |
pancake
|
e7b8cf17e5
|
v.gen.native: add support for assert statements for amd64 (#11117)
|
2021-08-10 10:29:44 +03:00 |
Alexander Medvednikov
|
03ed32f805
|
ast: bring back Table.free() for now
|
2021-08-08 07:07:06 +03:00 |
Alexander Medvednikov
|
eaf8b63dd2
|
cgen: fix a c2v bug with variadics
|
2021-08-08 06:23:22 +03:00 |
Daniel Däschle
|
3b116d2455
|
cgen: support embedded struct fields on sumtype common fields (#11084)
|
2021-08-06 21:26:19 +03:00 |
Daniel Däschle
|
800c0e5092
|
vlib: remove deprecated map{} usages as well as deprecated functions (#11035)
|
2021-08-04 12:44:41 +03:00 |
Daniel Däschle
|
815c4b7420
|
all: rename generic_struct_inst to generic_inst (#11044)
|
2021-08-04 03:37:27 +03:00 |
Leo Developer
|
6dcf72fe9b
|
cgen: dont generate function if its flag is false (#11021)
|
2021-08-03 03:17:22 +03:00 |
Florian Blasius
|
69f31d8d5c
|
checker: check int literal to enum cast (fix #10125) (#10348)
|
2021-08-02 07:12:29 +03:00 |
Uwe Krüger
|
6068777e03
|
parser/checker: deduce type of global from initialization expression (#11005)
|
2021-07-31 16:35:19 +03:00 |
Uwe Krüger
|
a7c2aaf35b
|
cgen: initialize globals directly for simple cases (#11002)
|
2021-07-30 19:20:45 +03:00 |
Delyan Angelov
|
06d1422a05
|
ast,checker,cgen: support simple `const x = u16(0x53)` without using _vinit()
|
2021-07-30 17:22:27 +03:00 |
Uwe Krüger
|
08aa6c08f6
|
all: more improvements for global variables (#10986)
|
2021-07-29 10:57:31 +03:00 |
Delyan Angelov
|
7547882c11
|
ci: fix failing fn_args.vv (use `zu8` as a temporary name of the unaliased `u8` type, since `uu8` is already used in fn_args.vv as a function name)
|
2021-07-29 10:14:55 +03:00 |
Alexander Medvednikov
|
1343ec7444
|
builtin: fix temporary u8 alias
|
2021-07-29 06:42:22 +03:00 |
Alexander Medvednikov
|
628498e0dc
|
table: register u8 type
|
2021-07-29 05:00:03 +03:00 |
Uwe Krüger
|
45ad48d76a
|
cgen: properly handle initialization expression for globals (#10981)
|
2021-07-28 08:11:55 +03:00 |
Delyan Angelov
|
ef0161c233
|
v.markused: handle compiling vweb, `-live` and orm example programs
|
2021-07-27 15:50:42 +03:00 |
Delyan Angelov
|
45a15755b8
|
v.builder: implement -show-callgraph
|
2021-07-24 13:32:56 +03:00 |
Delyan Angelov
|
a4c9aeab14
|
v.ast.walker: pass nodes by reference
|
2021-07-24 13:32:56 +03:00 |
Delyan Angelov
|
6313ed6a79
|
checker,cgen: fix `-os cross` support for `$if !solaris { #include <sys/ptrace.h> }`
|
2021-07-23 16:24:42 +03:00 |
Louis Schmieder
|
26db3b0995
|
orm: redesign orm (re-write it in V) (#10353)
|
2021-07-23 12:33:55 +03:00 |
Daniel Däschle
|
2c0c211c79
|
all: implement accessing embedded field and method of aggregate (#10907)
|
2021-07-23 01:14:39 +03:00 |
yuyi
|
ec87f4ee99
|
table: fix error of generics interface declaration (#10883)
|
2021-07-21 15:24:52 +03:00 |
yuyi
|
850a715c79
|
table: minor cleanup in does_type_implement_interface() (#10870)
|
2021-07-20 15:19:02 +03:00 |
Daniel Däschle
|
60b705b4c4
|
checker, gen: implement basic struct embed direct field init support (#10871)
|
2021-07-20 15:06:06 +03:00 |
Daniel Däschle
|
ad3835b598
|
parser: deprecate short struct init (#10842)
|
2021-07-20 11:17:08 +03:00 |
Delyan Angelov
|
83b0a80ff4
|
ci: fix MSVC build (delay const string initialiastion to _vinit)
|
2021-07-19 08:20:09 +03:00 |
Delyan Angelov
|
241a7b760d
|
strconv,checker,cgen: fix -cstrict compilation of hello_world.v
|
2021-07-19 01:08:48 +03:00 |
Delyan Angelov
|
48546d0f45
|
all: do compile time const evaluation for `const x = "abc" + "xyz"` and `const x = 16 * 1024 + 5` (fix const prealloc_block_size)
|
2021-07-18 22:59:18 +03:00 |
yuyi
|
a5c784830b
|
all: simplify global_scope processing (#10848)
|
2021-07-18 15:29:34 +03:00 |
shadowninja55
|
eb65ad078d
|
checker: prohibit passing non-lvalue as `voidptr` (#10838)
|
2021-07-18 15:04:16 +03:00 |
playX
|
d5e0fa6d1b
|
v.gen.js: port string methods and fix booleans (#10824)
|
2021-07-18 09:00:20 +03:00 |
Delyan Angelov
|
6edfb2c7fe
|
v.parser: eliminate PrefixExpr from `&Type(x).name` and `&Type(x)[idx]` too (fix vinix build)
|
2021-07-17 20:20:20 +03:00 |
Delyan Angelov
|
568aa742b2
|
v.parser: improve conditions for debugging ast.CastExpr parsing
|
2021-07-17 17:49:29 +03:00 |
spaceface
|
6e942bf4c2
|
v: initial support for generic interfaces and sumtypes (#10795)
|
2021-07-15 08:29:13 +03:00 |
crthpl
|
5089eb4a84
|
parser: fix pointer cast expressions hack (#10777)
|
2021-07-13 12:01:24 +03:00 |
shadowninja55
|
d1f1c5ae51
|
v doc: add attribute tags to `v doc -f html` (#10778)
|
2021-07-13 08:27:20 +03:00 |
Delyan Angelov
|
b5f1cf80a6
|
ci: fix regression bug in formatting of go_array_wait_test.v (caused by 974737f )
|
2021-07-12 10:55:30 +03:00 |
Delyan Angelov
|
974737f26b
|
vfmt: keep `module mymodule ... x := []thread MyStruct{}` as it is
|
2021-07-12 10:46:36 +03:00 |
zakuro
|
ba9b53cc4d
|
cgen: fix error when using anon generics fn that have generics struct arg (#10751)
|
2021-07-11 19:30:41 +03:00 |
Louis Schmieder
|
eb96ad11d9
|
checker: add pkgconfig to comptime if (#10692)
|
2021-07-09 18:17:04 +03:00 |
crthpl
|
d14de5fdaf
|
all: fix generic functions with pointer args (#10686)
|
2021-07-07 11:51:05 +03:00 |
Delyan Angelov
|
6aecda3be8
|
all: support `[noreturn] fn abc() { for{} }`, mark panic/1 and exit/1with it too. (#10654)
|
2021-07-04 20:24:19 +03:00 |
yuyi
|
665279938e
|
checker: fix nested generic struct init (fix #10652) (#10659)
|
2021-07-04 18:37:31 +03:00 |
Daniel Däschle
|
0f9537ece5
|
all: remove ustring (#10630)
|
2021-07-03 20:14:09 +03:00 |
yuyi
|
c0f855ace7
|
cgen: fix anon optional fn (fix #10640) (#10644)
|
2021-07-02 17:07:05 +03:00 |
yuyi
|
8628b19a3a
|
ast.table: optimize get_final_type_symbol() (#10646)
|
2021-07-02 16:59:41 +03:00 |
yuyi
|
abbf71c794
|
ast.table: cleanup type_implements_interface() (#10643)
|
2021-07-02 10:18:04 +03:00 |
yuyi
|
8b901df366
|
table: optimize generated code for an empty interface (#10624)
|
2021-07-01 12:25:40 +03:00 |
Alexander Medvednikov
|
41e88423aa
|
Revert "builtin: use == 0 instead of isnil()"
This reverts commit 8650ec6916 .
|
2021-07-01 06:21:03 +03:00 |
shadowninja55
|
06a6a8e199
|
checker: check for empty branches in match expressions (#10593)
|
2021-06-28 19:32:28 +03:00 |
Delyan Angelov
|
8650ec6916
|
builtin: use == 0 instead of isnil()
Do not rely on C inlining that may not happen for a *very* frequently
called fn in lower level code.
|
2021-06-28 10:59:14 +03:00 |
Delyan Angelov
|
c3b9eaf146
|
v.c.gen: fix codegen of auto str methods for structs having &voidptr fields
|
2021-06-28 10:05:42 +03:00 |
Alexander Medvednikov
|
7458927593
|
checker: fix global fn calls
|
2021-06-25 20:26:24 +03:00 |
shadowninja55
|
be8be3d319
|
v.parser: prohibit redeclaration of builtin types (#10563)
|
2021-06-25 13:08:56 +03:00 |
yuyi
|
e9de30373f
|
table: fix interface embedding with interface parameter (#10567)
|
2021-06-25 12:52:25 +03:00 |
yuyi
|
e3ea5c1e17
|
v.ast: cleanup Table.resolve_generic_to_concrete/3 (#10559)
|
2021-06-24 18:21:18 +03:00 |
yuyi
|
4bfe76123a
|
generics: fix generic fn type mismatch of returning a generic struct (#10553)
|
2021-06-24 12:47:36 +03:00 |
crthpl
|
500b48788e
|
parser, cgen: fix basic asm registers, fix numbered labels in addressing, support indirect branching (#10545)
|
2021-06-23 14:20:07 +03:00 |
Delyan Angelov
|
79df7f51c3
|
v: deprecate `[if ident]` in favour of `[if ident ?]`
|
2021-06-22 10:30:14 +03:00 |
Uwe Krüger
|
8f2f377cb1
|
v.checker,v.gen.c: extend auto heap mechanism to objects used as interfaces (#10529)
|
2021-06-21 07:10:10 +03:00 |
Enzo
|
44d0305ca9
|
checker,gen: remove automatic string to C string conversion (#10144)
|
2021-06-20 09:30:08 +03:00 |
crthpl
|
71b41d1042
|
ast.table: fix anonymous function declaration uniqueness for non-tcc c compilers (#10509)
|
2021-06-19 19:02:26 +03:00 |
yuyi
|
7ec55e4c51
|
v.ast: add comments for ast.AsCast (#10516)
|
2021-06-19 17:07:07 +03:00 |
Delyan Angelov
|
9f6ddb4c21
|
v.fmt: add an independent Comment.is_inline flag. Use it for fixing `[ .. //x ]` => `[ .. //x, ]`
|
2021-06-18 15:52:31 +03:00 |
yuyi
|
2298063129
|
checker: fix nested if smartcast selector exprs (fix #10372 #10379) (#10502)
|
2021-06-18 14:49:15 +03:00 |
Enzo
|
05f0f3e180
|
v.gen.c: refactor infix expression (#10485)
|
2021-06-18 14:27:52 +03:00 |
Delyan Angelov
|
39e7290416
|
v: support for `[if expr]`, part 2 (old `[if ident]` is not yet deprecated)
|
2021-06-17 18:55:20 +03:00 |
Delyan Angelov
|
69ce8baefd
|
v.ast: allow for `fn f()&IAbc{return voidptr(0)}` with no additional voidptr implicit conversions to compile
|
2021-06-16 11:07:04 +03:00 |
Emily Hudson
|
535dcac8fa
|
net: ipv6 support, merge unix+ip;[pack:x] attribute (#9904)
|
2021-06-13 23:53:38 +03:00 |
Uwe Krüger
|
2ac39d9112
|
all: new function `isreftype(T)` to know if `T` contains pointers (#10438)
|
2021-06-13 06:26:13 +03:00 |
Delyan Angelov
|
5870751769
|
v.gen.c: use the __V_architecture macro in v.pref.get_host_arch()
|
2021-06-13 00:49:30 +03:00 |
Delyan Angelov
|
dc654b0121
|
Revert "v.gen.c: use the __V_architecture macro in v.pref.get_host_arch()"
This reverts commit 5452ba4653 .
|
2021-06-12 23:15:48 +03:00 |
Delyan Angelov
|
5452ba4653
|
v.gen.c: use the __V_architecture macro in v.pref.get_host_arch()
|
2021-06-12 22:15:08 +03:00 |
Delyan Angelov
|
e70bde54dc
|
ast: improve Expr.str() for `sizeof(Type)` and `__offsetof(StructName, fieldname)`, for more informative asserts/dumps
|
2021-06-12 16:49:14 +03:00 |
Alexander Medvednikov
|
635f045b14
|
ast: make is_int() work with aliases
|
2021-06-12 14:35:38 +03:00 |
Uwe Krüger
|
daeeaef030
|
vfmt: hot fix to allow separate `array_d_gcboehm_opt.v` (#10413)
|
2021-06-11 12:00:18 +03:00 |
yuyi
|
329a6c974e
|
table, checker, cgen: implement generic fn infering fixed array (#10352)
|
2021-06-06 01:11:08 +03:00 |
Delyan Angelov
|
55ef849cd2
|
v.markused: trim unused map fns for programs that do not use them
|
2021-06-05 17:30:25 +03:00 |
crthpl
|
9553c5a4e6
|
parser: fix multiple output modifiers in asm (#10347)
|
2021-06-04 23:18:11 +03:00 |
yuyi
|
cb19079d53
|
all: move cur_concrete_types to Table (#10269)
|
2021-05-31 17:14:45 +03:00 |
Louis Schmieder
|
38796521fa
|
all: allow defer use from other scope (#10284)
|
2021-05-31 14:43:44 +03:00 |
Delyan Angelov
|
2b62dca000
|
v: support for `$if threads {}, depending on whether `go ` was used at all (#10227)
|
2021-05-27 18:36:07 +03:00 |
Lukas Neubert
|
d5cacd1e5f
|
ast: use string builder for StringInterLiteral.str() (#10207)
|
2021-05-27 10:17:51 +03:00 |
Ryan Roden-Corrent
|
306c16f0fa
|
fmt: don't break indexing in string interpolation. (#10195)
|
2021-05-25 07:45:32 +03:00 |
penguindark
|
d8d05e0106
|
all: new string interpolation in pure V (#10181)
|
2021-05-24 05:20:45 +03:00 |
Delyan Angelov
|
bf3af40f13
|
v.markused: support `./v -skip-unused -freestanding run vlib/os/bare/bare_example_linux.v` too
|
2021-05-23 16:25:34 +03:00 |
Delyan Angelov
|
a08cbd364a
|
v.checker: improve C.printf(abc) deprecation precision
|
2021-05-23 12:18:21 +03:00 |
Lukas Neubert
|
79b97fa361
|
fmt: keep names of parameters in anonymus function (#10173)
|
2021-05-23 05:54:39 +03:00 |
Delyan Angelov
|
bc01de2181
|
ast: mark ast.File{} with `[heap]`, and use []&ast.File consistently
|
2021-05-22 19:06:55 +03:00 |
Lukas Neubert
|
788520eb52
|
fmt, ast: fix usage of import aliases (#10151)
|
2021-05-21 20:33:04 +03:00 |
zakuro
|
be92f81b2e
|
checker: fix type error in `f<T>(fn (v T))` with multiple different Ts (#10154)
|
2021-05-21 06:13:04 +03:00 |
Delyan Angelov
|
da090f91d8
|
cgen: fix using and auto printing `x := [16]&Type{}`
|
2021-05-20 15:59:02 +03:00 |
Alexander Medvednikov
|
f09a5135e9
|
checker: handle builtin enum init correctly
|
2021-05-20 03:14:32 +03:00 |
Lukas Neubert
|
be189e0059
|
fmt: keep generics for selective import as fn param (#10138)
|
2021-05-19 21:25:02 +03:00 |
crthpl
|
0d44c8857e
|
checker: fix position of unknown type errors (#10110)
|
2021-05-16 04:51:23 +03:00 |
Uwe Krüger
|
7bfd89567b
|
shared: support `lock` on SelectorExpression (#10105)
|
2021-05-15 04:34:27 +03:00 |
crthpl
|
4273a9697e
|
parser: add support for flags in asm output constraints (#10103)
|
2021-05-14 12:01:15 +03:00 |
yuyi
|
14b7ce0f04
|
checker: fix generics fn return generics fn type (fix #10085) (#10088)
|
2021-05-13 12:26:13 +03:00 |
yuyi
|
ebe58dcafa
|
checker: cleanup generic structs (#10086)
|
2021-05-12 19:57:14 +03:00 |
crthpl
|
8361f714dd
|
cgen: fix deadlock when returning/breaking in `lock` (#10079)
|
2021-05-12 11:44:47 +03:00 |
Delyan Angelov
|
6f2c18f1c7
|
ci: fix `v build-tools`
|
2021-05-11 11:08:46 +03:00 |
Delyan Angelov
|
263e1ee4a4
|
ci: fix compilation of cmd/tools/vtest-cleancode.v
|
2021-05-11 11:02:28 +03:00 |
Alexander Medvednikov
|
dc034d9b16
|
vweb: make thread safe; checker: `$if T is Interface {`
|
2021-05-11 09:30:18 +03:00 |
yuyi
|
74defc4b82
|
checker: minor cleanup of FnDecl (#10000)
|
2021-05-09 15:27:45 +03:00 |
yuyi
|
a9eb8931ed
|
table: minor cleanup of resolve_generic_to_concrete() (#10046)
|
2021-05-08 22:27:58 +03:00 |
Delyan Angelov
|
8a380f4699
|
tools: make `v test-cleancode` test everything by default (#10050)
|
2021-05-08 13:32:29 +03:00 |
Uwe Krüger
|
d26ac5692e
|
all: various fixes for [heap]/auto-heap handling (#10033)
|
2021-05-07 15:58:48 +03:00 |
yuyi
|
a6764e3cc3
|
table: fix generics struct with anon fn fields (#10024)
|
2021-05-06 20:24:08 +03:00 |
Delyan Angelov
|
3aa85bb5d7
|
v.ast: ensure interface->types info is complete
|
2021-05-06 19:48:11 +03:00 |
Delyan Angelov
|
2eafea6308
|
v: reduce the memory usage of the compiler (analysed with heaptrack)
|
2021-05-06 11:44:48 +03:00 |
zakuro
|
92a22e9ec5
|
ast: fix bug where fn_signature return wrong str for variadic arg (#9993)
|
2021-05-04 12:33:24 +03:00 |
Delyan Angelov
|
ae898e77c5
|
v.markused: handle interface implementation methods, and vweb programs
|
2021-05-03 18:40:39 +03:00 |
yuyi
|
581fe375cc
|
checker: fix generics with cascaded multi nested generic fn (fix #3815) (#9965)
|
2021-05-02 19:30:57 +03:00 |
Delyan Angelov
|
4b818fa2be
|
v: implement interface embedding (#9935)
|
2021-05-02 03:00:47 +03:00 |
yuyi
|
fec947c7e1
|
ast: minor cleanup in ast.FnDecl (#9950)
|
2021-05-01 12:50:49 +03:00 |
Alexander Medvednikov
|
c16bb7f3e4
|
ast: a minor format of ast.v
|
2021-04-30 15:36:34 +03:00 |
Alexander Medvednikov
|
e949d4b26c
|
tools/fast: add "V lines" and "V lines/s"
|
2021-04-30 15:31:50 +03:00 |
yuyi
|
25d9272c84
|
all: rename `table.register_fn_generic_types` to `table.register_fn_concrete_types` (#9914)
|
2021-04-29 09:06:50 +03:00 |
crthpl
|
6945f987cf
|
checker: fix sumtype comparison and sumtype in itself (#9917)
|
2021-04-29 09:04:02 +03:00 |
Lukas Neubert
|
dee733aae4
|
fmt: reset const field align after multi line exprs (#9916)
|
2021-04-29 02:17:37 +03:00 |
Lukas Neubert
|
a065d014a2
|
fmt: keep constant sizes in struct field fixed array types (#9910)
|
2021-04-28 22:11:15 +03:00 |
Louis Schmieder
|
faf2656335
|
orm: support multiline statements (#9888)
|
2021-04-27 15:28:57 +03:00 |
pancake
|
9a3869c521
|
v.ast: rename aarch64 to arm64 and aarch32 to arm32
|
2021-04-27 12:24:58 +03:00 |
Don Park
|
aebb551e93
|
cgen: do full struct initialisation for V structs, fixes invalid data from `map[string]Struct{}['unknown']` (#9878)
|
2021-04-27 08:18:48 +03:00 |
yuyi
|
3877522ee3
|
table,checker,cgen: fix generics with recursive generics struct (#9862)
|
2021-04-26 20:05:10 +03:00 |
yuyi
|
212b4fa089
|
parser: implement infering generic type parameters from receiver types (fix #5862) (#9870)
|
2021-04-26 10:56:08 +03:00 |
spaceface
|
7acb48df83
|
parser: parse `JS.` interfaces properly (#9876)
|
2021-04-26 09:58:05 +03:00 |
Uwe Krüger
|
3c0a368af3
|
all: automatically move (some) referenced objects to heap (#9873)
|
2021-04-25 21:40:38 +03:00 |
Louis Schmieder
|
fc3b628440
|
v: support `$for attr in Test.attributes` (#9836)
|
2021-04-25 18:29:26 +03:00 |
yuyi
|
8ccdae6188
|
all: cleanup generics call_expr (#9856)
|
2021-04-24 09:44:15 +03:00 |
yuyi
|
b2dc444dd2
|
ast: minor cleanup in generic_struct_insts_to_concrete() (#9855)
|
2021-04-23 17:21:16 +03:00 |
Enzo
|
af8ef12990
|
ast: use `AttrKind` (#9845)
|
2021-04-23 15:51:52 +03:00 |
Enzo
|
b4e4d48bbd
|
checker: make sure negation is only used with numeric types (#9854)
|
2021-04-23 15:18:56 +03:00 |
yuyi
|
dd2002cc57
|
cgen: fix generics with multi generics struct receiver (#9853)
|
2021-04-23 15:17:57 +03:00 |
Lukas Neubert
|
aa40dfc1de
|
checker: check __global type (#9804)
|
2021-04-23 12:28:08 +03:00 |
Louis Schmieder
|
c026d8b6f3
|
parser: number attributes (#9835)
|
2021-04-22 18:21:55 +03:00 |
yuyi
|
431d806dcf
|
ast, parser: cleanup of generic structs (#9839)
|
2021-04-22 18:21:01 +03:00 |
yuyi
|
c85eefa5b2
|
ast: remove obsolete comment in types.v (#9841)
|
2021-04-22 07:03:29 +03:00 |
yuyi
|
d02822f456
|
ast.table: simplify resolve_generic_by_names/types() (#9834)
|
2021-04-21 12:22:42 +03:00 |
yuyi
|
51258923d7
|
checker: fix generics call with reference arg (fix #9817 #9818) (#9830)
|
2021-04-21 06:40:11 +03:00 |
Delyan Angelov
|
9d8bda9eaf
|
v.ast, v.checker: fix absent 'missing return' warning, when a function ended with a t.panic() call
|
2021-04-20 11:49:06 +03:00 |
Enzo
|
c174bfa52f
|
tools: add a `v bug file.v` tool to automatically report bugs on GitHub (#9746)
|
2021-04-19 21:40:54 +03:00 |
Lukas Neubert
|
70c651ff17
|
all: make __global behave consistent with const (#9711)
|
2021-04-19 17:07:47 +03:00 |
Delyan Angelov
|
aa3a8c5245
|
v.ast: add a customizable ast.Table .panic() method
|
2021-04-19 15:39:57 +03:00 |
Delyan Angelov
|
cfcecf898b
|
v.ast: add .free() methods, so vls can be more decoupled
|
2021-04-18 10:24:51 +03:00 |
yuyi
|
cb70ffef59
|
table: minor simplification and cleanup of resolve_generic (#9772)
|
2021-04-17 02:38:07 +03:00 |
yuyi
|
8cb44ed9db
|
checker: fix generics with nested generics fn (#9757)
|
2021-04-16 11:53:20 +03:00 |
yuyi
|
466dc4540b
|
all: minor cleanup of generics (#9744)
|
2021-04-15 11:00:23 +03:00 |
Delyan Angelov
|
b8e9f085eb
|
vfmt: cleanup StringInterLiteral.get_fspec_braces/1
|
2021-04-15 09:46:05 +03:00 |
Delyan Angelov
|
f1549b3ee7
|
vfmt: make ${} more robust; require it for every interpolation that uses '...' or "..."
|
2021-04-15 09:28:40 +03:00 |
crthpl
|
0099458c0a
|
all: small asm fixes and number labels (#9730)
|
2021-04-15 01:30:23 +02:00 |
Delyan Angelov
|
68c3eccec5
|
v: skip asserts in -prod mode inside non _test.v files
|
2021-04-13 13:07:57 +03:00 |
Delyan Angelov
|
84fe2d8c6e
|
v.ast: implement Expr.str() for ast.ConcatExpr and ast.IfExpr too
|
2021-04-13 12:23:30 +03:00 |
yuyi
|
c3ccb58450
|
checker: check generics variadic arg mismatch (#9700)
|
2021-04-13 02:06:24 +02:00 |
Louis Schmieder
|
67d8639917
|
orm: add unique fields & add drop table stmt (#9684)
|
2021-04-11 23:57:25 +02:00 |
Enzo
|
5a1a1b7c12
|
all: merge GoExpr and GoStmt (#9685)
|
2021-04-11 23:56:25 +02:00 |
Delyan Angelov
|
79fa15ec3a
|
cgen: allow printing of C.Structs containing &char/charptr fields
|
2021-04-12 00:14:58 +03:00 |
yuyi
|
3241611871
|
v.ast table: minor simplification of generic_struct_insts_to_concrete() (#9667)
|
2021-04-11 10:29:31 +03:00 |
yuyi
|
a2a18ef92c
|
v: simplify handling of function generic parameters (#9673)
|
2021-04-11 09:02:57 +03:00 |
Uwe Krüger
|
78c6e35bde
|
checker/cgen: fix `v := rlock m { m[key] or { default_val } }` (#9666)
|
2021-04-10 16:57:18 +02:00 |
yuyi
|
bf6a2f80ef
|
checker: fix generics with generic struct receiver (#9658)
|
2021-04-10 04:00:53 +02:00 |
Ned Palacios
|
50f59674ce
|
ast, checker: make SelectorExpr.root_ident return ?Ident (#9647)
|
2021-04-09 18:06:40 +02:00 |
Ned Palacios
|
a706215e52
|
ast, parser: add type_pos to TypeDecl nodes (#9571)
|
2021-04-09 14:51:25 +03:00 |
Uwe Krüger
|
84fa1ae444
|
boehm-gc: support a `[keep_args_alive]` tag for C functions (#9641)
|
2021-04-09 13:13:49 +03:00 |
spaceface
|
4feb09fa5b
|
checker, cgen: add sumtype-like smartcasting capabilites to interfaces (#9256)
|
2021-04-09 11:00:05 +03:00 |
yuyi
|
690c0309ad
|
vfmt: fix fn/method that return generic struct (#9638)
|
2021-04-08 08:24:34 +03:00 |
Delyan Angelov
|
de5cf4ac5e
|
v: show the number of processed bytes and lines for V source code with -stats
|
2021-04-07 18:12:27 +03:00 |
Louis Schmieder
|
ab03357a6e
|
orm: add table creation (#9621)
|
2021-04-07 15:27:02 +02:00 |
Lukas Neubert
|
3a07fbc653
|
fmt: improve match branch wrapping (#9619)
|
2021-04-07 15:26:10 +02:00 |
Lukas Neubert
|
a0648a3ec2
|
all: fixes related to Node.pos (#9613)
|
2021-04-06 15:16:19 +02:00 |
Delyan Angelov
|
fec89c7efb
|
ci: fix some of `v test-cleancode` 1
|
2021-04-05 20:47:32 +03:00 |