Christoffer Lerno
|
bb20a38cdb
|
Updated membersof. "Type.kind" renamed "Type.kindof"
|
2022-10-07 14:41:10 +02:00 |
|
Christoffer Lerno
|
81bea9bad6
|
Updated untyped lists.
|
2022-09-24 14:35:58 +02:00 |
|
Christoffer Lerno
|
ba9b203c52
|
Cleanup.
|
2022-09-15 09:50:46 +02:00 |
|
Christoffer Lerno
|
d95e0b4733
|
General refactoring and fix of compile time folding of pointers.
|
2022-08-17 21:54:47 +02:00 |
|
Christoffer Lerno
|
90dfc24491
|
General cleanup and rearranging code.
|
2022-08-11 02:20:22 +02:00 |
|
Christoffer Lerno
|
ebd7611164
|
Allow compile time pointer manipulation. Ternary bug fixes.
|
2022-08-09 12:05:49 +02:00 |
|
Christoffer Lerno
|
7e0a29ef40
|
Fix constant typeid comparisons. Allow methods to use & and * and constants. Improved error messages. Updated String type with generic append.
|
2022-07-24 15:10:04 +02:00 |
|
Christoffer Lerno
|
29a9769651
|
Ordinal based enums.
|
2022-05-08 21:39:00 +02:00 |
|
Christoffer Lerno
|
22ee082d00
|
0.2.1 SysV ABI fix for passing certain things by struct. Fix implicitly converting to float in the case of myfloat *= -1. Prefer inferred constant over global. Allow locals to shadow global variables.
|
2022-04-27 16:43:25 +02:00 |
|
Christoffer Lerno
|
890c4bc435
|
0.2.0. Build system improvements. Target changes x64-windows -> windows-x64, x64-darwin -> macos-x64. Improved mac support. LLD linking for Mac, Windows, Linux. Cross linking for Mac, Windows. Clean up string use. Fix of debug handling of multiple compilation units per module. MSVC CI
|
2022-04-26 13:20:33 +02:00 |
|
Christoffer Lerno
|
bf5683b41c
|
General cleanup, more native platform detection.
|
2022-02-18 09:54:12 +01:00 |
|
Christoffer Lerno
|
06917f2e65
|
Added "guess a number". Fix CT enum / int comparison. Fix some array pointer decay scenarios. Infer type of expression blocks. Correctly merge anyerr.
|
2022-02-01 22:46:32 +01:00 |
|
Christoffer Lerno
|
05c9b7cb33
|
More explicit conversion and width changes to some field.
|
2021-11-21 23:37:54 +01:00 |
|
Christoffer Lerno
|
a1b69a3f50
|
Casting between vector and array. Check f16 overflow.
|
2021-11-20 03:44:50 +01:00 |
|
Christoffer Lerno
|
86723540f3
|
$switch over values.
|
2021-10-20 17:49:07 +02:00 |
|
Christoffer Lerno
|
b4df56db54
|
Removed original_type, pure, removed bigint, added i128 type, lots of fixes to $Foo, reassigning ct type, catch/macro, "!", removed type inference.
|
2021-10-19 10:39:02 +02:00 |
|
Christoffer Lerno
|
e4c7dde30b
|
Fix of shadowing bug. Allow pointer and subarrays to be constant initialized. Compile time values may now pass around anything considered compile time constant. It's possible to index into an initializer list at compile time. (Some work still remains on this)
|
2021-09-18 01:13:42 +02:00 |
|
Christoffer Lerno
|
bcda6d71c9
|
AST printout removed. Split initializer types. Const list functionality.
|
2021-09-10 15:47:23 +02:00 |
|
Christoffer Lerno
|
6e386538dc
|
Fixed bool->bool casts. Fixed ternary with boolean "legs". Removed some superfluous code.
|
2021-08-28 13:39:15 +02:00 |
|
Christoffer Lerno
|
8731634f4d
|
Unified constants (enum, error types, typeid). Removed EXPR_MEMBER_ACCESS. Added if-catch-switch. switch-case can handle non constant values. Inlining removed on O0. Added subarray comparison allowing string cases.
|
2021-08-27 19:13:32 +02:00 |
|
Christoffer Lerno
|
64f20da080
|
Better handling of void/void*, unified local/global var analysis. Native base64 / hex data array (needs more checks)
|
2021-08-20 10:29:17 +02:00 |
|
Christoffer Lerno
|
67d09cf7c6
|
Pick double / long double depending on availability.
|
2021-07-16 20:20:19 +02:00 |
|
Christoffer Lerno
|
dbb067a005
|
Cleanup.
|
2021-05-23 21:32:32 +02:00 |
|
Christoffer Lerno
|
fd08c5c980
|
Revert "Remove suppressed warning."
|
2021-04-29 17:23:46 +02:00 |
|
Christoffer Lerno
|
c4585f9bbd
|
Remove suppressed warning.
|
2021-04-29 17:18:50 +02:00 |
|
Christoffer Lerno
|
07595df412
|
Change cast and int rules: constant folding always starts. Promotion using left side on all operands to bit width. Implicit narrowing to max size on right hand side.
|
2021-03-17 18:25:00 +01:00 |
|
Christoffer Lerno
|
1d50beb330
|
Work on constant string and inferred array sizes.
|
2021-02-03 23:01:37 +01:00 |
|
Christoffer Lerno
|
4222f2731e
|
&&temp operator. Macro evaluation.
|
2020-10-16 18:11:30 +02:00 |
|
Christoffer Lerno
|
77ccfc1f7c
|
Added CT_SWITCH parsing in top level. Nil changed to null. Parsing more in line with grammar. Parse type as expressions. Zero init by default for locals. Corrected bool/fp conversion. Add memcpy pass to fix issue with value load/stores.
|
2020-09-21 11:38:12 +02:00 |
|
Christoffer Lerno
|
dc86c21210
|
New failable based error handling. Labelled break/continue/next.
|
2020-07-09 13:07:08 +02:00 |
|
Christoffer Lerno
|
89ce6064e1
|
Started work on cleaning up dumping the AST. Lots still to do but... Split try expr further and fixed emit of statement.
|
2020-05-06 22:23:53 +02:00 |
|
Christoffer Lerno
|
8e80091da4
|
Create CI
|
2020-04-22 16:07:42 +02:00 |
|
Christoffer Lerno
|
60c60a3205
|
Enum fixes
|
2020-04-05 11:31:05 +02:00 |
|
Christoffer Lerno
|
bb2aa6e27a
|
Fixup of enum types.
|
2020-04-03 22:00:00 +02:00 |
|
Christoffer Lerno
|
b1aa64cdcc
|
TypeInfo gained a span. Hex lexing fixed. Basic block returns fixed. Removal of Ast.exit. Enum parameter list parses. Enum analysis improved. Exit deduction improved. Switch over a bool allowed. Switch analysis improved. Added -% operator. Updated implicit casts. Use of bigint. Signed-unsigned comparisons.
|
2020-03-29 17:41:31 +02:00 |
|