gingerBill
|
1eb9994d88
|
Attributes; @(link_name="foo")
|
2017-10-29 15:46:23 +00:00 |
|
gingerBill
|
a43b89f36e
|
#alias type declarations; core library additions; _global import name for the global scope
|
2017-10-29 11:35:21 +00:00 |
|
gingerBill
|
56f7a859df
|
Refactor code to remove entity flag for export
|
2017-10-15 16:16:16 +01:00 |
|
gingerBill
|
e5e14b9947
|
Remove name mangling for foreign export variables
|
2017-10-15 16:11:34 +01:00 |
|
gingerBill
|
3d8bf36a30
|
foreign export block
```
foreign export {
my_i32: i32;
my_foo :: proc() -> i32 {
return 123;
}
}
```
|
2017-10-15 16:05:42 +01:00 |
|
Ginger Bill
|
c1e720a49b
|
match to switch; Optional semicolons after "import" statements
|
2017-10-01 17:09:57 +01:00 |
|
Ginger Bill
|
5259de5872
|
Reserve the link_name main
|
2017-09-30 11:28:17 +01:00 |
|
Ginger Bill
|
7791c343c4
|
Allow for multiple library collections; Store AstFile as pointer
|
2017-09-10 13:26:14 +01:00 |
|
Ginger Bill
|
6c73f9d3fd
|
Global variable dependency initialization ordering
Fuck graph theory
|
2017-08-20 18:28:21 +01:00 |
|
Ginger Bill
|
8987a6630c
|
v0.6.0
|
2017-07-30 22:26:22 +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
|
9a3b4167bb
|
Fix polymorphic element types usage; Empty union as opaque type
|
2017-07-20 19:40:51 +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
|
9a8759efef
|
Polymorphic type specialization for procedures
|
2017-07-17 15:08:36 +01:00 |
|
Ginger Bill
|
1c5ddd65b4
|
Rudimentary support for parametric polymorphic types
|
2017-07-13 22:35:00 +01:00 |
|
Ginger Bill
|
b8697fb4ed
|
Change precedence order for types e.g. ^T(x) == ^(T(x))
|
2017-07-13 16:20:07 +01:00 |
|
Ginger Bill
|
c4c6975f1b
|
cast(Type)expr; Fix overloaded procedure determination on assignment
|
2017-07-11 14:40:27 +01:00 |
|
Ginger Bill
|
ba5050ac7c
|
Compiler Internal Changes: TypeRecord_Union -> Type_Union
|
2017-07-10 22:59:23 +01:00 |
|
Ginger Bill
|
4b051a0d3b
|
.. half closed range; ... open range; ... variadic syntax
|
2017-07-07 23:42:43 +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
|
82696179e8
|
Merge branch 'master' of https://github.com/gingerBill/Odin
|
2017-07-04 22:42:41 +01:00 |
|
Ginger Bill
|
188bc28f6a
|
Allow for overloading of polymorphic procedures
|
2017-07-04 22:42:25 +01:00 |
|
Ginger Bill
|
240da5c8e0
|
Allow aliasing of aliases
|
2017-07-04 16:06:08 +01:00 |
|
Ginger Bill
|
689a0c0b49
|
*_of as keyords; Allow constant aliasing for user/built-in procedures, import names, and library names
|
2017-07-04 11:23:48 +01:00 |
|
Ginger Bill
|
bc16b290ba
|
Disable polymorphic overloading in the global scope
TODO: Figure out why it does not work in the global scope
|
2017-07-02 22:08:39 +01:00 |
|
Ginger Bill
|
69f7382eec
|
Implicit parametric polymorphic procedures
|
2017-06-29 20:56:18 +01:00 |
|
Ginger Bill
|
d167290b28
|
Make AstNodeIdent a struct wrapping its Token
|
2017-06-29 12:11:50 +01:00 |
|
Ginger Bill
|
f4879d4723
|
Update procedure names and extend demo.odin
|
2017-06-29 11:25:05 +01:00 |
|
Ginger Bill
|
94afcec757
|
:: style procedure declarations; remove old parsing code
|
2017-06-28 23:47:06 +01:00 |
|
Ginger Bill
|
4f28e9e1fb
|
Remove type prefix declarations
|
2017-06-28 23:23:10 +01:00 |
|
Ginger Bill
|
260089431e
|
Write demo for v0.5.0
|
2017-06-26 21:34:54 +01:00 |
|
Ginger Bill
|
c642e326ce
|
Undef value --- (for setting a value to be uninitialized/undefined)
|
2017-06-26 11:57:26 +01:00 |
|
Ginger Bill
|
1ced92be47
|
Rudimentary para-poly procedures
|
2017-06-25 22:15:30 +01:00 |
|
Ginger Bill
|
5957d7f7be
|
Implicit Parameter Passing based context system (replacing Thread Local Storage (TLS) approach)
|
2017-06-20 12:38:05 +01:00 |
|
Ginger Bill
|
5427d14416
|
Code will compile as 32 bit but will causes errors in the linker on Windows
|
2017-06-19 15:55:09 +01:00 |
|
Ginger Bill
|
3fa398ec43
|
Add extra check for bodiless procedures
|
2017-06-15 21:36:29 +01:00 |
|
Ginger Bill
|
1851674b50
|
Code use API rather than raw CheckerInfo; begin work on generic procedures
|
2017-06-15 18:11:58 +01:00 |
|
Ginger Bill
|
c5ef5279d4
|
Add foreign variables
|
2017-06-15 14:42:08 +01:00 |
|
Ginger Bill
|
23f9f9064e
|
Add CheckerInfo API functions
|
2017-06-15 12:14:56 +01:00 |
|
Ginger Bill
|
c3b510c2d9
|
C-style c_varargs (Not heavily tested)
|
2017-06-13 21:00:42 +01:00 |
|
Ginger Bill
|
6a88dc322a
|
Declaration grouping uses braces rather than parentheses
|
2017-06-13 15:04:23 +01:00 |
|
Ginger Bill
|
ccda456c0a
|
foreign blocks for procedures
|
2017-06-12 21:21:18 +01:00 |
|
Ginger Bill
|
0c05fc1432
|
Prefix type and let to replace immutable
|
2017-06-12 12:56:47 +01:00 |
|
Ginger Bill
|
33eeb58521
|
Prefix proc syntax
|
2017-06-12 12:34:55 +01:00 |
|
Ginger Bill
|
b2fdb69b4d
|
Named procedure calls
|
2017-06-11 12:01:40 +01:00 |
|
Ginger Bill
|
5cad7d44a6
|
Use templated Map for extra type safety
|
2017-06-08 13:26:48 +01:00 |
|
Ginger Bill
|
2b96be0ae8
|
Remove unnecessary typedef usage
|
2017-06-08 13:08:39 +01:00 |
|
Ginger Bill
|
2a89d8021c
|
Use templated Array with bounds checking
|
2017-06-08 12:54:52 +01:00 |
|