This repository was archived by the owner on Sep 13, 2022. It is now read-only.
Description You can checkout to this branch to try it yourself: https://github.com/huwenchao/minits/tree/class_fail_to_ll .
# simple array in class works well
$ make class
node build/main/index.js build examples/class.ts -o class.ll
minits:prelude Starts examples/class.ts
minits:prelude Create TmpDir /tmp/minits/48c5737db2abca52030b3b4db3a73eff
minits:prelude Expand examples/class.ts => /tmp/minits/48c5737db2abca52030b3b4db3a73eff/output.layer0.ts
minits:prelude Expand /tmp/minits/48c5737db2abca52030b3b4db3a73eff/output.layer0.ts => /tmp/minits/48c5737db2abca52030b3b4db3a73eff/output.layer1.ts
minits:prelude Expand /tmp/minits/48c5737db2abca52030b3b4db3a73eff/output.layer1.ts => /tmp/minits/48c5737db2abca52030b3b4db3a73eff/output.layer2.ts
minits:prelude Expand /tmp/minits/48c5737db2abca52030b3b4db3a73eff/output.layer2.ts => /tmp/minits/48c5737db2abca52030b3b4db3a73eff/output.layer3.ts
minits:prelude Expand /tmp/minits/48c5737db2abca52030b3b4db3a73eff/output.layer3.ts => /tmp/minits/48c5737db2abca52030b3b4db3a73eff/output.layer4.ts
minits:prelude Expand /tmp/minits/48c5737db2abca52030b3b4db3a73eff/output.layer4.ts => /tmp/minits/48c5737db2abca52030b3b4db3a73eff/output.layer5.ts
minits:prelude Rename /tmp/minits/48c5737db2abca52030b3b4db3a73eff/output.layer5.ts => /tmp/minits/48c5737db2abca52030b3b4db3a73eff/output.ts
minits:codegen Declare function Employee_constructor
minits:codegen Declare function main
clang class.ll -o class
./class
Makefile:20: recipe for target 'class' failed
make: *** [class] Error 43
# it failed to generate the ll file when I move the stack from run function to class member
$ make run
node build/main/index.js build examples/brainfuck_class/brainfuck.ts -o brainfuck.ll
minits:prelude Starts examples/brainfuck_class/brainfuck.ts
minits:prelude Create TmpDir /tmp/minits/5e1c70b483242a9fe7e59420fb88f980
minits:prelude Expand examples/brainfuck_class/brainfuck.ts => /tmp/minits/5e1c70b483242a9fe7e59420fb88f980/output.layer0.ts
minits:prelude Expand /tmp/minits/5e1c70b483242a9fe7e59420fb88f980/output.layer0.ts => /tmp/minits/5e1c70b483242a9fe7e59420fb88f980/output.layer1.ts
minits:prelude Expand /tmp/minits/5e1c70b483242a9fe7e59420fb88f980/output.layer1.ts => /tmp/minits/5e1c70b483242a9fe7e59420fb88f980/output.layer2.ts
minits:prelude Expand /tmp/minits/5e1c70b483242a9fe7e59420fb88f980/output.layer2.ts => /tmp/minits/5e1c70b483242a9fe7e59420fb88f980/output.layer3.ts
minits:prelude Expand /tmp/minits/5e1c70b483242a9fe7e59420fb88f980/output.layer3.ts => /tmp/minits/5e1c70b483242a9fe7e59420fb88f980/output.layer4.ts
minits:prelude Expand /tmp/minits/5e1c70b483242a9fe7e59420fb88f980/output.layer4.ts => /tmp/minits/5e1c70b483242a9fe7e59420fb88f980/output.layer5.ts
minits:prelude Rename /tmp/minits/5e1c70b483242a9fe7e59420fb88f980/output.layer5.ts => /tmp/minits/5e1c70b483242a9fe7e59420fb88f980/output.ts
minits:codegen Declare function BrainfuckInterpreter_constructor
minits:codegen Declare function BrainfuckInterpreter_reset
minits:codegen Declare function BrainfuckInterpreter_uint8
minits:codegen Declare function BrainfuckInterpreter_run
minits:codegen Declare function BrainfuckInterpreter_putchar
minits:codegen Declare function main
Makefile:5: recipe for target 'brainfuck.ll' failed
make: *** [brainfuck.ll] Segmentation fault (core dumped)
# the ts syntax is well
$ make test
ts-node examples/brainfuck_class/test.ts
code: >++++[<++++++++>-]>++++++++[>++++<-]>>++>>>+>>>+<<<<<<<<<<[-[->+<]>[-<+>>>.<<]>>>[[->++++++++[>++++<-]>.<<[->+<]+>[->++++++++++<<+>]>.[-]>]]+<<<[-[->+<]
+>[-<+>>>-[->+<]++>[-<->]<<<]<<<<]++++++++++.+++.[-]<]+++++
---------- start ----------
*
* *
* *
* * * *
* *
* * * *
I am not sure whether it is array in class issue. I have no idea how to debug it.
Reactions are currently unavailable
You can checkout to this branch to try it yourself: https://github.com/huwenchao/minits/tree/class_fail_to_ll.
I am not sure whether it is array in class issue. I have no idea how to debug it.