Commit Graph

215 Commits

Author SHA1 Message Date
Ginger Bill
23d32f34e5 Block Expressions and give 2016-12-30 15:45:10 +00:00
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
f5eeecaca5 Begin generic declarations for lists of specifications 2016-12-19 11:56:45 +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
4c10fbdcd4 Change record field syntax 2016-12-18 22:23:34 +00:00
Ginger Bill
e370337f97 var/const decl; remove : from parameter lists 2016-12-18 21:50:14 +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
062a2c63e1 Very minor style changes 2016-12-18 16:17:45 +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
ad84314143 Update README.md 2016-12-09 16:31:14 +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
de9016b7d0 Fix DllMain and only call main on DLL_PROCESS_ATTACH 2016-12-09 00:43:50 +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
60b6538a7a Set :: as a single token 2016-12-07 10:20:25 +00:00
Ginger Bill
d9bd770992 Fix enumeration constant expressions; Remove empty file error 2016-12-06 14:06:31 +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
ab2ca7cf59 Fix illegal type declaration error 2016-11-30 20:07:23 +00:00
Ginger Bill
b76c8abe73 error_node 2016-11-30 10:52:09 +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
348bcc3f9a Update version string 2016-11-28 22:23:54 +00:00
Ginger Bill
4dd8552c32 Fix slicing and add clamp 2016-11-28 22:17:27 +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
7792f009b8 Numpty forgot to add .c files 2016-11-23 14:41:20 +00:00
Ginger Bill
fb45287e9e Fix import/export rules for #import as . 2016-11-23 13:46:59 +00:00
Ginger Bill
4d30ef7eda Change extensions .cpp to .c 2016-11-23 12:29:50 +00:00
Ginger Bill
a77c6b3e55 Compile as C! Whoop! 2016-11-23 12:25:37 +00:00
Ginger Bill
ef8563a818 Remove auto 2016-11-23 12:03:26 +00:00
Ginger Bill
aa2bcb166f typedef struct and start removing auto 2016-11-23 11:07:35 +00:00
Ginger Bill
8ecfca0c9b Remove templated Map; replace with #include macro "templates" trick 2016-11-23 10:36:48 +00:00
Ginger Bill
cb7b9a413d Remove Array<T> and replace with macro version 2016-11-22 21:29:57 +00:00
Ginger Bill
3517f96668 Remove: string overloads; defer 2016-11-22 20:29:46 +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