Commit Graph

56 Commits

Author SHA1 Message Date
gingerBill
be76da2c90 Begin optimizing tokenizer; Replace gb_utf8_decode with utf8_decode (CC but easier to change later) 2021-08-01 23:56:17 +01:00
gingerBill
a5d6fda433 Define which mutexes are blocking and recursive explicitly 2021-07-27 23:14:01 +01:00
gingerBill
35230b1a11 Add "Suggestion: Did you mean?" for selector expression typos 2021-07-08 23:15:07 +01:00
gingerBill
f1e13bdddb Prefix named types with package name in debug types 2021-03-23 20:45:39 +00:00
gingerBill
fea8c63ab3 Fix string_compare 2020-11-17 12:19:28 +00:00
gingerBill
0be6ddc7e2 Add -microarch:<string> (e.g. -microarch:native) 2020-10-20 12:25:11 +01:00
gingerBill
b8d33165c9 Add -target:<string> fuzzy checking with "Did you mean" message 2020-06-10 12:59:54 +01:00
gingerBill
ef539696b9 Strip carriage return \r from raw string literals 2020-05-23 11:39:29 +01:00
gingerBill
0b16ed7c85 Use memcmp for str_eq 2020-05-21 11:05:38 +01:00
gingerBill
e1da631d26 General functionality without context 2020-03-04 22:09:58 +00:00
gingerBill
9db81498d8 Make the string type elements "immutable", akin to char const * in C
Allows for extra security and optimization benefits
2019-12-01 14:10:59 +00:00
gingerBill
37e3e081c6 Update microsoft_craziness.h to work correctly with the rest of the codebase (and not use WIN32_LEAN_AND_MEAN) 2019-11-27 15:18:32 +00:00
gingerBill
9f0a28017d Fix typo in string_to_string16 #444 2019-10-20 10:50:18 +01:00
gingerBill
cf23954297 Improve #assert to show the procedure and signature it was called with; Allow the ability to print ExactValue correct now. 2019-08-23 11:51:04 +01:00
gingerBill
458ec5922e odin query
Output .json file containing information about the program
2019-05-25 20:24:19 +01:00
gingerBill
2878cd8241 New build flag: -define:foo=123 2019-02-23 23:21:27 +00:00
Tetralux
1e180d611d Allow 'odin run program.odin -- <args-for-program.exe> 2019-01-28 17:58:48 +00:00
Chris Heyes
ae02e9c34a Use name of source file as output_name 2018-10-16 23:56:19 +01:00
gingerBill
d0fc9aa069 Allow for '\"' 2018-08-10 17:48:29 +01:00
gingerBill
6d1c32eb77 Add escape code for ESC \e 2018-06-15 23:13:26 +01:00
gingerBill
268491b224 Use global arena for AstNode allocations 2018-06-09 19:53:06 +01:00
gingerBill
df578d6ec5 Allow for either .odin file or directory as the initial start 2018-05-27 11:40:27 +01:00
gingerBill
7ee9051a56 IR now builds with the new package system 2018-05-27 10:49:14 +01:00
gingerBill
c067b90403 Add basic package support (no IR support yet) 2018-05-26 23:12:55 +01:00
gingerBill
5b6770f3d2 Parse directories to be packages 2018-05-21 20:47:52 +01:00
gingerBill
69062ba3ab More code tidying with Array 2018-02-25 20:24:38 +00:00
gingerBill
e14e2c3b4d -out and generate executable in the current working directory 2018-02-25 11:49:44 +00:00
gingerBill
cec9f7abfe Add -debug command (still in development) 2017-11-19 15:06:56 +00:00
Ginger Bill
8e3b77aba8 Library collections 2017-09-07 20:55:59 +01:00
Ginger Bill
6707c8750e Import cycle checking 2017-08-27 14:42:19 +01:00
Ginger Bill
0fae31fb54 Extra type safety; Fix typos 2017-07-31 11:36:00 +01:00
Ginger Bill
629b248f53 Parallelization of the Parser
~66% reduction (unoptimized build)
~30% reduction (optimized build)
2017-07-30 19:01:02 +01:00
Ginger Bill
2db03cb4a5 Fix aprint* bug; NULL -> nullptr; Better error messages for overloaded functions 2017-07-06 22:43:55 +01:00
Ginger Bill
1d81b73df9 Basic command line flags: e.g. -opt=0 2017-06-24 22:58:50 +01:00
Ginger Bill
bba088bee7 Use UTF-8 command line on windows 2017-06-24 11:42:49 +01:00
Ginger Bill
4236519b84 #location(..) and #call_location 2017-06-18 14:36:06 +01:00
Ginger Bill
2b96be0ae8 Remove unnecessary typedef usage 2017-06-08 13:08:39 +01:00
Ginger Bill
13deb4706c Update String to use overloading 2017-06-08 12:37:07 +01:00
Ginger Bill
9b61adb97d Build as C++ 2017-06-08 12:03:40 +01:00
Ginger Bill
4d30ef7eda Change extensions .cpp to .c 2016-11-23 12:29:50 +00:00
Ginger Bill
8ecfca0c9b Remove templated Map; replace with #include macro "templates" trick 2016-11-23 10:36:48 +00:00
Ginger Bill
3517f96668 Remove: string overloads; defer 2016-11-22 20:29:46 +00: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
79af939522 Update ImplicitValue "architecture" 2016-10-15 22:30:58 +01:00
Ginger Bill
b593332942 Minimal Dependency Map: Only build what is needed 2016-09-27 15:28:44 +01:00
Ginger Bill
a31bab5aae Unicode file loading; push_allocator & push_context 2016-09-23 14:59:58 +01:00
Ginger Bill
3b266b194f enum_to_string fix; enum count, min_value, max_value 2016-09-19 22:26:07 +01:00
Ginger Bill
2d6171f3e5 #import search rule: relative then core/ 2016-09-17 22:42:09 +01:00
Ginger Bill
7509cdceb8 Default struct member reordering for minimal size
Rule: largest members to smallest; if same size, order in source order
2016-09-10 11:24:50 +01:00