Commit Graph

96 Commits

Author SHA1 Message Date
Ginger Bill
d714bece47 Handle calling conventions correctly 2016-12-22 23:06:31 +00:00
Ginger Bill
923b039cf6 Fix anonymous procedures and their dependencies 2016-12-21 15:20:33 +00:00
Ginger Bill
d0e1efe622 Generic (grouped) declarations: var, let, const, type, import, include 2016-12-20 18:58:17 +00:00
Ginger Bill
478d63424f Remove enum for favour of Go-style enumerations 2016-12-19 14:03:59 +00:00
Ginger Bill
ac1566762b Golang style enumerations with iota 2016-12-19 13:18:20 +00:00
Ginger Bill
77e219d442 Change var decl syntax
`var x int;` from `x: int;`
2016-12-18 22:32:18 +00:00
Ginger Bill
5217eb55b4 Change of proc and type declaration syntax to "prefix" style
`proc name()` from `name :: proc()`
2016-12-18 20:34:55 +00:00
Ginger Bill
625b98eac4 Fix issue with printing invalid IR for nested unions
(GitHub #4)
2016-12-17 10:23:28 +00:00
Ginger Bill
d4457e9fa4 Minor changes 2016-12-16 20:18:23 +00:00
Ginger Bill
f567983260 Semicolons mandatory again (and probably forever now...) 2016-12-16 11:31:08 +00:00
Ginger Bill
a6f8c9d6e0 v0.0.4 - odin build_dll, atomic.odin, sync.odin 2016-12-09 16:28:31 +00:00
Ginger Bill
e8b4228833 Fix procedure casting; SUBSYSTEM to CONSOLE in linker 2016-12-09 00:24:12 +00:00
Ginger Bill
0d69dfcde6 Custom entry points on Windows (DllMain; WinMain) 2016-12-09 00:07:08 +00:00
Ginger Bill
fa89d2775a build_dll; Require an entry point procedure main 2016-12-08 17:33:30 +00:00
Ginger Bill
517b34f798 Improve parsing with semicolon insertion 2016-12-06 00:05:59 +00:00
Ginger Bill
a16bdb215a Go/BCPL style semicolon insertion during tokenizing stage 2016-12-05 23:39:26 +00:00
Ginger Bill
88aa74bbb9 Remove multiple messages for cyclic type errors. 2016-12-05 00:22:30 +00:00
Ginger Bill
8ec9811d7a Fix (Crude) cyclic type checking for arrays and vectors 2016-12-04 23:41:21 +00:00
Ginger Bill
c71b547cde (Crude) Cyclic Type Checking 2016-12-04 23:25:52 +00:00
Ginger Bill
76e724718c Fix preload initialization ordering 2016-12-04 00:49:06 +00:00
Ginger Bill
0b87313f08 Change entity collection strategy 2016-12-03 00:16:51 +00:00
Ginger Bill
4bb45700a5 Semicolons are required; when condition for certain file scope declarations; #import syntax change 2016-12-01 22:44:00 +00:00
Ginger Bill
be8b9bda2f Delay importing entities till all other entities are collected 2016-11-30 20:46:00 +00:00
Ginger Bill
d9c686b53d when statement; Better entity collection system (for both local and global); Better parsing for record declarations 2016-11-29 23:57:06 +00:00
Ginger Bill
b232b9d5ea Basic when statement - Compile time if statement
This is similar to an #if in C but handled during the semantic checking stage.
2016-11-29 22:08:48 +00:00
Ginger Bill
492490f7f6 Update demo.odin 2016-11-28 22:16:29 +00:00
Ginger Bill
598dab5bc4 #rune "" to ''; Remove infix and postfix call notation 2016-11-28 20:39:43 +00:00
Ginger Bill
cbb70c7873 Fix parsing for comments; add global ODIN_* string constants 2016-11-24 23:22:16 +00:00
Ginger Bill
fb45287e9e Fix import/export rules for #import as . 2016-11-23 13:46:59 +00:00
Ginger Bill
36ad9dae43 128 bit integers
Kind of works but may be buggy due to LLVM not actually sure
2016-11-22 00:13:52 +00:00
Ginger Bill
24347ced45 Support any in match type 2016-11-20 01:34:43 +00:00
Ginger Bill
24ca106521 v0.0.3 Build 2016-11-17 22:58:00 +00:00
Ginger Bill
6c2772d093 Scrap Virtual Machine and begin again
I just didn't like the style of it.
2016-11-03 16:26:22 +00:00
Ginger Bill
8534e064b9 File restructure (again) 2016-11-02 13:44:04 +00:00
Ginger Bill
5271adb82f Interpreter - Structs and Arrays 2016-10-30 23:48:32 +00:00
Ginger Bill
0ffe4b600d Interpreter - call internal procedures 2016-10-30 19:20:47 +00:00
Ginger Bill
ca311c4a59 Begin work on the Interpreter 2016-10-30 17:49:30 +00:00
Ginger Bill
3ec67853e1 Minor Entity refactor 2016-10-30 13:20:45 +00:00
Ginger Bill
09f39ae2cc Better constant strings for SSA; Fix Type_Info 2016-10-26 20:10:32 +01:00
Ginger Bill
6996df4104 Fix double declarations with enum bug 2016-10-26 12:00:40 +01:00
Ginger Bill
a5c1e83ce4 Fix Type_Info bug overwriting type_info data. 2016-10-23 22:50:15 +01:00
Ginger Bill
b454371f3b Separation of certain instructions for better clarity. 2016-10-23 15:57:59 +01:00
Ginger Bill
bd5d095de4 Separate ssa_struct_gep and ssa_array_gep procedures 2016-10-23 14:46:52 +01:00
Ginger Bill
f60dc7b0a7 Minor Style Fixes 2016-10-22 19:41:58 +01:00
Ginger Bill
a675d3f94d union_cast 2016-10-16 21:31:06 +01:00
Ginger Bill
b9719df0ad Fix exact value bug when updating expressions 2016-10-16 00:26:53 +01:00
Ginger Bill
79af939522 Update ImplicitValue "architecture" 2016-10-15 22:30:58 +01:00
Ginger Bill
f3209584a3 Add Pointer Arithmetic 2016-10-12 17:51:36 +01:00
Ginger Bill
f5318c46d1 Implicit Values: context; Fix lvalue selector assignments; Fix offset_of* for using fields. 2016-10-10 10:27:50 +01:00
Ginger Bill
e299c3693e SSA Phi Node Support 2016-10-08 22:03:40 +01:00