Commit Graph

420 Commits

Author SHA1 Message Date
gingerBill
8e722274f0 Disallow blank identifier polymorphic types $_ 2019-07-07 14:14:28 +01:00
gingerBill
b891c0feab Fix ranges in switch statement for strings 2019-06-21 22:40:11 +01:00
gingerBill
65e9b4d5f0 Update parsers 2019-05-28 12:55:55 +01:00
gingerBill
222941727f Add ..< operator for ranges; Add extra checking for bit set assignments 2019-05-28 12:45:20 +01:00
gingerBill
b1663a14e9 Add an error for C-style pointer selector expressions using '->' when parsing 2019-05-09 22:59:17 +01:00
gingerBill
9ce8f124bb Slight change to determine_path_from_string rules 2019-04-20 16:52:09 +01:00
gingerBill
63bbb9b62f Change the file name rules for imports (use / rather than \ on windows) 2019-04-20 16:47:28 +01:00
gingerBill
56c4039e72 #load directive (request from #368) (Basic implementation) 2019-04-20 15:05:35 +01:00
gingerBill
ecd2eacd75 Remove dead keywords; Fix min and max for enum types 2019-03-31 22:35:05 +01:00
gingerBill
1354f53d02 Remove derived from context; Fix parsing issue for typeid specializations in record parameters; Fix runtime printing of types 2019-03-31 11:58:54 +01:00
gingerBill
2ada90e094 Improve a tokenizer error message; Add extra tokens for in and notin for fun! 2019-03-24 19:12:41 +00:00
gingerBill
ad3b6ab718 Implicit Selector Expressions: .A 2019-03-06 16:19:47 +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
64bd884d94 Add "none" calling convention 2019-02-23 14:42:44 +00:00
gingerBill
e1ae359a77 Replace redundant code 2019-02-06 16:06:48 +00:00
gingerBill
dee28d998f Allow for @indent for attributes that don't require any parameters; Add -ignore-unknown-attributes 2019-01-30 14:24:14 +00:00
gingerBill
1aea59a0fc Fix typo in parser.cpp 2019-01-29 21:53:36 +00:00
gingerBill
44b959648c Pass any and union "by pointer" to make the tag a pointer 2019-01-26 20:13:43 +00:00
gingerBill
345e790f52 Remove dead code 2019-01-24 15:52:51 +00:00
gingerBill
5bfe5ad82e Remove unused directive 2019-01-03 12:21:11 +00:00
gingerBill
8b2f902f3d Fix parsing issue with stray } and case at the file scope 2018-12-31 15:20:47 +00:00
gingerBill
2bbad5903f Add static to fix_advance_to_next_stmt 2018-12-28 13:32:59 +00:00
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