Commit Graph

42 Commits

Author SHA1 Message Date
Ginger Bill fec6df65b3 Use 128-bit integers for ExactValue integers 2017-05-30 15:23:01 +01:00
Ginger Bill 45dbe8d354 default: to case:; no_alias to #no_alias 2017-05-27 11:47:21 +01:00
Ginger Bill 784f3ecf7e Syntax change: cast(T)x => T(x); union_cast(T)x => x.(T); transmute(T)x => transmute(T, x); y:=^x => y:=&x;
Sorry for all the code breaking in this commit :(
2017-04-30 15:09:36 +01:00
Ginger Bill c2fa79012e Fix find_using_index_expr 2017-04-23 11:04:22 +01:00
Ginger Bill 91ed51ff5c Continue work on custom SSA; Fix double declaration in when statements 2017-04-21 17:56:29 +01:00
Ginger Bill aaf355e750 Basic Linux Build! 2017-04-09 22:33:32 +01:00
Ginger Bill 5562364a98 Add branch labels for loops; using list 2017-03-19 16:59:11 +00:00
Ginger Bill 32150e401e Update gb.h 2017-03-17 12:30:59 +00:00
Ginger Bill aaec8bf423 windows.odin TYPE_NAME to Type_Name; More SSA work and SSA printing for debugging 2017-03-12 16:42:51 +00:00
Ginger Bill 0fcbda951a Finally fix signed integer conversion and printing 2017-03-10 10:34:25 +00:00
Ginger Bill e2734a2dc6 Begin work on the custom backend 2017-03-05 21:22:33 +00:00
Ginger Bill 883dd0642c Change prev ssa to llir; 2017-01-03 19:34:06 +00:00
Ginger Bill 40f5dd56f7 Fix for interval upper bound check 2017-01-03 19:22:08 +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 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
Ginger Bill 6fef74317c Bring back enum but using iota 2017-01-01 16:18:50 +00:00
Ginger Bill 0c6775ca14 Fix give expressions 2016-12-30 22:52:43 +00:00
Ginger Bill 6748f305db select to phi in if expression 2016-12-30 16:31:04 +00:00
Ginger Bill 2ecafda1d3 if expression 2016-12-30 16:21:45 +00:00
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 f5eeecaca5 Begin generic declarations for lists of specifications 2016-12-19 11:56:45 +00:00
Ginger Bill 4c10fbdcd4 Change record field syntax 2016-12-18 22:23:34 +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 de9016b7d0 Fix DllMain and only call main on DLL_PROCESS_ATTACH 2016-12-09 00:43:50 +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 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 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 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 7792f009b8 Numpty forgot to add .c files 2016-11-23 14:41:20 +00:00