Tristan B. Kildaire
|
bf6a724783
|
Added intermediary type to differentiate between user-defined types, Class, Struct and built-in types like Number and Void
|
2021-06-06 18:42:23 +02:00 |
Tristan B. Kildaire
|
dd1ac9bdc3
|
Added basic type to the unit test to test that it doesn't add any dependencies.
|
2021-06-06 18:39:15 +02:00 |
Tristan B. Kildaire
|
0734a14f90
|
Added test case to test this.
|
2021-06-06 18:38:36 +02:00 |
Tristan B. Kildaire
|
4aeca83d90
|
Variables declared at module-level with types that are class types must set a dependency on said class running its static initializer
|
2021-06-06 18:38:07 +02:00 |
Tristan B. Kildaire
|
b2eca50f5f
|
Print out ndependencies after generating the list
|
2021-06-06 18:37:34 +02:00 |
Tristan B. Kildaire
|
3294076faa
|
If a variable declaration occurs at the module level an it is of a type that is non-basic then it is only a class-type and it must be statically initialized
(An actual check as to whether the type idk
|
2021-06-06 18:33:33 +02:00 |
Tristan B. Kildaire
|
8e2807c24a
|
WIP: Module-level type checking
|
2021-06-06 18:13:12 +02:00 |
Tristan B. Kildaire
|
bffcaa0898
|
Updated TODO
Removed static marking of Module-level class and struct definitions
|
2021-06-06 18:05:19 +02:00 |
Tristan B. Kildaire
|
3a9a43b258
|
Make all structs and classes at the Module level static
|
2021-06-06 17:59:46 +02:00 |
Tristan B. Kildaire
|
bedd9639a2
|
Updated TODO
|
2021-06-06 17:59:21 +02:00 |
Tristan B. Kildaire
|
0ddae3ab79
|
Added TODO
|
2021-06-06 17:57:50 +02:00 |
Tristan B. Kildaire
|
420ec5060d
|
TODO: Restarting dependency stuff
|
2021-06-06 17:56:31 +02:00 |
Tristan B. Kildaire
|
d6c38eee34
|
Actully idk what I am doing, this is a weird mix of things. I should first focus on classes and static initializations. Then when a type is used of a class that should cause it to init
|
2021-06-06 17:44:16 +02:00 |
Tristan B. Kildaire
|
7e8e4d6f56
|
Disabled visitation code for now
|
2021-06-06 17:33:14 +02:00 |
Tristan B. Kildaire
|
ea411066aa
|
Grouped dependency code toghether
|
2021-06-06 17:15:48 +02:00 |
Tristan B. Kildaire
|
bf226a16c7
|
Switched around
|
2021-06-06 17:14:24 +02:00 |
Tristan B. Kildaire
|
0596611295
|
Reliance list was keyed incorrecttly
|
2021-06-06 17:13:32 +02:00 |
Tristan B. Kildaire
|
4c538a95f5
|
Dependency list construction works
|
2021-06-06 17:08:55 +02:00 |
Tristan B. Kildaire
|
3501910f32
|
WIP: Dependancy "tree" construction
Added collection of all static members per each class in a container
|
2021-06-06 16:52:47 +02:00 |
Tristan B. Kildaire
|
880425f775
|
Updated todo
|
2021-06-06 16:10:33 +02:00 |
Tristan B. Kildaire
|
0023fe38f3
|
Renamed type checking test case
|
2021-06-06 16:06:40 +02:00 |
Tristan B. Kildaire
|
e8f7a93602
|
Updated test case for basic dependance
|
2021-06-06 16:05:27 +02:00 |
Tristan B. Kildaire
|
6de8e49a1f
|
Added new test case for use in type_checking
|
2021-06-06 15:59:01 +02:00 |
Tristan B. Kildaire
|
70623ecd4a
|
Check off things already implemented
Update test case to test them
|
2021-06-06 15:54:15 +02:00 |
Tristan B. Kildaire
|
3f9375c6ed
|
Added support for `static` (complete support) within structs
Updated test case to test this
|
2021-06-06 15:51:06 +02:00 |
Tristan B. Kildaire
|
8f86e03f7c
|
Updated
|
2021-06-06 15:49:07 +02:00 |
Tristan B. Kildaire
|
999bab48a0
|
Added non-urgent TODO regarding the implementation of `parseClass` and `parseStruct`
|
2021-06-06 15:46:59 +02:00 |
Tristan B. Kildaire
|
1ddd7f102b
|
Support for `static` without preceding accessor, has been added
|
2021-06-06 15:43:01 +02:00 |
Tristan B. Kildaire
|
82cffeaccb
|
WIP: Adding support for `static` keyword without preceding accessor
|
2021-06-06 15:35:04 +02:00 |
Tristan B. Kildaire
|
f0dae29533
|
Added support for `static` keyword when preceded by an accessor
|
2021-06-06 15:33:20 +02:00 |
Tristan B. V. Kildaire
|
948238d4e9
|
Added InitScope, for STATIC
|
2021-06-04 21:28:30 +02:00 |
Tristan B. V. Kildaire
|
c8490bfe36
|
WIP
|
2021-06-04 14:52:22 +02:00 |
Tristan B. V. Kildaire
|
0bf4a7f658
|
WIP: Adding static support
|
2021-06-04 14:47:39 +02:00 |
Tristan B. V. Kildaire
|
6225b5e62f
|
WIP: Need to add support for `static`
|
2021-06-04 14:39:49 +02:00 |
Tristan B. V. Kildaire
|
16bfdbfc2f
|
Moved case with path resolution not visited to another test case
|
2021-06-04 13:43:44 +02:00 |
Tristan B. V. Kildaire
|
4eb0c97dc7
|
Works without it
|
2021-06-04 13:42:47 +02:00 |
Tristan B. V. Kildaire
|
1974428772
|
Found my bug
|
2021-06-04 13:42:26 +02:00 |
Tristan B. V. Kildaire
|
440154b228
|
Visitation by UFOs, damn
|
2021-06-04 13:39:11 +02:00 |
Tristan B. V. Kildaire
|
f024bedaaa
|
WIP: Need to add support for the `new` keyword
|
2021-06-04 12:04:58 +02:00 |
Tristan B. V. Kildaire
|
440addf664
|
Merge branch 'develop' into codegen
|
2021-06-04 11:58:56 +02:00 |
Tristan B. V. Kildaire
|
9cf1a181a2
|
TIme for expression checking
|
2021-06-04 11:57:25 +02:00 |
Tristan B. V. Kildaire
|
7bd8bfdde0
|
Aded back in cause why not.
Visitation wil, impy marking in the sense that if we do expression checking then it can only rely on alrady visited.
|
2021-06-04 11:56:47 +02:00 |
Tristan B. V. Kildaire
|
e5873fecb3
|
Idea: Added visitation, we don't need marking tbh , we checking visitaion, marking is implcii in that if there is an error, we exit compiation rpocess, else we continue (which implies marked i.e. the type checking succeeded)
|
2021-06-04 11:55:22 +02:00 |
Tristan B. V. Kildaire
|
6c0a0ec69e
|
Idea: /* TODO: Got it, we NEED a dependency tree, to know chihs is being processed previosuly */
|
2021-06-04 11:44:51 +02:00 |
Tristan B. V. Kildaire
|
3051d6b66f
|
Added marking capability to Statement
|
2021-06-04 11:36:58 +02:00 |
Tristan B. V. Kildaire
|
09bb089998
|
WIP: Found problem for ongoing recursion, we need a stopping case - we need to mark things
|
2021-06-04 11:34:18 +02:00 |
Tristan B. V. Kildaire
|
cfd81a6b45
|
Don't check the type (in class case) when the conatiner we are in is a class AND is the same class as that of the type of the typed entity being checked
|
2021-06-04 11:31:44 +02:00 |
Tristan B. V. Kildaire
|
6089598afe
|
WIP
|
2021-06-04 11:27:56 +02:00 |
Tristan B. Kildaire
|
de5502f61d
|
Stub file added for future LLVM code generator
|
2021-06-01 15:24:23 +02:00 |
Tristan B. Kildaire
|
4b13c88c51
|
DGen works, D code can be generated
|
2021-06-01 15:24:13 +02:00 |