Commit Graph

  • 773cf5ca08 Add -show-timings; Clean up polymorphic procedure code a bit Ginger Bill 2017-07-07 15:26:49 +01:00
  • 2db03cb4a5 Fix aprint* bug; NULL -> nullptr; Better error messages for overloaded functions Ginger Bill 2017-07-06 22:43:55 +01:00
  • eed873c6ec Add free for maps (a previous oversight) Ginger Bill 2017-07-05 13:51:25 +01:00
  • 3d2d461867 Replace many built-in procedures with user-level procedures Ginger Bill 2017-07-04 23:52:00 +01:00
  • 36392d658e Fix demo.odin Ginger Bill 2017-07-04 22:43:38 +01:00
  • 82696179e8 Merge branch 'master' of https://github.com/gingerBill/Odin Ginger Bill 2017-07-04 22:42:41 +01:00
  • 188bc28f6a Allow for overloading of polymorphic procedures Ginger Bill 2017-07-04 22:42:25 +01:00
  • 240da5c8e0 Allow aliasing of aliases Ginger Bill 2017-07-04 16:06:08 +01:00
  • 689a0c0b49 *_of as keyords; Allow constant aliasing for user/built-in procedures, import names, and library names Ginger Bill 2017-07-04 11:23:48 +01:00
  • bc16b290ba Disable polymorphic overloading in the global scope TODO: Figure out why it does not work in the global scope Ginger Bill 2017-07-02 22:08:39 +01:00
  • 96d32680fe Allow overloading of polymorphic procedures Ginger Bill 2017-07-02 10:45:22 +01:00
  • d782b3d21d Fix do on for loops Ginger Bill 2017-07-01 11:53:01 +01:00
  • ed089b44b9 do keyword for inline statements instead of blocks Ginger Bill 2017-07-01 11:38:44 +01:00
  • 33f4af2e19 Fix demo Ginger Bill 2017-06-29 21:01:07 +01:00
  • 69f7382eec Implicit parametric polymorphic procedures Ginger Bill 2017-06-29 20:56:18 +01:00
  • 7e3293fc20 Fix odin version printing Ginger Bill 2017-06-29 16:08:30 +01:00
  • e4a8283327 Remove Type What was I thinking?! Ginger Bill 2017-06-29 15:48:07 +01:00
  • 001baf4419 Add Type -- Runtime type for comparing types (similar to TypeInfo but simpler) Ginger Bill 2017-06-29 15:13:41 +01:00
  • d167290b28 Make AstNodeIdent a struct wrapping its Token Ginger Bill 2017-06-29 12:11:50 +01:00
  • f4879d4723 Update procedure names and extend demo.odin Ginger Bill 2017-06-29 11:25:05 +01:00
  • fd81c06c35 Remove var and const keywords; Fix default parameter syntax Ginger Bill 2017-06-28 23:55:40 +01:00
  • 94afcec757 :: style procedure declarations; remove old parsing code Ginger Bill 2017-06-28 23:47:06 +01:00
  • 4f28e9e1fb Remove type prefix declarations Ginger Bill 2017-06-28 23:23:10 +01:00
  • 0622509807 Disable var and const declarations Ginger Bill 2017-06-28 23:17:20 +01:00
  • 9ca2246bac Basic allowance for := and :: Ginger Bill 2017-06-28 22:38:04 +01:00
  • 647e2cafd7 Fix expand_to_tuple Ginger Bill 2017-06-27 22:47:19 +01:00
  • 5df854fcef Fixed demo v0.5.0 Ginger Bill 2017-06-27 15:58:53 +01:00
  • 260089431e Write demo for v0.5.0 Ginger Bill 2017-06-26 21:34:54 +01:00
  • d0d8da8c08 Revert demo Ginger Bill 2017-06-26 19:42:32 +01:00
  • d1365b3466 Fix poly-procs for variadic calls Ginger Bill 2017-06-26 19:24:04 +01:00
  • c949ca2a5c Allow for named arguments for polymorphic procedures Ginger Bill 2017-06-26 18:20:24 +01:00
  • d974b29f67 Reduce excessive node cloning on para-poly checking and fix scope bug Ginger Bill 2017-06-26 14:39:51 +01:00
  • cc7316bb35 Fix IR printing for para-poly procedures Ginger Bill 2017-06-26 14:16:16 +01:00
  • a0d8dcd974 Remove let Ginger Bill 2017-06-26 13:59:15 +01:00
  • c642e326ce Undef value --- (for setting a value to be uninitialized/undefined) Ginger Bill 2017-06-26 11:57:26 +01:00
  • 362a118782 Remove "overloading" bug of para-poly-procs Ginger Bill 2017-06-25 23:41:46 +01:00
  • 3ab481df17 new as a user-level procedure Ginger Bill 2017-06-25 22:31:30 +01:00
  • 4e7150b470 Allow nested para-poly procedures Ginger Bill 2017-06-25 22:29:23 +01:00
  • 1ced92be47 Rudimentary para-poly procedures Ginger Bill 2017-06-25 22:15:30 +01:00
  • 15dbea6899 Generic procedures generate types on use Ginger Bill 2017-06-25 19:41:07 +01:00
  • c4081393c1 Fix typo for some built-in procedures Ginger Bill 2017-06-25 17:36:10 +01:00
  • 1d81b73df9 Basic command line flags: e.g. -opt=0 Ginger Bill 2017-06-24 22:58:50 +01:00
  • 18f885efab expand_to_tuple Ginger Bill 2017-06-24 20:39:37 +01:00
  • bba088bee7 Use UTF-8 command line on windows Ginger Bill 2017-06-24 11:42:49 +01:00
  • 6cbb6bef0b Wrap hashing functions Ginger Bill 2017-06-22 16:14:02 +01:00
  • 8744c60563 Clean up code for return statements, slightly Ginger Bill 2017-06-22 13:47:50 +01:00
  • 8197c02dcf Default result values for procedure types; Named result values in return statements Ginger Bill 2017-06-22 01:14:45 +01:00
  • 9faf0020cc Amend Checker API Ginger Bill 2017-06-21 21:46:27 +01:00
  • 53075e2570 Update old demos Ginger Bill 2017-06-21 21:20:26 +01:00
  • 264ca00db7 Merge branch 'master' of https://github.com/gingerBill/Odin Ginger Bill 2017-06-21 17:49:05 +01:00
  • 6b65ef6d88 Fix compilation bug on Linux Ginger Bill 2017-06-21 17:48:50 +01:00
  • 5957d7f7be Implicit Parameter Passing based context system (replacing Thread Local Storage (TLS) approach) Ginger Bill 2017-06-20 12:38:05 +01:00
  • 35c102137f Compiler compiles for x86 (doesn't work properly) Ginger Bill 2017-06-19 18:49:11 +01:00
  • 5427d14416 Code will compile as 32 bit but will causes errors in the linker on Windows Ginger Bill 2017-06-19 15:55:09 +01:00
  • 178236d1ff Barebones layout for the documentation declarations Ginger Bill 2017-06-18 23:41:13 +01:00
  • 736c880ba9 Add docs.cpp Ginger Bill 2017-06-18 23:18:15 +01:00
  • 126f7aa892 Begin work on documentation generation Ginger Bill 2017-06-18 23:16:57 +01:00
  • 2957f007e3 Fix #location for anonymous procedures Ginger Bill 2017-06-18 17:35:27 +01:00
  • 04501c93fe Implement assert and panic in user side code Removes 2 more built-in procedures! Ginger Bill 2017-06-18 17:25:28 +01:00
  • 4236519b84 #location(..) and #call_location Ginger Bill 2017-06-18 14:36:06 +01:00
  • e4944b4f2e Fix error reporting for foreign blocks Ginger Bill 2017-06-17 20:03:52 +01:00
  • 2deb2f8eeb Declaration grouping uses () rather than {}; Fix some problem with compilation on *nix Ginger Bill 2017-06-17 12:01:53 +01:00
  • 3fa398ec43 Add extra check for bodiless procedures Ginger Bill 2017-06-15 21:36:29 +01:00
  • 1851674b50 Code use API rather than raw CheckerInfo; begin work on generic procedures Ginger Bill 2017-06-15 18:11:58 +01:00
  • c5ef5279d4 Add foreign variables Ginger Bill 2017-06-15 14:42:08 +01:00
  • d3c24d159f Merge size_of and size_of_val et al. Ginger Bill 2017-06-15 12:25:53 +01:00
  • 23f9f9064e Add CheckerInfo API functions Ginger Bill 2017-06-15 12:14:56 +01:00
  • a134307dcd Fix issue #72 - 128-bit literal corruption Ginger Bill 2017-06-14 14:58:48 +01:00
  • c3b510c2d9 C-style c_varargs (Not heavily tested) Ginger Bill 2017-06-13 21:00:42 +01:00
  • e7fc24e48c Fix compilation error for Invalid EntityKind Ginger Bill 2017-06-13 18:04:22 +01:00
  • 6a88dc322a Declaration grouping uses braces rather than parentheses Ginger Bill 2017-06-13 15:04:23 +01:00
  • 6b464e3558 Update README.md v0.4.0 Ginger Bill 2017-06-12 21:41:14 +01:00
  • 76b0c7b765 "Revert" to older demo Ginger Bill 2017-06-12 21:27:53 +01:00
  • 91857e8f16 Remove redundant paths in parsing Ginger Bill 2017-06-12 21:25:47 +01:00
  • ccda456c0a foreign blocks for procedures Ginger Bill 2017-06-12 21:21:18 +01:00
  • 83bad13e9e Update default field value syntax; Use more declaration groupings Ginger Bill 2017-06-12 18:38:27 +01:00
  • e6a206a430 Check for empty generic declaration list Ginger Bill 2017-06-12 16:58:25 +01:00
  • f52a1e4ded Fix IR bug for TypeSpec Ginger Bill 2017-06-12 16:47:07 +01:00
  • a8e458339b foreign_library allow for Pascal-style grouping Ginger Bill 2017-06-12 16:26:51 +01:00
  • 6b5e9aec8e Pascal style declaration grouping with () Ginger Bill 2017-06-12 15:42:21 +01:00
  • 2ab0d97573 import and import_load as keywords; Fix procedure literal call trick Ginger Bill 2017-06-12 14:19:12 +01:00
  • 0c05fc1432 Prefix type and let to replace immutable Ginger Bill 2017-06-12 12:56:47 +01:00
  • 33eeb58521 Prefix proc syntax Ginger Bill 2017-06-12 12:34:55 +01:00
  • 8fafdb185c Remove := with var and :: with const Ginger Bill 2017-06-12 11:48:12 +01:00
  • c2c935ba81 Fix trailing default argument checking Ginger Bill 2017-06-11 20:52:54 +01:00
  • 2d73c8868b Make default arguments for records invalid syntax Ginger Bill 2017-06-11 19:01:36 +01:00
  • b95bb1286b Merge pull request #70 from ThisDrunkDane/master gingerBill 2017-06-11 18:54:30 +01:00
  • 4237c8ec30 Merge branch 'master' of github.com:gingerBill/Odin Mikkel Hjortshoej 2017-06-11 19:53:44 +02:00
  • 49b4b39055 Minor change for overloaded procedures Ginger Bill 2017-06-11 18:53:20 +01:00
  • bf15fea135 Merge branch 'master' of github.com:gingerBill/Odin Mikkel Hjortshoej 2017-06-11 19:47:57 +02:00
  • 47c03e376d Merge branch 'master' of github.com:gingerBill/Odin Mikkel Hjortshoej 2017-06-11 19:47:05 +02:00
  • 1cabfac36c Update README.md Ginger Bill 2017-06-11 18:46:59 +01:00
  • 8e32276283 Added a bunch of VM_* and map_virtual_key Mikkel Hjortshoej 2017-06-11 19:46:55 +02:00
  • 366b306df0 Default parameters for procedures Ginger Bill 2017-06-11 18:38:30 +01:00
  • 4bf1f798f5 Allow for ignoring named procedural call arguments with _ Ginger Bill 2017-06-11 17:41:55 +01:00
  • b2fdb69b4d Named procedure calls Ginger Bill 2017-06-11 12:01:40 +01:00
  • af2736daec Fix bit field bug Ginger Bill 2017-06-08 16:29:05 +01:00
  • 5cad7d44a6 Use templated Map for extra type safety Ginger Bill 2017-06-08 13:26:48 +01:00
  • 2b96be0ae8 Remove unnecessary typedef usage Ginger Bill 2017-06-08 13:08:39 +01:00
  • 2a89d8021c Use templated Array with bounds checking Ginger Bill 2017-06-08 12:54:52 +01:00