Commit Graph
100 Commits
Author SHA1 Message Date
Ginger Bill df7a4eda8a Allow for cyclic import but disallow cyclic using import and export 2017-10-07 11:37:43 +01:00
Ginger Bill 91cc0b282a Fix issue #114 2017-10-04 18:57:27 +01:00
Ginger Bill 01d8aea4df Disallow procedures literals as default values in anonymous struct types 2017-10-01 21:44:55 +01:00
Ginger Bill ee904060c5 Disallow anonymous structs with procedures as default values 2017-10-01 21:22:39 +01:00
Ginger Bill afb5538e83 Default procedure values for proc 2017-10-01 20:27:02 +01:00
Ginger Bill 1f24f105cc "Constant" procedure values for default values in structs 2017-10-01 20:10:13 +01:00
Ginger Bill 8f39ebbe5a Procedure literals for default values in structs 2017-10-01 20:01:00 +01:00
Ginger Bill c1e720a49b match to switch; Optional semicolons after "import" statements 2017-10-01 17:09:57 +01:00
Ginger Bill f38c8875b2 Fix issue #104 2017-10-01 14:29:54 +01:00
Ginger Bill e7e51f53ce Fix cyclic polymorphic struct bug #111 2017-10-01 14:10:31 +01:00
Ginger Bill 5259de5872 Reserve the link_name main 2017-09-30 11:28:17 +01:00
Ginger Bill e2b9c87aa8 Wrap entry point main around the C style main in the IR 2017-09-30 11:20:35 +01:00
Ginger Bill 8c7cf0dbb0 Fix union array bug (Issue #112) 2017-09-29 21:35:59 +01:00
Ginger Bill e6e9375b09 Remove http_test.odin 2017-09-29 21:20:39 +01:00
Ginger Bill c6096f9205 Revert to demo.odin 2017-09-29 21:11:51 +01:00
Ginger Bill 11614c2649 Fix old_demos; Fix when bug; Fix enum .names 2017-09-29 21:11:16 +01:00
Ginger Bill 793bc8c585 Fix issue #89 2017-09-25 23:08:22 +01:00
Ginger Bill 335e88b738 Fix issue #106 2017-09-25 23:06:04 +01:00
Ginger Bill b77ea94976 Fix issue #108 2017-09-25 22:59:59 +01:00
Ginger Bill ae17a51c0d Fix issue #109 2017-09-25 22:53:59 +01:00
Ginger Bill 572ac616c1 Prevent statements after branch statements. 2017-09-24 14:58:15 +01:00
Ginger Bill 96bf6a5bcb Fix cyclic importation error printing 2017-09-23 20:47:02 +01:00
Ginger Bill c43d66c286 Use comma for struct field separators (disallow nesting) 2017-09-21 23:18:28 +01:00
Ginger Bill 95fb5fa46c Fix #export proc tag 2017-09-21 22:32:24 +01:00
Ginger Bill d614913c11 Fix decimal.odin, again 2017-09-20 23:17:33 +01:00
Ginger Bill 3bfaac0844 Fix decimal.odin assignment bug 2017-09-20 22:59:46 +01:00
Ginger Bill 14d0cbf6d7 Fix load order of files (again) 2017-09-20 21:42:42 +01:00
Ginger Bill 61a163d773 Fix crash with build_dll (Issue #100) 2017-09-20 21:00:40 +01:00
Ginger Bill 3a644dad78 Fix issue #101 2017-09-20 20:45:40 +01:00
Ginger Bill d2c1c719bd Fix file load order and allow when statements at file scope 2017-09-20 20:38:32 +01:00
Ginger Bill 333db4dc94 Fix issues #95 and #96 2017-09-13 22:20:27 +01:00
Ginger Bill cbcf4b6071 Fix issue #94 2017-09-11 22:49:26 +01:00
Ginger Bill e6e0aba8c3 Remove when suffixes; Implement file scope when statement, evaluated in source order 2017-09-10 15:17:37 +01:00
Ginger Bill 85097a9958 Fix global variable initialization IR bug 2017-09-10 13:50:11 +01:00
Ginger Bill 7791c343c4 Allow for multiple library collections; Store AstFile as pointer 2017-09-10 13:26:14 +01:00
Ginger Bill 3bd762591a Fix path_is_directory for *nix 2017-09-07 21:33:37 +01:00
Ginger Bill 8e3b77aba8 Library collections 2017-09-07 20:55:59 +01:00
Ginger Bill 36e3a02f67 Fix bit_field type information 2017-09-02 22:54:11 +01:00
Ginger Bill 566a242ba3 Fix issue #92 2017-09-02 10:06:44 +01:00
Ginger Bill 1e3b3c107c IR Fix for UnionTagValue 2017-08-28 23:04:48 +01:00
Ginger Bill 2ac33285c1 Remove metagen.odin 2017-08-27 23:28:20 +01:00
Ginger Bill 7cb8016df3 Add examples 2017-08-27 23:27:12 +01:00
Ginger Bill cf3c5a878a export declarations 2017-08-27 19:36:43 +01:00
Ginger Bill 2d20bde495 Remove () grouping for foreign_library 2017-08-27 19:24:30 +01:00
Ginger Bill b9e347ef50 Replace import_load with using import . 2017-08-27 17:03:27 +01:00
Ginger Bill 6707c8750e Import cycle checking 2017-08-27 14:42:19 +01:00
Ginger Bill e5502c13ee Restrict global variables to not allow tuples 2017-08-20 19:35:52 +01:00
Ginger Bill f30d2e43ea Add priority_queue.cpp and ptr_set.cpp 2017-08-20 18:39:09 +01:00
Ginger Bill 6c73f9d3fd Global variable dependency initialization ordering
Fuck graph theory
2017-08-20 18:28:21 +01:00
Ginger Bill 1161aa829d Fix mem.Arena 2017-08-13 22:20:44 +01:00
Ginger Bill 01519f2fd5 Fix push_allocator 2017-08-13 22:09:26 +01:00
Ginger Bill 33aad3a8ce Merge branch 'master' of https://github.com/gingerBill/Odin 2017-08-12 20:04:58 +01:00
Ginger Bill 4262c125c5 Fix struct #packed alignment calculation 2017-08-12 20:04:35 +01:00
Ginger Bill a09d5959ef Fix issues with OSX 2017-08-11 12:47:07 +01:00
Ginger Bill d7bd3f8402 Fix compilation issues on OSX 2017-08-11 00:16:57 +01:00
Ginger Bill 0fff6a2b74 Fix i128 division 2017-08-10 23:46:12 +01:00
Ginger Bill f4c0405221 Fix inline #raw_union bug in issue #87 2017-08-08 21:27:42 +01:00
Ginger Bill 49d337c830 v0.6.2; Use Ada_Case for types 2017-08-03 21:21:56 +01:00
Ginger Bill 294092979e Update build.bat 2017-08-01 21:38:06 +01:00
Ginger Bill c454ede184 v0.6.1a 2017-08-01 17:30:26 +01:00
Ginger Bill d854c5003c Fix minor errors for *nix 2017-08-01 17:28:49 +01:00
Ginger Bill 66d8776b83 v0.6.1 2017-08-01 15:18:37 +01:00
Ginger Bill ba6ecf35cf Disable threading on *nix for the time being 2017-08-01 15:09:43 +01:00
Ginger Bill 10cc9cf661 Add mutexes to string buffer allocator uses 2017-08-01 14:24:40 +01:00
Ginger Bill 2db971eedd Use pthread mutex 2017-08-01 13:49:12 +01:00
Ginger Bill 1775e80b41 HACK: Ignore Mutex check 2017-07-31 23:18:21 +01:00
Ginger Bill e4a93619db Update gb.h 2017-07-31 12:17:53 +01:00
Ginger Bill 4d14b3bcb4 Update remove_temp_files 2017-07-31 12:15:20 +01:00
Ginger Bill 9f4f5f9346 Add -keep-temp-files option 2017-07-31 12:06:04 +01:00
Ginger Bill 0fae31fb54 Extra type safety; Fix typos 2017-07-31 11:36:00 +01:00
Ginger Bill 8987a6630c v0.6.0 2017-07-30 22:26:22 +01:00
Ginger Bill 10ff8e0426 Fix ir for TypeInfo.Map 2017-07-30 20:17:25 +01:00
Ginger Bill a0ae02168a Update add_type_info_type to ignore polymorphic types 2017-07-30 20:13:23 +01:00
Ginger Bill a3c1ac2030 Speed up llvm ir printing; Use CRITICAL_SECTION for Mutex on windows 2017-07-30 19:47:37 +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 62a72f0163 transmute(type)x; Minor code clean up 2017-07-30 14:52:42 +01:00
Ginger Bill 655931f0ea Minor Simplification of threading demo 2017-07-29 15:18:36 +01:00
Ginger Bill ca36fabfc0 Remove dead code for the "fixed" map idea 2017-07-29 14:43:42 +01:00
Ginger Bill 7bd62481ad Fix nil assignment to unions 2017-07-29 14:23:34 +01:00
Ginger Bill fbd27d7c45 Fix map internal type generation 2017-07-29 13:56:45 +01:00
Ginger Bill 3546391311 Merge branch 'master' of https://github.com/gingerBill/Odin 2017-07-29 13:01:28 +01:00
Ginger Bill 24c812115e Remove empty union check on array types; Fix overflowing error printing 2017-07-29 13:01:17 +01:00
Ginger Bill 1df4aa90ce Fix struct parameter bugs 2017-07-21 15:25:58 +01:00
Ginger Bill 6b3cf051f8 Fix math.odin, again 2017-07-21 12:39:05 +01:00
Ginger Bill 4ecd6e592b Fix missing semicolons in math.odin 2017-07-21 10:37:49 +01:00
Ginger Bill dbddec33c8 Internal changes; thread.odin for windows only 2017-07-20 23:57:56 +01:00
Ginger Bill 401a5955a4 Fix minor check on vector types 2017-07-20 19:55:54 +01:00
Ginger Bill 9a3b4167bb Fix polymorphic element types usage; Empty union as opaque type 2017-07-20 19:40:51 +01:00
Ginger Bill 13bc6eeea4 Make fields et al an Array rather than a raw pointer 2017-07-20 15:32:34 +01:00
Ginger Bill 2da18b6d33 Change internals from Record to Struct 2017-07-20 15:23:13 +01:00
Ginger Bill 6d37ed12d2 Update internals of a Union and Tuple 2017-07-20 15:17:04 +01:00
Ginger Bill eab23cd5b7 Fix parsing bug with procedure types in return values 2017-07-19 22:34:50 +01:00
Ginger Bill d233706a2d Fix minor parsing bug with procedure return types 2017-07-19 22:17:57 +01:00
Ginger Bill f1ab17ed4e type_info_of; enum_value_to_string and string_to_enum_value 2017-07-19 14:01:56 +01:00
Ginger Bill 6113164211 Change union layout to store type info rather than an integer; ternary expression for types with constant condition 2017-07-19 12:15:21 +01:00
Ginger Bill 4db462a703 Fix copy 2017-07-18 20:39:53 +01:00
Ginger Bill a22c6d6c0c Fix parsing error for compound literals 2017-07-18 19:57:30 +01:00
Ginger Bill 59fb7b020a Merge raw_union into struct as a memory layout tag #raw_union 2017-07-18 19:24:45 +01:00
Ginger Bill 65f079ebc4 Remove atomic, ++, and -- 2017-07-18 18:58:41 +01:00
Ginger Bill d16aa79492 General specialization for polymorphic parameters 2017-07-18 18:05:41 +01:00