Commit Graph

1723 Commits (563469ed9f26276a6e6b575f0e1f71dfc6f30461)

Author SHA1 Message Date
stackotter 563469ed9f
vfmt: fix array_init line wrapping (#14154) 2022-04-25 08:11:44 +03:00
ChAoS_UnItY c5824c36f2
checker, cgen: allow static (fixed) arrays in `in` operator (#14121) 2022-04-21 10:32:29 +03:00
yuyi ce4c2afc9c
checker, cgen: use 'stmts.last()' instead of 'stmts[stmts.len - 1]' (#14105) 2022-04-20 14:23:32 +03:00
playX f6a0c26a85
checker: c2v fixes (#14091) 2022-04-20 01:09:34 +03:00
Delyan Angelov 006df58451
checker, cgen: add support for #insert, to simplify bootstrapping V 2022-04-19 19:37:04 +03:00
Nick Treleaven 4400efeb9f
checker: Revert part of small_unsigned == signed (#13967) (#14075)
`gcc -W` doesn't error for e.g. u16 == i32, only for u32 == i16.
Any u16 value can fit in an i32.
2022-04-18 21:30:09 +03:00
yuyi fe371845da
ast, checker, cgen: fix aggregations type check (#14066) 2022-04-18 12:38:08 +03:00
yuyi 17c34b09a6
checker, cgen: minor cleanup of last expr stmt expression (#14057) 2022-04-17 14:08:43 +03:00
Vincenzo Palazzo 4f14f7714f
checker: ensure that the variant SubType exists (#14053)
Signed-off-by: Vincenzo Palazzo <vincenzopalazzodev@gmail.com>
2022-04-16 19:29:10 +03:00
Alexander Medvednikov fb192d949b all: replace []byte with []u8 2022-04-15 15:35:35 +03:00
Alexander Medvednikov 0527ac633e ast: remove .byte 2022-04-15 15:30:37 +03:00
Alexander Medvednikov d4a0d6f73c all: byte => u8 2022-04-15 14:58:56 +03:00
Nick Treleaven c780de6282
checker: disallow 'small_unsigned == signed' (#13967) 2022-04-12 19:37:30 +03:00
Delyan Angelov 8788512c4d
checker: make using err.msg and err.code produce an *actual* notice, even with the present compatibility hack (will be *removed* in 2022-06-01) 2022-04-12 14:56:02 +03:00
Delyan Angelov 4c7cdd2a2d
checker,cgen: use faster `sym.idx == ast.error_type_idx` integer comparisons, instead of `sym.name == "IError"` 2022-04-12 14:49:51 +03:00
Joe Conigliaro a0c07454b1
checker: remove debug code from previous commit 2022-04-08 18:27:14 +10:00
Joe Conigliaro 426e9d1734
checker: fix condition for checking if tmpl var is inherited 2022-04-08 18:25:08 +10:00
Joe Conigliaro e1c8b07fa5
checker/tests: format test added in prev commit & rename chekcer prop 2022-04-08 17:41:23 +10:00
Joe Conigliaro 8dc2601080
all: comptime_call - simplify tmpl scoping, solves many issues. 2022-04-08 17:33:24 +10:00
crthpl b232a3b0d1
cgen: fix `.filter()` and `.map()` on shared arrays (#13954) 2022-04-07 18:05:11 +03:00
playX 6a820c2845
checker: allow all binary operations when translating code produced by c2v (#13964) 2022-04-07 12:22:24 +03:00
Alexander Medvednikov a55e930c00 checker: fix pointer checks in translated code 2022-04-04 05:35:15 +03:00
Alexander Medvednikov cc227d8520 checker: fix non-numeric type check for translated code 2022-04-04 04:59:14 +03:00
Vincenzo Palazzo d7817863c6
checker: type inference over a generic type should compile (#13824) 2022-04-01 19:31:27 +03:00
yuyi bc98c11d9d
parser, checker, cgen: minor cleanup of go_expr() (#13875) 2022-03-31 19:58:04 +03:00
yuyi 55d9464890
checker: fix error for marking as referenced (#13859) 2022-03-30 01:33:10 +03:00
Delyan Angelov 9bbb52e9cc
checker: add a check for `dump(c)`, where `typeof(c) == "char"` 2022-03-24 12:11:59 +02:00
yuyi 1566f7f766
checker: minor cleanup in check_types.v (#13816) 2022-03-24 08:59:05 +02:00
yuyi 0337882240
checker: check redefine global 'main' function (#13803) 2022-03-22 17:39:12 +02:00
yuyi d9cca53bd0
checker: check error for index of optional (#13785) 2022-03-21 10:17:57 +02:00
yuyi 3e41be1ff4
checker: minor cleanup in check_or_last_stmt() (#13763) 2022-03-18 22:27:53 +02:00
yuyi 5f79fa8a30
checker: handle invalid smartcast with if/match none ident or selector (fix #12317) (#13762) 2022-03-18 17:50:54 +03:00
yuyi 92cafd8851
checker: check invalid 'mut' keyword in infix expr (#13742) 2022-03-15 14:50:17 +03:00
Nick Treleaven 34dd4f34ab
checker: fix cgen error on sliced references (#13736) 2022-03-14 19:52:37 +02:00
yuyi f7feb634d2
checker: fix error for if mut with immutable variable (#13728) 2022-03-13 16:33:50 +02:00
yuyi 27f9bc9ba0
checker: check error for match mut with immutable variable (fix #9704 #8976) (#13725) 2022-03-13 09:53:29 +02:00
yuyi dd06698ee3
ast: rename TypeSymbol.is_public to TypeSymbol.is_pub (#13710) 2022-03-10 22:18:57 +02:00
yuyi 4c33003f86
checker: check error for infix compare optional (#13701) 2022-03-09 20:20:21 +02:00
yuyi 6c7243f2f7
checker: remove redundant 'c.expected_type = ast.void_type' (#13687) 2022-03-09 12:33:23 +02:00
yuyi cea3149369
checker: fix match expr with enum type value (#13683) 2022-03-08 09:50:17 +02:00
yuyi e6270b05dc
checker: check unsigned integer compared with negative value (#13670) 2022-03-07 10:26:40 +02:00
yuyi 8136157f87
checker: fix error for 'or expr with nested match expr' (#13658) 2022-03-05 13:06:08 +02:00
yuyi a98eebde7f
checker: add a notice for potentially incorrect smartcasts (#13644) 2022-03-03 16:36:40 +02:00
yuyi 288b13b51d
all: cleanup smartcasts in the compiler (#13639) 2022-03-03 10:48:31 +02:00
ChAoS_UnItY 6a3d34ae11
checker: fix #13626, when unwrapped type is fixed array, and selector expr is 'len' (#13627) 2022-03-02 20:46:18 +02:00
yuyi 0028e557f9
checker: cleanup smartcast in checker.v (#13618) 2022-02-28 17:06:37 +02:00
yuyi efeb3e04da
ast: add table.is_sumtype_or_in_variant() (#13615) 2022-02-28 11:38:20 +03:00
yuyi d30ad344e8
checker: check error for array of sumtype appendding (#13593) 2022-02-24 11:07:03 +02:00
playX b842e89acc
all: initial implementation of compile-time types (#13549) 2022-02-21 17:42:54 +02:00
eyun 67e33bf9bc
checker: make public the valid_comptime_if_os list (#13518) 2022-02-19 15:22:33 +02:00