X-Git-Url: https://deadsoftware.ru/gitweb?a=blobdiff_plain;f=test.c;h=b934af876ca2bde9d44397015f95c7ce70953bd5;hb=338eeae16495bbdcbd8c4f3dad4996346e26139b;hp=7149026862087a8f63577916ffd361e8b89b08ef;hpb=c3449e207b5e1e85ecea55975163a4dc6b986962;p=dsw-obn.git diff --git a/test.c b/test.c index 7149026..b934af8 100644 --- a/test.c +++ b/test.c @@ -1,19 +1,19 @@ #include "oberon.h" +#include "generator.h" #include -static oberon_type_t integer = { "INTEGER", OBERON_TYPE_INTEGER, sizeof(int) }; -static oberon_type_t boolean = { "BOOLEAN", OBERON_TYPE_BOOLEAN, sizeof(int) }; - static const char source[] = "MODULE Test;" + "TYPE" + " MyRec = POINTER TO MyRecDesc;" + " MyRecDesc = RECORD" + " a : INTEGER;" + " END;" "VAR" - " k : INTEGER;" - " i : INTEGER;" - " b : BOOLEAN;" - "BEGIN" - " k := 10;" - " i := k;" - " b := TRUE;" + " r : MyRec;" + "BEGIN;" + " r := NIL;" + " r.a := 1;" "END Test." ; @@ -24,9 +24,9 @@ int main(int argc, char ** argv) { ctx = oberon_create_context(); - oberon_register_global_type(ctx, &integer); - oberon_register_global_type(ctx, &boolean); mod = oberon_compile_module(ctx, source); + //mod -> begin(); + oberon_generator_dump(ctx, "dump.txt"); oberon_destroy_context(ctx); return 0; }