|
c17d532802
|
Make type_mgr a class.
|
2020-09-15 19:19:58 -07:00 |
|
|
55e4e61906
|
Make mangler a class and reformat graph.
|
2020-09-15 19:13:48 -07:00 |
|
|
f2f88ab9ca
|
Make env a class.
|
2020-09-15 19:12:12 -07:00 |
|
|
ba418d357f
|
Make type_env a class.
|
2020-09-15 19:10:36 -07:00 |
|
|
0e3f16139d
|
Make llvm_context a class.
|
2020-09-15 19:08:00 -07:00 |
|
|
55486d511f
|
Make some refactors for name mangling and encapsulation.
|
2020-09-15 18:51:28 -07:00 |
|
|
6080094c41
|
Require mangled names for global variables.
|
2020-09-15 14:39:31 -07:00 |
|
|
6b8d3b0f8a
|
Refactor errors and update post draft.
|
2020-09-11 21:29:49 -07:00 |
|
|
725958137a
|
Factor type into case strategy constructor.
|
2020-09-11 13:03:00 -07:00 |
|
|
fe1e0a6de0
|
Switch to using FILE* and default YY_INPUT.
|
2020-09-11 02:16:29 -07:00 |
|
|
1f3c42fc44
|
Change constructor visibility to global.
Constructors are always effectively global.
|
2020-09-10 20:11:55 -07:00 |
|
|
13214cee96
|
Try out unboxing integers.
|
2020-09-10 17:32:16 -07:00 |
|
|
579c7bad92
|
Enable more syntax.
|
2020-09-10 16:04:44 -07:00 |
|
|
f00a6a7783
|
Actually use the environment for binop functions.
|
2020-09-10 16:03:56 -07:00 |
|
|
2a81fdd9fb
|
Stop using mangled names for local variables.
|
2020-09-10 15:14:19 -07:00 |
|
|
17c59e595c
|
Add assertion regarding local name mangling.
|
2020-09-10 15:05:02 -07:00 |
|
|
ad2576eae2
|
Move common code into loops.
|
2020-09-10 14:50:03 -07:00 |
|
|
72d8179cc5
|
Add compile-time flag to disable output.
|
2020-09-10 14:07:28 -07:00 |
|
|
dbabec0db6
|
Tweak parsed type error warning.
|
2020-09-10 14:04:06 -07:00 |
|
|
76675fbc9b
|
Make make_case_for throw from the second time on.
Also clean up the errors thrown a little bit.
|
2020-09-10 14:03:04 -07:00 |
|
|
ca395b5c09
|
Add programs to trigger error cases.
|
2020-09-10 14:02:19 -07:00 |
|
|
1a05d5ff7a
|
Add type errors to identifier nodes.
|
2020-09-10 12:59:26 -07:00 |
|
|
56f0dbd02f
|
Prevent case compilation from crashing and burning.
|
2020-09-10 12:53:55 -07:00 |
|
|
9fc0ff961d
|
Add more built-in boolean-specific instructions.
|
2020-09-10 12:44:41 -07:00 |
|
|
73441dc93b
|
Register booleans as internal types.
|
2020-09-10 00:54:35 -07:00 |
|
|
df5f5eba1c
|
Make sure to delete LLVM target machine.
|
2020-09-09 23:45:48 -07:00 |
|
|
d950b8dc90
|
Initialize graph indegree.
|
2020-09-09 23:44:53 -07:00 |
|
|
85394b185d
|
Add prototype impl of case specialization.
Boolean cases could be translated to ifs, and
integer cases to jumps. That's still in progress.
|
2020-09-09 22:49:35 -07:00 |
|
|
86b49f9cc3
|
Add 'internal' types.
|
2020-09-09 18:08:38 -07:00 |
|
|
9769b3e396
|
Replace throw 0 with real exceptions or assertions.
|
2020-09-09 17:19:23 -07:00 |
|
|
e337992410
|
Add sources for unification type errors.
|
2020-09-09 15:26:18 -07:00 |
|
|
d5c3a44041
|
Add extra line after code fence.
|
2020-09-09 15:25:48 -07:00 |
|
|
eade42be49
|
Print locations in non-unification type errors.
|
2020-09-09 15:15:25 -07:00 |
|
|
d0fac50cfd
|
Add locations to patterns.
|
2020-09-09 15:15:09 -07:00 |
|
|
dd4aa6fb9d
|
Require C++17 for optionals
|
2020-09-09 15:14:37 -07:00 |
|
|
aa867b2e5f
|
Add locations to error reporting.
|
2020-09-09 15:08:43 -07:00 |
|
|
2fa2be4b9e
|
Add a method to print location.
|
2020-09-09 14:41:16 -07:00 |
|
|
d5536467f6
|
Touch up source index code.
|
2020-09-09 14:20:10 -07:00 |
|
|
67cb61c93f
|
Keep track of locations in definitions.
|
2020-09-09 14:19:46 -07:00 |
|
|
578d580683
|
Make driver keep track of line numbers and locations.
|
2020-09-09 13:57:01 -07:00 |
|
|
789f277780
|
Update ASTs to actually take in locations.
Didn't realize I broke the build by leaving this out.
|
2020-09-09 13:29:28 -07:00 |
|
|
308ec615b9
|
Start using driver, and switch to file IO.
|
2020-09-09 13:28:43 -07:00 |
|
|
0e40c9e216
|
Enable locations.
|
2020-09-09 12:21:50 -07:00 |
|
|
5dbf75b5e4
|
Fork off version 13 of the compiler.
|
2020-09-08 18:38:05 -07:00 |
|