Commit Graph
100 Commits
Author SHA1 Message Date
gingerBill bc37bd5429 Merge branch 'packages' of https://github.com/odin-lang/Odin into packages 2018-07-01 17:14:43 +01:00
gingerBill 5f20e04259 Fix on *nix 2018-07-01 17:14:22 +01:00
gingerBill 9bef5ec01a Fix anonymous procedures 2018-07-01 16:21:32 +01:00
gingerBill 3a16f1e854 Minor style change 2018-06-17 22:25:28 +01:00
gingerBill 877400dd12 Scope to use flags rathers than booleans 2018-06-17 22:22:30 +01:00
gingerBill a4e3201113 Minor cleanup for builtin scope/pkg 2018-06-17 22:07:27 +01:00
gingerBill a99cc2fd70 Clean up import lookup code 2018-06-17 21:50:40 +01:00
gingerBill 5fe4c33d0e Allow importation of core:builtin to get built-in entities 2018-06-17 21:46:37 +01:00
gingerBill 4d9d38cc28 Move TypeAndValue to Ast from Map 2018-06-17 16:35:22 +01:00
gingerBill 5b71ffd4f9 Rename clone_ast_node to clone_ast 2018-06-17 11:03:26 +01:00
gingerBill c2ca24a486 Big renaming: AstNode to Ast 2018-06-17 10:58:59 +01:00
gingerBill e5aff6fd6d Minimize AstNode size 2018-06-17 10:48:50 +01:00
gingerBill 3eb8aa8268 Modify CommentGroup parsing 2018-06-17 10:29:20 +01:00
gingerBill 6d1c32eb77 Add escape code for ESC \e 2018-06-15 23:13:26 +01:00
gingerBill ba776a3c9f Fix bitwise not for signed integers 2018-06-15 23:01:12 +01:00
gingerBill cd7e260f4e Fix cyclic polymorphic procedure usage and improve its error message 2018-06-15 22:49:06 +01:00
gingerBill ba67e474d3 Make source code compile with 32 bit (but not build 32 bit code) 2018-06-15 21:46:03 +01:00
gingerBill b92a8c513e Modify how build settings are handled 2018-06-15 21:38:22 +01:00
gingerBill 13572aeef0 Fix gb.h 2018-06-15 20:26:39 +01:00
gingerBill 5081ea1a0c Fix type aliasing comparison; Fix gb_utf8_decode 2018-06-15 19:59:35 +01:00
gingerBill e9e7ce2606 Allow .allocator for dynamic arrays; Add mem.Pool 2018-06-12 19:10:14 +01:00
gingerBill 915dcb0c28 Fix min dependency check 2018-06-11 22:57:40 +01:00
gingerBill 8236c6d4b7 Allow for base enum type with an enum declaration 2018-06-11 22:50:13 +01:00
gingerBill 555fe37ad8 Remove the need for a look ahead 2018-06-11 18:06:58 +01:00
gingerBill 881f667558 Change how context <- is parsed to remove the need for a look-ahead 2018-06-11 18:02:04 +01:00
gingerBill 0a99595efe Remove using in stuff 2018-06-11 17:34:57 +01:00
gingerBill 268491b224 Use global arena for AstNode allocations 2018-06-09 19:53:06 +01:00
gingerBill 49ea9ed722 Entity aliasing clean up 2018-06-09 10:08:17 +01:00
gingerBill d7108416c9 Remove dead code 2018-06-07 23:52:13 +01:00
gingerBill b136630856 Fix type info generation for empty structs 2018-06-07 23:24:37 +01:00
gingerBill b027b1d60f Fix min type info for polymorphic procedures and named types 2018-06-03 21:09:08 +01:00
gingerBill c39332c7e7 Revert name mangling 2018-06-03 19:18:47 +01:00
gingerBill 3f4b6b22dc Change our IR name mangling rules 2018-06-03 17:55:13 +01:00
gingerBill e0549df03e Fix minor possible issue 2018-06-03 17:44:10 +01:00
gingerBill e46662a546 Rename os.default_allocator to os.heap_allocator 2018-06-03 16:40:58 +01:00
gingerBill 106302189c Use gbString for opt_flags 2018-06-03 16:09:24 +01:00
gingerBill 05c5f98e8e Add -debug-compile parameter for llc 2018-06-03 15:55:14 +01:00
gingerBill d556fa2cd8 Remove special shared scope for runtime stuff 2018-06-03 15:06:40 +01:00
gingerBill 9bd7f023b2 Split up init_preload into specific parts 2018-06-03 11:38:02 +01:00
gingerBill 398109ac84 Remove need for __llvm_core 2018-06-03 10:51:43 +01:00
gingerBill 12b870ba66 Use const & for Array<AstNode *> parameters 2018-06-03 10:30:31 +01:00
gingerBill 6202fb8373 Re-allow when statements at the file scope 2018-06-02 19:44:34 +01:00
gingerBill ced818ad54 Remove dead code from checker 2018-06-02 11:58:35 +01:00
gingerBill ccbb6df749 Handle multiple +build package tags with '!' (nots) 2018-05-28 21:25:08 +01:00
gingerBill 6eb505a677 Comment based build tags for packages (basic and temporary) 2018-05-28 20:59:06 +01:00
gingerBill 619783ca1b Remove clutter parameters and begin parallelizing the type checker 2018-05-28 18:46:39 +01:00
gingerBill 642aa0bc4b Refactor: use CheckerContext rather than Checker in type checking part 2018-05-28 15:57:53 +01:00
gingerBill 45b3067068 Remove tmp_allocator from Checker 2018-05-28 14:15:08 +01:00
gingerBill b7858a66b9 Parallelize per file rather than per package 2018-05-28 12:06:50 +01:00
gingerBill 4e203feaf4 Change import lookup 2018-05-27 23:46:08 +01:00
gingerBill a513b47780 Remove unused packages 2018-05-27 23:33:10 +01:00
gingerBill 547a2831c7 Clean up name mangling by using unique package names per project 2018-05-27 22:09:11 +01:00
gingerBill 5c52ffe24e Reorganize runtime package 2018-05-27 21:22:25 +01:00
gingerBill a5763d6fee Err on empty directory packages 2018-05-27 14:12:10 +01:00
gingerBill 95482c554d Fix build.bat 2018-05-27 13:53:46 +01:00
gingerBill 10758710d4 Fix demo.odin 2018-05-27 13:53:19 +01:00
gingerBill 86cf9383ea Fix delayed assert collection 2018-05-27 13:49:55 +01:00
gingerBill 307977d4cf Remove dead code 2018-05-27 13:30:18 +01:00
gingerBill 1beff539d7 Single file "main" file 2018-05-27 13:22:24 +01:00
gingerBill df578d6ec5 Allow for either .odin file or directory as the initial start 2018-05-27 11:40:27 +01:00
gingerBill 6aae381e83 Move ODIN_* platform constants to core:os 2018-05-27 11:03:46 +01:00
gingerBill 7ee9051a56 IR now builds with the new package system 2018-05-27 10:49:14 +01:00
gingerBill eb11edabe0 Add file scopes for the packages 2018-05-27 00:10:38 +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 718b80ba39 Fix demo for removing default struct values 2018-05-20 17:39:49 +01:00
gingerBill 4d052d5119 Remove code relating to default struct values 2018-05-20 17:31:46 +01:00
gingerBill 7e4c643401 Disable default struct field values; Update README.md 2018-05-20 16:00:39 +01:00
gingerBill e920338f21 Remove old dependency 2018-05-20 08:58:48 +01:00
gingerBill e25c72ecdd Fix #219 and #220 2018-05-14 17:05:52 +01:00
gingerBill 780b81a59f Allow for NO_DEFAULT_STRUCT_VALUES
(will decide later if I want them or not)
2018-05-13 21:09:49 +01:00
gingerBill 9f1dda701d Comment out test 2018-05-13 18:43:21 +01:00
gingerBill e597a8d72e Fix issues with exact integer bounds and remove dead code 2018-05-13 17:38:35 +01:00
gingerBill de9a4b5164 Disable pointer arithmetic 2018-05-13 16:10:02 +01:00
gingerBill 6164672421 Change FreeAll to Free_All 2018-05-13 10:14:32 +01:00
gingerBill 61906613b0 Add typeid to Type_Info struct 2018-05-13 10:09:21 +01:00
gingerBill 3b48fa8e7d Fix default initialized values for globals (#217) 2018-05-12 21:22:39 +01:00
gingerBill 324b7d65e7 Use __type_info_of internally 2018-05-12 20:17:12 +01:00
gingerBill 373a60b9ef type_info_of allows typeid; typeid_of allows ^Type_Info; Otherwise only allow type 2018-05-12 19:54:16 +01:00
gingerBill 2ef22e86e0 Make any use typeid rather than ^Type_Info 2018-05-12 18:40:49 +01:00
gingerBill 830f4f540f typeid 2018-05-12 17:39:04 +01:00
gingerBill 56ff5496bc Minimal Type Info Dependency handling 2018-05-12 16:53:44 +01:00
gingerBill 20fbece14c Change semantics for distinctness for pointers, arrays, dynamic arrays, and maps. 2018-05-12 10:47:32 +01:00
gingerBill 9fbfd86cde Add log to math.odin 2018-05-12 10:46:00 +01:00
gingerBill 7547bc66cf Complete remove all non required preload stuff from min dep and only use what is used. 2018-05-12 10:38:40 +01:00
gingerBill 18a9fa7355 Improve minimal dependency system 2018-05-12 10:27:55 +01:00
gingerBill b32af841c5 Merge branch 'master' of https://github.com/odin-lang/Odin 2018-05-06 15:31:32 +01:00
gingerBill 66b4252931 Fix #210 2018-05-06 15:31:18 +01:00
gingerBill fc77b5b4ac Try to fix internal compiler error in #208 2018-04-10 21:03:51 +01:00
gingerBill a83d916fad Fix immutable context to any assignment #214 2018-04-10 20:51:44 +01:00
gingerBill e71a641379 Fix internal compiler error trigger for issue #212 2018-04-10 20:46:32 +01:00
gingerBill e2eca45188 Fix race condition caused by parallelized parser: #211 2018-04-10 20:35:05 +01:00
gingerBill 4d78540658 Fix #210 2018-04-10 20:20:33 +01:00
gingerBill b83c3f265b Fix #209 #assert bug 2018-04-10 20:18:16 +01:00
gingerBill 30f5a3bb93 Move cycle checking to much earlier on in the semantic stage 2018-03-23 20:48:30 +00:00
gingerBill 2e1e1e6034 Type caching 2018-03-23 16:35:41 +00:00
gingerBill 991479fbf9 Remove allocator parameter to types.cpp functions 2018-03-23 16:01:23 +00:00
gingerBill 5660f98cc3 Merge branch 'master' of https://github.com/odin-lang/Odin 2018-03-23 15:23:31 +00:00
gingerBill 5bf0f9d630 Fix type cycle bug 2018-03-23 15:23:14 +00:00
gingerBill fff4ead96a Fix gb_alloc_str_len 2018-03-07 20:36:15 +00:00