Commit Graph

150 Commits

Author SHA1 Message Date
Ginger Bill
2a5b674d33 Custom struct alignment 2017-02-05 15:19:30 +00:00
Ginger Bill
205f4664f8 Update code from OSX merge to be consistent with the rest of the code
Remove some dead code whilst I was here too :P
2017-02-01 20:59:14 +00:00
zhiayang
5516e80ab7 Merge branch 'master' of https://github.com/zhiayang/Odin 2017-02-02 04:21:42 +08:00
zhiayang
864310e3da oh boy, basic osx/unix support 2017-02-02 04:20:33 +08:00
Ginger Bill
4e7082a68d Change internals of context; Disable immutable 2017-02-01 17:52:55 +00:00
Ginger Bill
34150385d8 Change vector memory layout and operations; for in vector. 2017-01-30 22:31:34 +00:00
Ginger Bill
0ca1b4612c Allow _ in floats 2017-01-29 23:13:50 +00:00
Ginger Bill
9e143a38ce sprint*, variadic append works correctly now. 2017-01-29 21:29:10 +00:00
Ginger Bill
43be91bca3 Variadic append 2017-01-29 20:48:08 +00:00
Ginger Bill
984e36a151 Dynamic arrays 2017-01-29 20:15:16 +00:00
Ginger Bill
ec9c8fb8a4 Update README.md 2017-01-29 14:45:12 +00:00
Ginger Bill
3e79ec4aef Fix untyped to any assignments. Fixed crash when arguments with no value are passed 2017-01-29 14:27:55 +00:00
Ginger Bill
e86c990b75 Overloaded free; 3 dotted ellipsis 2017-01-28 20:16:18 +00:00
Ginger Bill
31aacd5bf4 Fix parsing for block/if expression within if/for/etc. statements 2017-01-27 23:02:55 +00:00
Ginger Bill
92453369c5 Remove while loop and readd c-style for loops i.e. all loops are just for 2017-01-27 17:43:42 +00:00
Ginger Bill
832009f33a in keyword for for and match type 2017-01-27 16:34:58 +00:00
Ginger Bill
d3d3bfd455 Fix utf8 stuff, Allow _ in numbers, Begin writing next demo code. 2017-01-27 12:43:01 +00:00
Ginger Bill
ce3582fd89 Remove case sensitivity for libraries on windows 2017-01-26 20:06:22 +00:00
Ginger Bill
e3e16f5d05 Library names - Only link with used foreign libraries 2017-01-26 20:00:16 +00:00
Ginger Bill
f47f25f942 Fix pointer differences (issue #11); remove #dll_import 2017-01-26 17:39:44 +00:00
Ginger Bill
e85458919c Basic float printing 2017-01-26 15:38:35 +00:00
Ginger Bill
b59a052e32 Change casting syntax: cast(T)x transmute(T)x et al. 2017-01-25 19:19:25 +00:00
Ginger Bill
12498b2d39 Fix issue #8 - https://github.com/gingerBill/Odin/issues/8 2017-01-20 11:23:46 +00:00
Ginger Bill
6d93aa429f Fix issue #10 2017-01-20 00:21:40 +00:00
Ginger Bill
3f023509a7 using immutable thread_local on variable declarations 2017-01-19 20:03:10 +00:00
Ginger Bill
563b1e2b28 immutable field prefix 2017-01-19 19:02:44 +00:00
Ginger Bill
4603d2525e Closed range ... (both inclusive); Type comparisons with == and != 2017-01-19 11:29:15 +00:00
Ginger Bill
2af9fb79dc Change cast syntax, int(x), []byte(s), (^int)(p) 2017-01-17 23:36:07 +00:00
Ginger Bill
367d307dc4 Fix conversion of untyped integers to pointers 2017-01-17 20:27:14 +00:00
Ginger Bill
cb59c1cf08 Comma for all field separators; Overloaded procedures follow exportation rules 2017-01-17 18:47:38 +00:00
Ginger Bill
383f5b55ad Best viable overloading procedure algorithm; no_alias; call expr style casts 2017-01-17 15:20:11 +00:00
Ginger Bill
6dc6b6f8aa Err on ambiguous overloaded calls 2017-01-15 20:43:28 +00:00
Ginger Bill
ac736aa4ec Procedure overloading 2017-01-15 19:55:04 +00:00
Ginger Bill
6fe25badf0 Bug fix: comparisons with shifts 2017-01-15 12:00:13 +00:00
Ginger Bill
c29d433e38 Handle enums correctly with printf 2017-01-08 23:19:50 +00:00
Ginger Bill
ff473e8342 "Old style" enums
name and value information
`count`, `min_value`, `max_value` constants
2017-01-08 20:24:12 +00:00
Ginger Bill
659e5359b2 fmt.printf - Go style due to runtime type safety 2017-01-08 01:10:55 +00:00
Ginger Bill
703e1aa2bc Fix core library; Disable adding entity definitions for blank identifiers 2017-01-07 11:44:42 +00:00
Ginger Bill
207b252f23 Fix checking termination of a procedure 2017-01-05 22:32:19 +00:00
Ginger Bill
b07ee9ec23 Fix problem with odin build 2017-01-05 21:43:36 +00:00
Ginger Bill
915b5cdab7 Rename llir -> ir 2017-01-04 11:24:32 +00:00
Ginger Bill
cff1b3dff6 v0.0.5
Fix enumerations to so they work as integers in indices; Add llir_opt.c and llir_print.c
2017-01-03 20:07:46 +00:00
Ginger Bill
70d4ca00df while; range is now for; remove ++ and -- 2017-01-03 19:11:12 +00:00
Ginger Bill
a86896e4d3 Interval expressions in range 2017-01-03 18:02:13 +00:00
Ginger Bill
a3883a178c range statement 2017-01-02 18:47:47 +00:00
Ginger Bill
ce89a1428e Fix parameter/field lists and #import #include syntax 2017-01-02 00:26:28 +00:00
Ginger Bill
9202bd1b06 Nearly finished Jai-like declarations 2017-01-01 20:41:10 +00:00
Ginger Bill
a48e0c7179 Begin transition to Jai-like syntax 2017-01-01 19:08:03 +00:00
Ginger Bill
3f1195cd03 More declaration differentiation in semantic stage e.g. make only variables and constants 2017-01-01 18:18:43 +00:00
Ginger Bill
311b5cb6e2 Add enum type info and fix enum casting 2017-01-01 16:58:38 +00:00