Commit Graph

129 Commits

Author SHA1 Message Date
gingerBill
94879ed149 Fix Compiler assertion when applying using to _ procedure parameter. #451 2019-10-26 12:14:04 +01:00
gingerBill
6c69e8c043 Make typeid semantics consistent across variables and constants 2019-10-06 14:55:25 +01:00
gingerBill
68582c5ad1 Add suggestions to errors on casts and assignments. 2019-09-17 19:47:04 +01:00
gingerBill
4afc78efc6 Add where clauses to struct and union 2019-09-08 12:12:41 +01:00
gingerBill
d4914c3546 Fix Ir panic on using append() from within anonymous function #432 2019-09-04 18:06:02 +01:00
gingerBill
b9d3129fb3 where clauses for procedure literals 2019-08-31 20:13:28 +01:00
gingerBill
b311540b16 Make require_results an attribute rather than a suffix tag for procedures 2019-08-31 14:48:56 +01:00
gingerBill
07ced1cf0e Fix variable dependency ordering issues caused by procedure literals 2019-08-31 11:12:41 +01:00
gingerBill
c89fc35e94 Fix global variable initialization ordering
(related to #427)
2019-08-29 14:36:42 +01:00
gingerBill
04036aba9c package reflect; fix substring type bug; fix scoping rules for using on procedure parameter 2019-08-11 23:58:49 +01:00
gingerBill
40f0e74b8c Change scoping rules to allow for shadowing of procedure parameters but not named return values 2019-07-27 00:45:36 +01:00
gingerBill
fd62959bf4 Fix procedure constant declaration value type assignment checking 2019-06-21 23:11:14 +01:00
gingerBill
654740d5b1 Fixes to ABI 2019-05-29 16:49:26 +01:00
gingerBill
222941727f Add ..< operator for ranges; Add extra checking for bit set assignments 2019-05-28 12:45:20 +01:00
gingerBill
458ec5922e odin query
Output .json file containing information about the program
2019-05-25 20:24:19 +01:00
gingerBill
ea1690b7a1 Improve type inference for variadic parameters 2019-05-04 14:01:04 +01:00
gingerBill
b1684fe455 @(private) for foreign blocks; Improve foreign signature similarity rules 2019-03-24 11:58:26 +00:00
gingerBill
886054f0f8 Add error message for when trying to assign a type to a variable. 2019-03-22 13:55:29 +00:00
gingerBill
716373836c Disallow attributes on alias declarations 2019-03-15 19:01:36 +00:00
gingerBill
a9ab90bd24 Make static an attribute rather than a keyword prefix 2019-02-23 22:17:27 +00:00
gingerBill
e551d2b25e Replace foreign export {} with @export 2019-02-23 21:39:47 +00:00
gingerBill
8fc24fd6f2 Replace deferred with deferred_none, deferred_in, deferred_out 2019-01-13 19:34:08 +00:00
gingerBill
95873e66ab deferred procedure attribute 2018-12-14 21:05:02 +00:00
gingerBill
b55b1ffe14 opaque keyword and type 2018-11-11 17:08:30 +00:00
gingerBill
834308d8ce Fix using import override "bug" 2018-09-29 13:07:46 +01:00
gingerBill
597fb452b1 Minor fixes 2018-09-24 10:22:22 +01:00
gingerBill
f1e1814ff9 Syntactic sugar for anonymous enum within a bit set 2018-09-11 12:10:32 +01:00
gingerBill
220485a2d2 typeid as keyword (ready to implement polymorphic name parameters) 2018-09-02 15:56:36 +01:00
gingerBill
aa542980ce Change memory layout of map to be 3 words smaller 2018-08-30 19:14:10 +01:00
gingerBill
1d0ac72e4a Disable non-comparison operations for enum (use bit_set for flags) 2018-08-17 15:24:44 +01:00
gingerBill
dc5da7933a Add older demos 2018-07-29 11:36:24 +01:00
gingerBill
96fc9138d4 Do using Foo :: enum at the type_decl stage 2018-07-29 11:29:20 +01:00
gingerBill
5fe4c33d0e Allow importation of core:builtin to get built-in entities 2018-06-17 21:46:37 +01:00
gingerBill
c2ca24a486 Big renaming: AstNode to Ast 2018-06-17 10:58:59 +01:00
gingerBill
5081ea1a0c Fix type aliasing comparison; Fix gb_utf8_decode 2018-06-15 19:59:35 +01:00
gingerBill
268491b224 Use global arena for AstNode allocations 2018-06-09 19:53:06 +01:00
gingerBill
49ea9ed722 Entity aliasing clean up 2018-06-09 10:08:17 +01:00
gingerBill
d7108416c9 Remove dead code 2018-06-07 23:52:13 +01:00
gingerBill
398109ac84 Remove need for __llvm_core 2018-06-03 10:51:43 +01:00
gingerBill
12b870ba66 Use const & for Array<AstNode *> parameters 2018-06-03 10:30:31 +01:00
gingerBill
ced818ad54 Remove dead code from checker 2018-06-02 11:58:35 +01:00
gingerBill
619783ca1b Remove clutter parameters and begin parallelizing the type checker 2018-05-28 18:46:39 +01:00
gingerBill
642aa0bc4b Refactor: use CheckerContext rather than Checker in type checking part 2018-05-28 15:57:53 +01:00
gingerBill
45b3067068 Remove tmp_allocator from Checker 2018-05-28 14:15:08 +01:00
gingerBill
b7858a66b9 Parallelize per file rather than per package 2018-05-28 12:06:50 +01:00
gingerBill
1beff539d7 Single file "main" file 2018-05-27 13:22:24 +01:00
gingerBill
6aae381e83 Move ODIN_* platform constants to core:os 2018-05-27 11:03:46 +01:00
gingerBill
7ee9051a56 IR now builds with the new package system 2018-05-27 10:49:14 +01:00
gingerBill
eb11edabe0 Add file scopes for the packages 2018-05-27 00:10:38 +01:00
gingerBill
c067b90403 Add basic package support (no IR support yet) 2018-05-26 23:12:55 +01:00