#include "oberon.h" #include "generator.h" #include static const char source[] = "MODULE Test;" "TYPE" " Int = INTEGER;" " PArray2D = POINTER TO Array2D;" " Array2D = ARRAY 3 OF ARRAY 3 OF INTEGER;" " PAP2D = ARRAY 4 OF POINTER TO ARRAY 5 OF INTEGER;" " Object = POINTER TO ObjectDesc;" " ObjectDesc = RECORD" " value : Array2D;" " value2 : PArray2D;" " doStuff : Proc;" " next : Object;" " END;" " Proc = PROCEDURE(self : Object; i : Int);" "VAR" " i : Int;" " a2 : Array2D;" " p2 : PArray2D;" " po : Object;" " do : ObjectDesc;" " stuffProc : Proc;" " pap2 : PAP2D;" " " "BEGIN;" "END Test." ; static oberon_context_t * ctx; static oberon_module_t * mod; int main(int argc, char ** argv) { ctx = oberon_create_context(); mod = oberon_compile_module(ctx, source); //mod -> begin(); oberon_generator_dump(ctx, "dump.txt"); oberon_destroy_context(ctx); return 0; }