1
0
mirror of https://github.com/vlang/v.git synced 2023-08-10 21:13:21 +03:00

1060 Commits

Author SHA1 Message Date
yuyi
2090e4a12f
ast, cgen: optimize generic struct with inconsistent generic types (#16708) 2022-12-19 15:02:27 +02:00
yuyi
aad95ac818
cgen: fix generic struct init with inconsistent generic types (fix #16677) (#16702) 2022-12-19 10:43:27 +02:00
Swastik Baranwal
5b4a16e864
checker: add err for unknown generic struct field (#16698) 2022-12-18 11:46:37 +02:00
yuyi
ba07e48691
ast, checker: fix checking generic struct type mismatch (#16701) 2022-12-18 10:29:44 +02:00
yuyi
e83a8416d5
ast, parser: fix generic struct init with inconsistent generic types (#16697) 2022-12-17 18:17:43 +02:00
Delyan Angelov
0a11955284
parser: support an unambiguous sizeof[T]() and isreftype[T]() (part 1) (#16684) 2022-12-15 19:21:52 +02:00
yuyi
8ab4c7742c
ast, checker: fix generic struct init with inconsistent generic types (#16675) 2022-12-14 14:57:12 +02:00
Delyan Angelov
48a7de643e
all: support typeof[ T ]().idx and typeof[ T ]().name, where T can be any type, including ![]&string (#16513) 2022-12-07 11:26:27 +02:00
yuyi
f16722596c
all: replace generic '<>' with '[]' in error messages and comments (#16571) 2022-12-02 09:22:48 +02:00
yuyi
dff61300fb
table: optimize fn_type_signature() (#16552) 2022-11-29 13:13:58 +02:00
yuyi
ef5be22f81
all: replace generic <> with [] - part 2 (#16536) 2022-11-26 18:23:26 +02:00
Swastik Baranwal
a9b41d2980
all: add support for const ident in match range (#16526) 2022-11-26 08:56:00 +02:00
Hitalo Souza
45854882b9
builtin, cgen: support FieldData.unaliased_typ, use it for generalising x.json2 (able to encode type aliased struct fields) (#16469) 2022-11-20 11:18:14 +02:00
shove
092f984708
ast, cgen: fix match struct.field? {...} (#16478) 2022-11-19 10:42:36 +02:00
shove
37700502f5
all: implement struct field optional and disallow storing result (#16392) 2022-11-17 07:51:50 +02:00
Delyan Angelov
ddc1a1fc08
checker,cgen: support const y = term.yellow, then println(y('abc')) (#16436) 2022-11-15 19:51:57 +02:00
yuyi
017ace6ea7
vfmt: change all '$expr' to '${expr}' (#16428) 2022-11-15 16:53:13 +03:00
yuyi
196b01aef7
all: minor cleanup of optional and result (#16382) 2022-11-10 20:14:20 +02:00
yuyi
46921480fc
comptime: fix embed file with variable argument (fix #16360) (#16375) 2022-11-10 04:09:51 +02:00
shove
dd5f6186a1
all: rollback to old interpolation (step 1) (#16370) 2022-11-09 11:57:54 +03:00
shove
fa4a45d37f
all: make fmt support two kinds of interpolation at the same time. (#16308) 2022-11-03 13:32:07 +02:00
Delyan Angelov
02c3af2432
all: add support for enum Xyz as u64 { + tests (#16246) 2022-10-29 06:32:20 +03:00
shove
fef4dd94e9
ast, checker, cgen: enable unsafe { nil } with reference to interface fields in structs (fix #16198) (#16199) 2022-10-26 09:39:23 +03:00
yuyi
48f43f11ea
all: change optional to result in vlib/v. (#16177) 2022-10-24 11:51:20 +03:00
shove
b8b2b4ad0a
checker: fix the pos information in the warning message, when the label is not used (fix #16146) (#16148) 2022-10-22 19:26:38 +03:00
shove
07310d850d
ast, cgen: fix wrong name and cname, when array and fixed array elements have optional (fix #16099) (#16122) 2022-10-20 14:17:57 +03:00
yuyi
612faac0f0
all: change index expr returning optional to result too (#16097) 2022-10-19 21:04:16 +03:00
shove
51a9e89c4a
ast: disallow threads << go fn()?{} and threads << go fn()!{} (fix #16061) (#16064) 2022-10-13 19:37:27 +03:00
shove
213a094680
ast: fix missing 'optional' and 'result' in type name and cname of map (#16047) 2022-10-13 10:38:02 +03:00
yuyi
dab1c8a71d
all: clean up optional and result handling (#16034) 2022-10-11 09:23:57 +03:00
Swastik Baranwal
49aac93d87
checker: disallow literals on the left side of assignments (#15999) 2022-10-08 19:27:30 +03:00
Delyan Angelov
754c387d1b
cgen,checker: support simple voidptr casts in consts, without delaying the initialisation to _vinit (#15996) 2022-10-08 13:14:26 +03:00
shove
dc2ba1c33f
ast, parser, fmt: fixed and optimized comments for 'for, for_c, for_in stmts' (fix: #15922) (#15950) 2022-10-03 10:45:11 +03:00
Swastik Baranwal
b584e1df98
checker: allow EnumName(number) casts only inside unsafe{} blocks (#15932) 2022-10-02 22:39:11 +03:00
yuyi
659bd1a428
ast, checker, cgen: fix generic fn/method with comptime for/if (fix #15905) (#15910) 2022-09-30 09:40:30 +10:00
yuyi
41dbd12bc4
tests: make error handling the same as the main function (#15825) 2022-09-21 19:45:43 +03:00
Delyan Angelov
69c9d47a40
pref,os,sokol,cgen: ease compilation of 2048 with -os wasm32_emscripten (#15820) 2022-09-20 00:17:13 +03:00
Delyan Angelov
7e69619add
builtin, compiler: replace isnil(x) calls with x == unsafe { nil } (a little faster without -prod) (#15759) 2022-09-15 14:59:37 +03:00
shove
8b962f8446
checker: fix nested struct reference type field initialized check. (fix: #15741) (#15752) 2022-09-15 07:59:31 +03:00
yuyi
b4494f921a
ast: fix dumping sumtype of fntype (#15734) 2022-09-12 13:45:29 +03:00
shove
ca36284612
fmt: fix anonymous struct in parameter with invalid type name. fix #15696 (#15711) 2022-09-09 14:44:49 +03:00
Ken
1738641567
cgen, checker, ast: add syntax support for reference x in for x in &somearrary { and for x in &somemap { loops (#15678) 2022-09-08 13:36:40 +03:00
yuyi
a462610376
ast: minor optimization in sumtype_check_function_variant() (#15694) 2022-09-08 09:20:30 +03:00
yuyi
8627af18dd
table: check sumtype of fntype assign error (#15685) 2022-09-07 16:05:38 +03:00
Louis Schmieder
6110373519
orm: init or implementation (#14989) 2022-08-31 14:43:20 +03:00
Delyan Angelov
9703410391
vfmt: fix formatting of submodules with common prefixes (fix #15582) 2022-08-29 15:30:58 +03:00
yuyi
06e153d429
ast, cgen: implement sumtype with fntype partly (related #15557) (#15567) 2022-08-28 09:12:08 +03:00
yuyi
2a03d22a37
ast: clean up table.find_or_register_fn_type() (#15560) 2022-08-27 09:32:03 +03:00
yuyi
02a47f42f3
ast, parser, cgen: fix closure with nested closure variable (#15542) 2022-08-26 13:37:10 +03:00
shove
c10c8ff9e4
parser: fix anon struct name conflict (#15517) 2022-08-26 07:01:50 +03:00