gingerBill
64bd884d94
Add "none" calling convention
2019-02-23 14:42:44 +00:00
Tetralux
46c610d6e5
Fix printing IR of integer as a pointer with endianness.
...
When converting an integer value into a pointer and writing out the IR
for it in 'ir_print_exact_value', 'is_type_integer_endian_{little,big}'
did not correct handle being asked about pointer types.
They now reply with whether the endianness of 'uintptr' matches the
endianness being asked about.
2019-01-16 17:22:25 +00:00
gingerBill
5acea1bceb
Source_Code_Location.hash; %#v printing for Source_Code_Location; allow typeid for map keys
2019-01-05 15:56:47 +00:00
gingerBill
dd28fe6e82
Update CEL
2019-01-03 00:12:24 +00:00
gingerBill
775f1e2c95
Fix default parameter assignment checking
2018-12-28 11:20:31 +00:00
gingerBill
7c982b6e10
min & max for types
2018-12-27 12:12:14 +00:00
gingerBill
b7eebe5d00
Fix polymorphic record types with constant value parameters
2018-12-14 18:36:06 +00:00
gingerBill
0b6fc19fb0
Allow polymorphic cast on fields with _ #302
2018-12-14 14:57:04 +00:00
gingerBill
17b0e3a1a1
Fix bit sets with custom endian underlying type
2018-12-02 19:27:42 +00:00
gingerBill
b2df48dadb
Fix typo for little endian integers
2018-12-02 16:14:57 +00:00
gingerBill
00161023cd
Endian specific integers: e.g. i32 i32le i32be
2018-12-02 15:53:52 +00:00
gingerBill
784c48c9e3
Redefine how union tag size is calculated to match alignment of the union
2018-11-29 23:00:16 +00:00
gingerBill
2301ae157c
Fix recursive loop bug for is_type_polymorphic
2018-11-28 16:47:20 +00:00
gingerBill
0a4b88f9a6
Fix Issue with referencing a polymorphic struct in another package referencing itself #283
2018-11-25 10:35:49 +00:00
gingerBill
6ab6447791
Fix is_type_polymorphic infinite recursion bug
2018-11-22 09:41:08 +00:00
gingerBill
f61c4715c1
Allow opaque to be polymorphic
2018-11-17 10:08:06 +00:00
gingerBill
3061bc8478
Fix error with polymorphic structs #279
2018-11-17 10:05:35 +00:00
gingerBill
b55b1ffe14
opaque keyword and type
2018-11-11 17:08:30 +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
dfd7a194ed
Fix big int shifts of 0
2018-10-28 09:32:59 +00:00
gingerBill
1a18481d8b
Fix context assignment with selector expressions
2018-09-24 12:04:26 +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
12902821d6
Make diverging procedure types different from ones without a return type
2018-09-09 13:48:33 +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
220485a2d2
typeid as keyword (ready to implement polymorphic name parameters)
2018-09-02 15:56:36 +01:00
gingerBill
aa542980ce
Change memory layout of map to be 3 words smaller
2018-08-30 19:14:10 +01:00
gingerBill
cbc6c2666b
Improve proc group scoring algorithm
2018-08-21 14:11:18 +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
884d5fed9f
bit_set['A'..'Z'], bit_set[0..8]
2018-08-16 15:16:57 +01:00
gingerBill
b3ebff715a
Fix defer ir bug
2018-08-15 15:44:41 +01:00
gingerBill
79a3c0b36c
Fix bit_set range
2018-08-14 18:35:14 +01:00
gingerBill
966249c10a
bit_set constants
2018-08-14 18:32:34 +01:00
gingerBill
acc010cba5
Add bit_set type
2018-08-14 17:07:56 +01:00
gingerBill
96fc9138d4
Do using Foo :: enum at the type_decl stage
2018-07-29 11:29:20 +01:00
gingerBill
6512a3e5f2
using Foo :: enum {A, B, C}; len(Foo)
2018-07-29 10:50:15 +01:00
gingerBill
1705ba8069
Fix typos
2018-07-28 19:44:00 +01:00
gingerBill
c2ca24a486
Big renaming: AstNode to Ast
2018-06-17 10:58:59 +01:00
gingerBill
ba67e474d3
Make source code compile with 32 bit (but not build 32 bit code)
2018-06-15 21:46:03 +01:00
gingerBill
5081ea1a0c
Fix type aliasing comparison; Fix gb_utf8_decode
2018-06-15 19:59:35 +01:00
gingerBill
e9e7ce2606
Allow .allocator for dynamic arrays; Add mem.Pool
2018-06-12 19:10:14 +01:00
gingerBill
49ea9ed722
Entity aliasing clean up
2018-06-09 10:08:17 +01:00
gingerBill
4d052d5119
Remove code relating to default struct values
2018-05-20 17:31:46 +01:00
gingerBill
e597a8d72e
Fix issues with exact integer bounds and remove dead code
2018-05-13 17:38:35 +01:00
gingerBill
de9a4b5164
Disable pointer arithmetic
2018-05-13 16:10:02 +01:00
gingerBill
2ef22e86e0
Make any use typeid rather than ^Type_Info
2018-05-12 18:40:49 +01:00