Ginger Bill
a982c51c30
Fix minor bugs in IR for slices
2017-02-23 22:22:56 +00:00
Zac Pierson
20b9f1ff59
Added getenv to the *nix stdlib.
2017-02-23 15:29:41 -06:00
Zac Pierson
561c583b3f
Merge https://github.com/gingerBill/Odin
2017-02-22 10:57:30 -06:00
Ginger Bill
047c0e4bcc
A decent union type with common fields and variants
2017-02-21 21:21:54 +00:00
Zac Pierson
8d5896ab7e
Merge https://github.com/gingerBill/Odin
2017-02-20 10:14:52 -06:00
Ginger Bill
a94dfdf21d
Begin changing union syntax
2017-02-19 19:55:19 +00:00
Ginger Bill
c0d5237b75
Unexported struct fields on selectors
2017-02-19 12:47:02 +00:00
Ginger Bill
6fdcbefe5d
Unexported struct fields
2017-02-19 12:38:49 +00:00
Ginger Bill
3cec2550d9
delete for maps
2017-02-19 11:50:42 +00:00
Ginger Bill
758dd9ba16
Fix overloading bug due to #import .; Add sys/wgl.odin
2017-02-19 11:35:33 +00:00
Ginger Bill
0c37aa9ea0
Fix overloading bug due to comparison of named types
2017-02-18 22:19:35 +00:00
Ginger Bill
9ff474f387
Named return values but do not affect other declarations
2017-02-18 12:02:11 +00:00
Ginger Bill
d2f9d20833
Change ternary expression precedence
2017-02-18 10:41:48 +00:00
Zac Pierson
802b1a70f8
Fixed an error in function naming in os_linux
2017-02-15 11:20:11 -06:00
Zac Pierson
aaa4dd5c36
Merge https://github.com/gingerBill/odin
2017-02-15 10:21:38 -06:00
Ginger Bill
71100ed427
Ternary expression (removed if and block expression)
2017-02-14 19:26:32 +00:00
Ginger Bill
daa1cd55a1
Move error handling for casting
2017-02-14 17:33:11 +00:00
Ginger Bill
2722de65b7
Prevent cast on pointer to union types
2017-02-14 17:24:56 +00:00
Ginger Bill
8b5e3428a1
Optional ok for union_cast (similar to map indices)
2017-02-14 16:37:24 +00:00
Ginger Bill
d1f65097c4
Fix immutable rules; add some general documentation
...
immutable is still a little weird and not completely what you'd expect. Maybe just not having it is better.
2017-02-14 15:19:29 +00:00
Zachary Pierson
9d19ee7e4c
Changed standard libraries for MacOS and Linux to be closer to os_windows.
2017-02-12 18:25:58 -06:00
Zachary Pierson
8df3175f10
Updated Linux standard library to convert c strs
2017-02-12 17:22:27 -06:00
Zachary Pierson
320c22e08a
Merge https://github.com/gingerBill/Odin
2017-02-12 16:04:13 -06:00
Ginger Bill
b9ed546ce0
Record type field names
2017-02-12 11:31:04 +00:00
Zachary Pierson
7829421085
Fixed Windows (updated gb.h) | Need to test on MacOS and Linux now!
2017-02-11 23:52:56 -06:00
Zachary Pierson
c50aabd916
Merging from gingerBill's master
2017-02-11 23:35:07 -06:00
Zachary Pierson
3f3122bccc
Temporary fix for an Odin bug.
2017-02-11 18:54:54 -06:00
Zachary Pierson
fc1a006de1
Added support for reading files on MacOS and Linux
2017-02-11 17:24:47 -06:00
Ginger Bill
e1fdd675ce
v0.1.0
...
Added:
* Dynamic Arrays `[...]Type`
* Dynamic Maps `map[Key]Value`
* Dynamic array and map literals
* Custom struct alignemnt `struct #align 8 { bar: i8 }`
* Allow `_` in numbers
* Variadic `append`
* fmt.sprint*
* Entities prefixes with an underscore do not get exported on imports
* Overloaded `free` for pointers, slices, strings, dynamic arrays, and dynamic maps
* enum types have an implict `names` field, a []string of all the names in that enum
Removed:
* Maybe/option types
* immutable variables
* Remove `type` keyword and other "reserved" keywords
* `compile_assert` and `assert`return the value of the condition for semantic reasons
Changed:
* thread_local -> #thread_local
* #include -> #load
* Files only get checked if they are actually used
* match x in y {} // For type match statements
* Version numbering now starts from 0.1.0 and uses the convention:
- major.minor.patch
Fixes:
* Many fmt.* fixes
To come very Soon™:
* Linux and OS X builds (unofficial ones do exist already)
2017-02-11 21:20:57 +00:00
Zachary Pierson
754b368140
Added dynamic library loading to Linux and MacOS's standard libraries.
2017-02-11 15:09:53 -06:00
Zachary Pierson
a49e888ce6
Merge https://github.com/gingerBill/Odin
2017-02-11 13:48:16 -06:00
Ginger Bill
4306345ff1
Dynamic array syntax [...]Type; make entities private with a prefix of _; fix extension checking
2017-02-11 17:33:23 +00:00
Ginger Bill
346aa5f71c
Only check files that have been truly imported.
2017-02-11 15:50:24 +00:00
Zachary Pierson
afac95e092
Oh, I left math.odin open when I merged gingerBill's changes. Oops. Updated to his version.
2017-02-11 00:33:12 -06:00
Zachary Pierson
05486f9fa3
I'm not sure what I changed here, to be honest. I've ctrl-z'd everything, but git's still complaining.
2017-02-11 00:30:04 -06:00
Zachary Pierson
cad46ae51c
Merge https://github.com/gingerBill/Odin
2017-02-10 23:41:23 -06:00
Ginger Bill
73d6a55f5c
Remove need for type keyword
2017-02-10 16:12:14 +00:00
Ginger Bill
f18ae89931
Remove Maybe type; Enum names
2017-02-10 14:59:18 +00:00
Zac Pierson
72d4bfb32a
Merge https://github.com/gingerBill/Odin
2017-02-08 11:50:33 -06:00
Zachary Pierson
8becbdc1b2
Added a very basic Linux standard library shamelessly stolen from the MacOS one.
...
Made Linux (almost) work. The generated binaries segfault, but it's so close I can almost taste it.
2017-02-07 00:28:21 -06:00
Ginger Bill
219ca0ac46
Map type info and fmt printing
2017-02-07 00:10:58 +00:00
Ginger Bill
5796c41357
map immutable fields: count, capacity, allocator
2017-02-06 22:53:48 +00:00
Ginger Bill
f11d73ffaa
map string keys and for iterator
2017-02-06 20:54:51 +00:00
Ginger Bill
c126339090
dynamic map insertion and lookup
2017-02-06 20:23:51 +00:00
Ginger Bill
9f2d9b596d
Nearly implement dynamics map, missing insertion
2017-02-06 01:21:23 +00:00
Ginger Bill
00c7489157
Begin writing dynamic map procs and fix using bug in IR
2017-02-05 23:52:01 +00:00
Ginger Bill
b1562edccf
Add types.odin; Begin work on map
2017-02-05 18:17:55 +00:00
Ginger Bill
2a5b674d33
Custom struct alignment
2017-02-05 15:19:30 +00:00
Ginger Bill
205f4664f8
Update code from OSX merge to be consistent with the rest of the code
...
Remove some dead code whilst I was here too :P
2017-02-01 20:59:14 +00:00
zhiayang
5516e80ab7
Merge branch 'master' of https://github.com/zhiayang/Odin
2017-02-02 04:21:42 +08:00