Commit Graph

1675 Commits

Author SHA1 Message Date
Christoffer Lerno
c0c571ffe0 Incorrect error message when $eval is provided an invalid string. #1570 2024-10-25 10:31:45 +02:00
Christoffer Lerno
d8f4da4d90 Incorporating change from #1568 and the other fix needed. 2024-10-23 23:48:27 +02:00
Matteo Cardinaletti
f02387073d Json AST: Adding 'constants' and Improving 'globals' #1540, #1541 2024-10-23 23:31:28 +02:00
Christoffer Lerno
d344cc6020 (uptr)&((Foo*)null).a incorrectly inserts a null check. #1544.
Fix regression handling typedefs from generic modules.
2024-10-22 12:15:39 +02:00
Christoffer Lerno
9100638400 &self argument not implicitly null checked. #1556. 2024-10-21 00:45:40 +02:00
Christoffer Lerno
d2085654a7 if (try foo) was handled incorrectly inside a defer. 2024-10-20 18:30:03 +02:00
Christoffer Lerno
78d5939d9d Show error when declarations do not start with fn in interfaces. #1565. Some added functionality to lists and time. 2024-10-18 17:10:00 +02:00
Christoffer Lerno
c013006671 Improve infer conversions on constants, e.g. ZString a = foo ? "a" : "b"; #1561 2024-10-17 01:20:52 +02:00
Christoffer Lerno
705856d51a - Disallow casting a void* to any or an interface, unless it is null.
- Defer resolution of declarations when looked up in `def` aliased #1559.
2024-10-16 12:50:47 +02:00
Christoffer Lerno
4445b6c054 Improve error messages on expressions like var $type = int; #1553. 2024-10-15 11:50:15 +02:00
Christoffer Lerno
31cd839063 Switch to <* *> docs. Fix issue with dynamically loaded C3 libs with other C3 code. 2024-10-14 02:14:34 +02:00
Christoffer Lerno
9f6a4eb300 Empty expression block would crash compiler with debug on #1554. 2024-10-13 02:19:26 +02:00
Walther Chen
e6c9cfed42 Small fixes to AST json (#1550)
* fix ast json

* INERT_COMMA -> INSERT_COMMA

* fix struct field types
2024-10-12 19:28:47 +02:00
Christoffer Lerno
0da7f1b4de Wrong error message for interface methods with body #1536. 2024-10-12 02:51:07 +02:00
Christoffer Lerno
8ce171877e Also weaken libc and generic templates. 2024-10-12 02:13:35 +02:00
Christoffer Lerno
d19f628c73 Return missing MSVC fix. 2024-10-12 00:05:50 +02:00
Christoffer Lerno
526d15b804 Stop using linkonce and use weak instead. 2024-10-11 23:56:29 +02:00
Christoffer Lerno
c308397ed6 Fix weak linking for windows. 2024-10-11 23:35:12 +02:00
Christoffer Lerno
cba25710fe Refactor and unify linker visibility and fix issues with weak stdlib. 2024-10-11 21:45:44 +02:00
Christoffer Lerno
1b471283c9 - Don't weakly link in exe. 2024-10-11 18:11:27 +02:00
Christoffer Lerno
09fee2aa4b - Standard library is now correctly weakly linked, fixing the use of C3 .so together with executable. #1549, #1107. 2024-10-11 17:14:02 +02:00
Christoffer Lerno
efeb9e627e Interfaces not correctly copied with generics #1545. 2024-10-11 13:26:22 +02:00
Christoffer Lerno
8e24f15d58 Cannot use void as a generic parameter #1546. Interfaces now support .ptr and .type directly without casting to any. 2024-10-11 12:10:35 +02:00
Christoffer Lerno
1adad860f4 Update AST output. 2024-10-11 11:24:01 +02:00
Christoffer Lerno
cf07570871 Improved error message when declaring a variable void!. 2024-10-11 00:15:49 +02:00
Christoffer Lerno
bf30e52993 Improved error message on invalid subscript index type #1535. 2024-10-10 14:59:16 +02:00
Christoffer Lerno
a91ddd40dd Infer now works across ternary. Crash returning struct or vector from function using ternary expression #1537. 2024-10-10 14:44:40 +02:00
Christoffer Lerno
967f14148f Bug when defers and $if were combined in a macro, which would cause miscompilation. 2024-10-10 13:42:12 +02:00
Christoffer Lerno
7a6544b17c Constant bytes <=> char[] conversion should work #1514 2024-10-09 19:38:06 +02:00
Christoffer Lerno
c1266e9d06 Compiler error when any/interface initialized using {} #1533. 2024-10-09 13:12:40 +02:00
Christoffer Lerno
9f10996ac7 Bug when a continue is copied in a defer. 2024-10-08 22:13:30 +02:00
Christoffer Lerno
7dfdb9d061 Fix to ad hoc generic types. 2024-10-08 11:48:20 +02:00
Christoffer Lerno
e3ea1d5049 Deprecate @adhoc, allow non-nested ad hoc generic types. 2024-10-08 11:02:10 +02:00
Christoffer Lerno
19a96acac8 Improve error message in the case of MyInterface x = foo; #1522 2024-10-07 21:00:17 +02:00
Christoffer Lerno
80d016e076 Unintended deref of pointers with methods caused regression with hash function. 2024-10-07 20:43:37 +02:00
Christoffer Lerno
6bbc77a69c Segfault with passing a program with - using stdin. Using no module with - would reject the program. #1523 2024-10-06 12:19:13 +02:00
Christoffer Lerno
cfc1d0d8f8 Incorrect subscript resolution #1519 2024-10-04 20:50:48 +02:00
Christoffer Lerno
6fabecac1a Better error for int Foo(int a) declarations #1516 2024-10-04 18:15:06 +02:00
Christoffer Lerno
f95769541d Better error for int a[4] = .... #1518 2024-10-04 17:52:32 +02:00
Christoffer Lerno
02e9bfaf31 Separate const slice. Fix #1489. Fix const slice appending. Remove unintended print of char[] as String. Support const conversion of array -> slice. 2024-10-03 15:04:33 +02:00
Christoffer Lerno
84e10cf635 0.6.3 Release version. 2024-10-03 10:11:31 +02:00
Christoffer Lerno
1b8f8c5f5a Compiler crash when compiling c code in a library without --obj-out #1503. 2024-10-03 00:56:01 +02:00
Christoffer Lerno
46ae4353e0 Assume XTensa in 21+ instead. 2024-10-01 16:06:23 +02:00
Christoffer Lerno
0ea423d022 Foreach over distinct iterable would ignore operator(len). 2024-10-01 13:00:54 +02:00
Christoffer Lerno
5918d5120f Foreach over distinct pointer failed to be caught as error #1506. 2024-09-30 21:32:33 +02:00
Christoffer Lerno
071bd0ebf2 Fix bug when reading zip manifest, that would not return a zero terminated string. #1490 2024-09-29 21:14:03 +02:00
Christoffer Lerno
2e94ea1a0d Improved error messages on Foo a = foo { 1 }; #1496 2024-09-28 23:53:31 +02:00
Christoffer Lerno
eeba5f020a Bad error on parameterized type without parameter #1495. 2024-09-28 19:44:57 +02:00
Christoffer Lerno
ded8bce8e6 Change no recursive import to use attribute. 2024-09-28 13:48:43 +02:00
Rachad ADEKAMBI
2146a76795 fix typo#1492 (#1493)
* fix typo#1492 
* Fix missing update in sema_decls

---------

Co-authored-by: Christoffer Lerno <christoffer@aegik.com>
2024-09-28 00:22:15 +02:00