X-Git-Url: https://gitweb.ps.run/toc/blobdiff_plain/c2ba7425955ae538e220cec79d9124756d1b4c8b..b9322dfb8efe37f6f88a899269bdf21015f4db9a:/test/test2.toc diff --git a/test/test2.toc b/test/test2.toc new file mode 100644 index 0000000..6e8d4f8 --- /dev/null +++ b/test/test2.toc @@ -0,0 +1,61 @@ +func puts(str : char*) : void; + +namespace N1 { + func f1() : void { + puts("Hello\n"); + } + namespace N2 { + struct S1 { + i1 : int; + i2 : int; + i3 : int; + + m1(i: int) : int { + this->i3 = this->i1 * this->i2; + + N1::f1(); + + return this->i1 + this->i2; + } + } + + func f1() : void { + var s1 : N1::N2::S1; + s1.m1(123); + } + } +} + +struct S1 { + t1: T; + t2: T; + + m1() : T { + return this->t1 + this->t2; + } +} + +func generic1(a1 : A, a2 : A) : A { + return a1 + a2; +} + +func main(argc : int, argv : char**) : int { + var s1 : N1::N2::S1; + var s2 : N1::N2::S1; + var s3 : N1::N2::S1; + s1.i1 = 123; + s1.i2 = 456; + s1.m1(s2.m1(s3.m1(89))); + + N1::N2::f1(); + + var s4 : S1; + s4.t1 = 123; + s4.t2 = 456; + s4.m1(); + + generic1(1, 2); + generic1(3.4, 5.6); + + return 0; +} \ No newline at end of file