#include #include #include "LLVMVisitor/LLVMVisitor.h" void freeNodes(Value* v) { if (dynamic_cast(v) != nullptr) { for (Value* val : static_cast(v)->get_args()) freeNodes(val); } else if (dynamic_cast(v) != nullptr) { for (Value* val : static_cast(v)->get_value()) freeNodes(val); } delete v; } int main() { LLVMVisitor visitor("transpiled.ll"); std::deque nodes = { #include "../build/CLTree.h" }; for (Value* n : nodes) { n->Visit(visitor); } visitor.insertMain(); for (Value* n : nodes) freeNodes(n); }