Commit Graph
100 Commits
Author SHA1 Message Date
gingerBill b55b1ffe14 opaque keyword and type 2018-11-11 17:08:30 +00:00
gingerBill 620d5d34f7 Fix issue with complication of -debug that is caused sometimes due to lambda procedures. 2018-11-11 11:44:55 +00:00
gingerBill f9654b6c36 Fix package usage with when on import #278 2018-11-07 16:11:14 +00:00
gingerBill 6659ceb551 Allow comparisons of cstring; Add resize 2018-10-31 10:04:30 +00:00
gingerBill 5aa591d884 Fix debug info issue 2018-10-29 22:16:43 +00:00
gingerBill efe91b1f91 Disable debug info for bit fields 2018-10-29 18:10:44 +00:00
gingerBill 7c99884afb Fix CompositeType for zero length arrays 2018-10-29 12:52:41 +00:00
gingerBill dfd7a194ed Fix big int shifts of 0 2018-10-28 09:32:59 +00:00
gingerBill 2ddb27869b Built-in procedure #defined 2018-10-27 18:44:28 +01:00
gingerBill 5c608b01ba Place optimization level flag in condition again; -memcpyopt -die only in non-debug builds 2018-10-24 10:19:01 +01:00
gingerBill 822e4894f2 Minor logic change for reserved package names 2018-10-20 21:19:40 +01:00
gingerBill ce2e23849e Fix context initialization 2018-10-20 16:34:56 +01:00
gingerBill 099995e7dd Add basics for context-based Logger 2018-10-20 13:02:30 +01:00
gingerBill 72f4186b21 Fix atomic.odin 2018-10-20 12:55:48 +01:00
gingerBill 3742d9e7e9 Move atomic intrinsics to the new built-in package intrinsics 2018-10-20 10:44:02 +01:00
gingerBill 4ac1218bf8 sync atomics "wrapper" procedures 2018-10-17 21:43:05 +01:00
gingerBill b171cc41e6 __atomic_* "intrinsics" using LLVM instructions 2018-10-17 21:16:01 +01:00
gingerBill 307c58d908 Fix compilation error #272 2018-10-17 15:27:36 +01:00
gingerBill ef2931d4a5 Remove AstTypeType 2018-10-13 14:07:00 +01:00
gingerBill 2d4aa2be6d Remove type as being a keyword 2018-10-13 14:04:34 +01:00
gingerBill 42b42db675 Add unimplemented and unreachable procedures; make os.exit a diverging procedure 2018-10-13 13:19:52 +01:00
gingerBill 73e9dbbf8c switch on typeid with type cases 2018-10-13 11:07:56 +01:00
gingerBill 0971a59493 Update runtime printing code 2018-10-11 18:19:29 +01:00
gingerBill 1a4e25f141 Prefix runtime procedures 2018-09-29 21:09:19 +01:00
gingerBill 834308d8ce Fix using import override "bug" 2018-09-29 13:07:46 +01:00
gingerBill 1a18481d8b Fix context assignment with selector expressions 2018-09-24 12:04:26 +01:00
gingerBill 28c61c0f5d Merge branch 'master' of https://github.com/odin-lang/Odin 2018-09-24 10:22:33 +01:00
gingerBill 597fb452b1 Minor fixes 2018-09-24 10:22:22 +01:00
gingerBill 9f3e42e4ef Fix delete_key #262 2018-09-15 11:21:02 +01:00
gingerBill 71d987bd2e Fix runtime proc names; Change calling convention of context parameter 2018-09-15 10:46:46 +01:00
gingerBill 637899467c Merge branch 'master' of https://github.com/odin-lang/Odin 2018-09-15 10:14:40 +01:00
gingerBill 5bdb424c6b context.allocator = a; Remove __ from runtime procs; improve division for complex numbers 2018-09-15 10:14:24 +01:00
gingerBill f1e1814ff9 Syntactic sugar for anonymous enum within a bit set 2018-09-11 12:10:32 +01:00
gingerBill b468cf141b Fix are_types_identical for bit_set 2018-09-11 11:14:46 +01:00
gingerBill 787ea1feba Fix polymorphic constant parameters for procedures 2018-09-11 11:09:42 +01:00
gingerBill 91477e9e69 Allow for optional ok for return 2018-09-11 10:55:30 +01:00
gingerBill cfd0dfd2bf Remove assertion from constant parameter 2018-09-10 21:56:16 +01:00
gingerBill 46b1868185 Constant polymorphic names 2018-09-10 14:21:19 +01:00
gingerBill 4c4de1d6c4 Fix cloning of auto_cast Ast 2018-09-10 08:50:20 +01:00
gingerBill c8b30de771 Update compiler flags for build.bat 2018-09-09 15:06:04 +01:00
gingerBill 4f3837f0e6 Procedure inlining on call site 2018-09-09 14:46:28 +01:00
gingerBill 76848e8807 Disallow inline for recursive procedures 2018-09-09 13:58:23 +01:00
gingerBill 12902821d6 Make diverging procedure types different from ones without a return type 2018-09-09 13:48:33 +01:00
gingerBill f5549f6bde Make panic a diverging procedure 2018-09-08 12:17:16 +01:00
gingerBill 3825eab989 Diverging procedures proc() -> ! (no return) 2018-09-08 12:16:03 +01:00
gingerBill 3cd6ae311d Parametric polymorphic union type 2018-09-08 12:02:25 +01:00
gingerBill 26cfc0257d Fix array_ordered_remove typo 2018-09-08 10:44:18 +01:00
Ginger Bill 1d31eabb6e Fix minor parsing issue for polymorphic identifiers 2018-09-04 13:47:24 +01:00
gingerBill 11f5236434 Add $T: typeid/[]$E; Deprecate T: type/[]$E
`type` as a keyword will soon be removed in favour of polymorphic names (identifiers) in procedures
2018-09-02 16:33:54 +01:00
gingerBill 220485a2d2 typeid as keyword (ready to implement polymorphic name parameters) 2018-09-02 15:56:36 +01:00
gingerBill eb274cf316 Remove test code 2018-08-30 19:33:16 +01:00
gingerBill aa542980ce Change memory layout of map to be 3 words smaller 2018-08-30 19:14:10 +01:00
gingerBill e0240c186f Rename buffer entity 2018-08-30 12:53:07 +01:00
gingerBill ae58502a21 Make free_all built-in 2018-08-30 12:21:16 +01:00
gingerBill 6a3697279c Place assertf and printf to package fmt 2018-08-30 12:10:16 +01:00
gingerBill c19ec5d65d Fix delete for dynamic array and map 2018-08-30 12:00:51 +01:00
gingerBill 15dca449c9 Add assertf and panicf 2018-08-30 11:46:57 +01:00
gingerBill dda985f49d Add extra nil check for assert and panic 2018-08-30 11:16:06 +01:00
gingerBill 12256beeb2 Prevent other parameters being the default value 2018-08-30 11:12:57 +01:00
gingerBill 0858ae2024 Add utf8_to_ucs2 for package win32 so that the wide procedures can used by default 2018-08-30 10:59:46 +01:00
gingerBill 6c18864291 Add default_assertion_failure_proc to the minimum dependency build 2018-08-29 21:15:11 +01:00
gingerBill ae57284912 Add Assertion_Failure_Proc to context 2018-08-29 21:10:13 +01:00
gingerBill 001837e6bb Temporary allocator for context 2018-08-29 19:55:55 +01:00
gingerBill 28523f17e2 Add default allocator to allocation related procedures e.g. alloc, free, delete, make 2018-08-28 20:14:56 +01:00
gingerBill ae2af8315e Allow for default parameters that are non-constant entities, but not any non-constant expression 2018-08-28 20:03:27 +01:00
gingerBill adbb3bb75f Add -lld flag for using "bin\lld-link.exe" on Windows 2018-08-28 19:28:34 +01:00
gingerBill 830c194da5 Allow enums for array lengths 2018-08-26 18:23:17 +01:00
gingerBill 1830c1e57c Allow bitwise operation on enums 2018-08-26 18:05:59 +01:00
gingerBill e5735af6d6 Disable for in over cstring 2018-08-26 15:10:23 +01:00
gingerBill a6b0ae71b2 Remove assert 2018-08-26 10:56:33 +01:00
gingerBill 3365baee8f runtime.Typeid_Bit_Field layout to store more information into the typeid 2018-08-25 12:11:48 +01:00
gingerBill cc88dd0b71 Allow for variadic min max procs
Request #252
2018-08-25 11:12:52 +01:00
gingerBill f050bfe872 Fix comparisons with union 2018-08-25 10:39:19 +01:00
gingerBill ab71acc3a5 Disable abs for arrays #254 2018-08-25 10:27:44 +01:00
gingerBill 0a85d1af6b Improve error messages for using on fields 2018-08-24 22:28:00 +01:00
gingerBill 68adadb01a Allow using in structs on arrays with count <= 4 2018-08-24 22:12:30 +01:00
gingerBill d56f458d11 Fix file scope #assert 2018-08-24 17:42:13 +01:00
gingerBill a65eadee63 Fix for in enum iteration 2018-08-22 18:56:41 +01:00
gingerBill 16dfae62bc Allow casting to and from rawptr and cstring #249 2018-08-22 15:19:04 +01:00
gingerBill fe680a8b1f Fix default return values #250 2018-08-22 15:17:29 +01:00
gingerBill 54fe9f3eb1 Improve min dep for min/max/abs/clamp 2018-08-21 21:43:38 +01:00
gingerBill cbc6c2666b Improve proc group scoring algorithm 2018-08-21 14:11:18 +01:00
gingerBill a4d0ac1802 Merge branch 'master' of https://github.com/odin-lang/Odin 2018-08-20 19:20:44 +01:00
gingerBill 0dc29a7208 Implement suggestions from #247 2018-08-20 19:20:28 +01:00
gingerBill e3f0ab7c3d Parallelize parser on *nix 2018-08-19 10:58:57 +01:00
gingerBill 5643ea1ba2 Fix typo 2018-08-19 10:56:23 +01:00
gingerBill 3b6523fbd9 Fix gbMutex for *nix 2018-08-19 10:34:31 +01:00
gingerBill ffc4f01470 All enums in array indices 2018-08-17 19:38:15 +01:00
gingerBill e326f41d16 Fix demo 2018-08-17 15:26:29 +01:00
gingerBill 1d0ac72e4a Disable non-comparison operations for enum (use bit_set for flags) 2018-08-17 15:24:44 +01:00
gingerBill b216e44870 Add underlying type for bit_set 2018-08-17 15:11:41 +01:00
gingerBill 7d39b26cf4 Minor refactor 2018-08-16 20:52:46 +01:00
gingerBill 884d5fed9f bit_set['A'..'Z'], bit_set[0..8] 2018-08-16 15:16:57 +01:00
gingerBill ec84188597 Fix typos in parser 2018-08-16 10:30:44 +01:00
gingerBill 85ac95f81b Constant evaluation for in expression for bit_sets 2018-08-16 00:07:26 +01:00
gingerBill 042550cf87 Fix default value bug 2018-08-15 19:36:32 +01:00
gingerBill b3ebff715a Fix defer ir bug 2018-08-15 15:44:41 +01:00
gingerBill 1ee60663bb Fix issue #244 with constant array comparisons 2018-08-14 19:43:36 +01:00
gingerBill 59da98d3f0 Improve type hinting for compound literals 2018-08-14 19:39:28 +01:00
gingerBill 2d41a42f61 Cleaning type hinting for assignments 2018-08-14 19:33:42 +01:00