Commit Graph

119 Commits (4a12546971254f7f68a95c12578788b56d211e68)

Author SHA1 Message Date
Delyan Angelov 4a12546971
cgen,fmt: improve sizeof(), fix `type PPType = &&Type` 2021-03-19 22:49:46 +02:00
Delyan Angelov 00651c8deb
builtin: free all elements in a `[]string` with -autofree too 2021-03-18 21:10:42 +02:00
Alexander Medvednikov 4e62bc0b81 autofree: fix free before return 2021-03-18 05:41:50 +03:00
Delyan Angelov e8df8bc8c3
ci: fix for `-autofree vlib/v/tests/option_test.v` 2021-03-17 14:44:45 +02:00
Delyan Angelov 99cc02685b
cgen: implement IError.free() and use it for the builtin `none` const 2021-03-17 12:38:24 +02:00
Delyan Angelov ae401bd930
ci: fix the `./v -g -autofree -o v2 cmd/v` step 2021-03-17 09:48:56 +02:00
crthpl fafb035fb5
all: reimplement inline assembly (#8645) 2021-03-17 01:43:17 +01:00
ka-weihe 2991cad4e8
map: fix delete in for-in (#9336) 2021-03-17 01:42:33 +01:00
Alexander Medvednikov 149151b1e8 cgen: minor vfmt 2021-03-17 03:41:52 +03:00
Alexander Medvednikov 091a1bab27 autofree: free global map consts and some vweb fixes 2021-03-17 01:33:35 +01:00
yuyi 2d2e4610e7
cgen: make use of mut_rec in method consistent (#9308) 2021-03-15 12:22:52 +02:00
yuyi 945769a4f6
all: implement reference receiver optimization for big structs (#9268) 2021-03-14 18:11:21 +01:00
yuyi c0779e8455
cgen: fix return_statement generated redundant `;` (#9299) 2021-03-14 14:58:17 +02:00
Delyan Angelov 69f1e7c9c3
v: fixes for `v -autofree -o v2 cmd/v` 2021-03-14 09:37:38 +02:00
spaceface 9ed9e7aff0
builtin: cleanup option names (part 1) (#9293) 2021-03-14 01:54:46 +01:00
yuyi 5a6b321656
cgen: format if_guard_expr generated c codes (#9290) 2021-03-14 01:54:05 +01:00
spaceface e9797c618a
all: implement error interfaces (#9291) 2021-03-13 18:13:50 +01:00
Alexander Medvednikov f86233c41f autofree: fix [manualfree] 2021-03-13 18:43:02 +03:00
spaceface be409b52e9
builtin: prepare for error interfaces (#9043) 2021-03-12 20:05:05 +02:00
Delyan Angelov c474106511
cgen: fix match expression with complex boolean conditions 2021-03-12 19:55:33 +02:00
StunxFS 8de6511056
cgen: minor optimization to `for ch in "StringLiteral"` (#9240) 2021-03-11 15:01:53 +02:00
spaceface 7d0cba5e96
v.ast: remove the `stmt.position()` method (#9233) 2021-03-11 14:50:02 +02:00
Delyan Angelov 6628bbc690
cgen: use the new __offsetof_ptr macro 2021-03-11 13:14:36 +02:00
zakuro 791dec7b01
v: support `$if prod` (#9228) 2021-03-10 19:26:34 +02:00
Swastik Baranwal 8d84206a8c
cgen: fix match for one branch (#9234) 2021-03-10 18:44:32 +02:00
spaceface eefdad21c7
cgen: cleanup interface/sumtype casts (#9221) 2021-03-10 18:41:11 +02:00
spaceface f1469a8761
checker: allow accessing fields common to all sumtype members (#9201) 2021-03-09 19:16:18 +02:00
yuyi c4b0fdcbaf
cgen: fix for_in fixed_array of fixed_array literal (#9206) 2021-03-09 16:18:07 +02:00
zakuro 00399b49ab
v.util: add util.tabs() (#9211) 2021-03-09 13:03:25 +02:00
yuyi 568faeed77
cgen: add `expr_string() and remove redundant codes (#9188) 2021-03-08 12:46:39 +02:00
yuyi 82085b0140
cgen: fix for_in map of fixed_array (#9133) 2021-03-07 11:41:08 +02:00
Delyan Angelov 849cde245c
v: support dump(expr) (#9160) 2021-03-06 18:09:28 +01:00
yuyi c802515e71
cgen: minor optimization in gen_code buffer init (#9143) 2021-03-06 12:03:38 +02:00
yuyi cbbfb460a7
cgen: fix for_in fixed_array (#9129) 2021-03-05 15:35:09 +03:00
Delyan Angelov 0f042124cb
tests: support `fn test_fn() ? { opt()? }` 2021-03-05 14:18:21 +02:00
yuyi f4c03e8ed8
cgen: minor optimization in for_in_array (#9127) 2021-03-05 07:58:09 +02:00
yuyi 6097045b46
cgen: minor cleanup of cgen.v (#9108) 2021-03-04 14:40:57 +02:00
yuyi 7c893895d8
cgen: minor cleanup in infix_expr() (#9086) 2021-03-04 12:50:18 +02:00
yuyi 5f9af3f594
cgen: fix for_in array of fixed_array (fix #9098) (#9099) 2021-03-04 12:39:39 +02:00
yuyi 822d20d2cc
cgen: minor simplification of struct zero init (#9085) 2021-03-03 16:03:50 +01:00
yuyi 6825b4cb30
cgen: format if_expr generated c codes (#9084) 2021-03-03 14:33:00 +02:00
yuyi 97f9abcf82
cgen: fix anon_fn in containers (#9077) 2021-03-03 10:12:08 +02:00
Uwe Krüger dd475f4e37
checker/cgen: enable `IfGuardExpr` for `a[k]` and `<-ch` (#9065) 2021-03-03 10:10:38 +02:00
yuyi 62ccd740f0
cgen: minor perf fix in index_expr() (#9054) 2021-03-02 12:28:26 +01:00
yuyi 81dbd72412
cgen: fix anon_fn in containers (fix #8965) (#9049) 2021-03-02 10:26:27 +02:00
Joe Conigliaro 01735c67c6
cgen: fix duplicate method wrapper from interface method call. closes #9018 2021-03-02 19:15:49 +11:00
spaceface 2b53992c01
checker, cgen: allow implementing an interface with an embedded struct (#9042) 2021-03-01 21:47:00 +01:00
yuyi 65900e55e3
cgen: fix if_expr of multi-stmts optional (#9039) 2021-03-01 21:39:04 +01:00
yuyi 6d77594409
cgen: merge cc_type and cc_type2 (#9036) 2021-03-01 21:36:58 +01:00
yuyi f9c8d3d25c
cgen: fix return if true { 0 } else { none } (fix #9005) (#9030) 2021-03-01 13:56:07 +01:00