Commit Graph

35 Commits

Author SHA1 Message Date
a187e5e62a Detect alias cycles 2025-06-21 22:32:34 +02:00
f524311f06 Add lexer and parser sources 2025-06-16 00:42:16 +02:00
8206b48dbd Allow only one return statement 2025-05-17 23:12:44 +02:00
573d812f1c Parse import declarations 2025-05-16 23:16:19 +02:00
1cd44508c3 Support while … else 2025-04-14 23:13:42 +02:00
8ec407515a Label loops 2025-04-12 12:05:32 +02:00
6fd1bda112 Add an else to the case statement 2025-04-11 15:28:43 +02:00
f68667d5e5 Implement case statements 2025-04-11 11:17:17 +02:00
18c4e79012 Implement enumeration type 2025-04-09 00:32:34 +02:00
50970f3289 Add the unreachable builtin function 2025-04-02 21:08:15 +02:00
f2e2da4a34 Detect type aliasing cycles 2025-03-30 17:09:22 +02:00
d359056354 Type check the return statement 2025-03-28 01:11:16 +01:00
c022805c53 Make array ptr and length properties constant 2025-03-24 11:11:18 +01:00
6ccb195c09 Check only a pointer can be dereferenced 2025-03-23 10:14:04 +01:00
5e8555b4f4 Skip parameter names in procedure type expressions 2025-03-20 21:41:03 +01:00
dc5760394b Unify the build_type function 2025-03-08 00:10:55 +01:00
8dc02047df Add second GENERIC visitor 2025-03-05 23:24:27 +01:00
c5930285bf Rename AST types to type expressions 2025-03-03 23:16:31 +01:00
09f204bd16 Revert "Allow only one return"
This reverts commit 18602d00a1.
2025-03-02 10:45:54 +01:00
75561fd18a Replace build_type with visitor functions 2025-03-02 10:05:47 +01:00
18602d00a1 Allow only one return 2025-03-01 00:00:36 +01:00
f091344cce Replace type expression with traits 2025-02-28 00:22:50 +01:00
85b6843ecf Implement procedure pointers 2025-02-24 00:24:36 +01:00
18857e1a88 Add procedure type expression 2025-02-22 02:43:58 +01:00
0b835abfa9 Implement noreturn procedure declarations 2025-02-19 01:36:04 +01:00
39750f4656 Implement elsif do 2025-02-17 19:36:57 +01:00
b358f8ba27 Allow multiple variable declarations with a single type 2025-02-15 23:55:24 +01:00
82b3806fd2 Implement shift operators 2025-02-15 00:38:46 +01:00
ee4ebf64b9 Use colon instead of as to cast 2025-02-14 22:47:09 +01:00
207ae0fa0a Change the bootstrap compiler license to GPL3 2025-02-09 12:30:31 +01:00
8a0f282714 Implement defer 2025-02-08 06:47:42 +01:00
077de53c74 Allow expressions in designators 2025-02-07 01:21:26 +01:00
aab16e4941 Allow comparing all pointer types to nil 2025-02-03 23:04:00 +01:00
607bf09434 Read the input filename from the command line 2025-02-02 23:34:31 +01:00
4011adbe2b Rename elna::source to elna:boot 2025-01-31 23:31:36 +01:00