Commit Graph

347 Commits

Author SHA1 Message Date
gingerBill
a240a3d146 static variable declarations (Experimental) 2018-12-28 13:31:06 +00:00
gingerBill
66a9fde12c Remove #[...] attribute syntax.
(Not really worth the change)
2018-12-26 16:23:25 +00:00
gingerBill
eb5af2876a Support #[...] as an alternative attribute syntax
(Experimentation between `@()` and `#[]`)
2018-12-26 12:19:12 +00:00
gingerBill
b504d6e12a notin operator 2018-12-21 11:34:15 +00:00
gingerBill
1ce90b2166 Remove weird bit_set shorthand; Add extra type hinting 2018-12-15 21:46:27 +00:00
gingerBill
9d6666f333 Disallow casting between cstring and []u8 2018-12-14 21:58:12 +00:00
gingerBill
d05837ab6d Labels for block and if statements (break only) 2018-12-08 14:12:52 +00:00
gingerBill
28583bfff8 Change procedure group syntax from proc[] to proc{}; deprecate proc[] (raises warning currently) 2018-12-02 18:01:03 +00:00
gingerBill
3aec78b1d4 Lock on possible race condition in parser 2018-11-29 20:27:48 +00:00
gingerBill
b55b1ffe14 opaque keyword and type 2018-11-11 17:08:30 +00:00
gingerBill
2ddb27869b Built-in procedure #defined 2018-10-27 18:44:28 +01:00
gingerBill
822e4894f2 Minor logic change for reserved package names 2018-10-20 21:19:40 +01:00
gingerBill
3742d9e7e9 Move atomic intrinsics to the new built-in package intrinsics 2018-10-20 10:44:02 +01:00
gingerBill
ef2931d4a5 Remove AstTypeType 2018-10-13 14:07:00 +01:00
gingerBill
2d4aa2be6d Remove type as being a keyword 2018-10-13 14:04:34 +01:00
gingerBill
f1e1814ff9 Syntactic sugar for anonymous enum within a bit set 2018-09-11 12:10:32 +01:00
gingerBill
91477e9e69 Allow for optional ok for return 2018-09-11 10:55:30 +01:00
gingerBill
4c4de1d6c4 Fix cloning of auto_cast Ast 2018-09-10 08:50:20 +01:00
gingerBill
4f3837f0e6 Procedure inlining on call site 2018-09-09 14:46:28 +01:00
gingerBill
12902821d6 Make diverging procedure types different from ones without a return type 2018-09-09 13:48:33 +01:00
gingerBill
3825eab989 Diverging procedures proc() -> ! (no return) 2018-09-08 12:16:03 +01:00
gingerBill
3cd6ae311d Parametric polymorphic union type 2018-09-08 12:02:25 +01:00
Ginger Bill
1d31eabb6e Fix minor parsing issue for polymorphic identifiers 2018-09-04 13:47:24 +01:00
gingerBill
11f5236434 Add $T: typeid/[]$E; Deprecate T: type/[]$E
`type` as a keyword will soon be removed in favour of polymorphic names (identifiers) in procedures
2018-09-02 16:33:54 +01:00
gingerBill
220485a2d2 typeid as keyword (ready to implement polymorphic name parameters) 2018-09-02 15:56:36 +01:00
gingerBill
e3f0ab7c3d Parallelize parser on *nix 2018-08-19 10:58:57 +01:00
gingerBill
b216e44870 Add underlying type for bit_set 2018-08-17 15:11:41 +01:00
gingerBill
884d5fed9f bit_set['A'..'Z'], bit_set[0..8] 2018-08-16 15:16:57 +01:00
gingerBill
ec84188597 Fix typos in parser 2018-08-16 10:30:44 +01:00
gingerBill
b3ebff715a Fix defer ir bug 2018-08-15 15:44:41 +01:00
gingerBill
966249c10a bit_set constants 2018-08-14 18:32:34 +01:00
gingerBill
acc010cba5 Add bit_set type 2018-08-14 17:07:56 +01:00
gingerBill
70586b1cf8 auto_cast prefix for procedure parameters 2018-08-09 17:58:11 +01:00
gingerBill
fad3947e26 Add *with_allocator procedures to mem 2018-08-05 23:40:19 +01:00
gingerBill
cdbf831a7a Replace context <- c {} with context = c;. context assignments are scope based 2018-08-04 23:14:55 +01:00
gingerBill
0718f14774 Reduce number of range and slice operators #239
Replace .. and ... with : and ..
2018-08-01 21:34:59 +01:00
gingerBill
a6fe656f21 foreign import x {"foo.lib", "bar.lib"} 2018-07-29 20:56:09 +01:00
gingerBill
6512a3e5f2 using Foo :: enum {A, B, C}; len(Foo) 2018-07-29 10:50:15 +01:00
gingerBill
c3c7834246 BigInt support in the constant system 2018-07-28 00:41:31 +01:00
gingerBill
0e91298fd1 Rename free to delete for non pointer types 2018-07-08 11:03:56 +01:00
gingerBill
9bef5ec01a Fix anonymous procedures 2018-07-01 16:21:32 +01:00
gingerBill
5fe4c33d0e Allow importation of core:builtin to get built-in entities 2018-06-17 21:46:37 +01:00
gingerBill
5b71ffd4f9 Rename clone_ast_node to clone_ast 2018-06-17 11:03:26 +01:00
gingerBill
c2ca24a486 Big renaming: AstNode to Ast 2018-06-17 10:58:59 +01:00
gingerBill
e5aff6fd6d Minimize AstNode size 2018-06-17 10:48:50 +01:00
gingerBill
3eb8aa8268 Modify CommentGroup parsing 2018-06-17 10:29:20 +01:00
gingerBill
b92a8c513e Modify how build settings are handled 2018-06-15 21:38:22 +01:00
gingerBill
8236c6d4b7 Allow for base enum type with an enum declaration 2018-06-11 22:50:13 +01:00
gingerBill
555fe37ad8 Remove the need for a look ahead 2018-06-11 18:06:58 +01:00
gingerBill
881f667558 Change how context <- is parsed to remove the need for a look-ahead 2018-06-11 18:02:04 +01:00