summaryrefslogtreecommitdiff
path: root/Build/source/utils/asymptote/tests/frames
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2009-05-16 00:19:13 +0000
committerKarl Berry <karl@freefriends.org>2009-05-16 00:19:13 +0000
commitbab45528d65eaafe68a705dbb2a57075c7b7cbd8 (patch)
tree10b4ae2b5195c8dede153ab89359ec00f55f325f /Build/source/utils/asymptote/tests/frames
parent8643d90372e9c31e0f461c15c596b60a545bd7d3 (diff)
asymptote 1.72 sources (not integrated into build yet)
git-svn-id: svn://tug.org/texlive/trunk@13110 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/utils/asymptote/tests/frames')
-rw-r--r--Build/source/utils/asymptote/tests/frames/loop.asy29
-rw-r--r--Build/source/utils/asymptote/tests/frames/stat.asy14
-rw-r--r--Build/source/utils/asymptote/tests/frames/stat2.asy17
3 files changed, 60 insertions, 0 deletions
diff --git a/Build/source/utils/asymptote/tests/frames/loop.asy b/Build/source/utils/asymptote/tests/frames/loop.asy
new file mode 100644
index 00000000000..ceb65a1ff56
--- /dev/null
+++ b/Build/source/utils/asymptote/tests/frames/loop.asy
@@ -0,0 +1,29 @@
+import TestLib;
+StartTest("loop");
+
+int f();
+for (int i=0; i<10; ++i) {
+ int x=i;
+ for (int j=0; j<10; ++j) {
+ int y=j;
+ if (i==5 && j==7) {
+ f = new int () { return x*y; };
+ }
+ }
+}
+assert(f()==35);
+
+int f();
+
+for (int i=0; i<10; ++i) {
+ int x=i;
+ for (int j=0; j<10; ++j) {
+ int y=j;
+ if (i==5 && j==7) {
+ f = new int () { return i*y; };
+ }
+ }
+}
+assert(f()==70);
+
+EndTest();
diff --git a/Build/source/utils/asymptote/tests/frames/stat.asy b/Build/source/utils/asymptote/tests/frames/stat.asy
new file mode 100644
index 00000000000..d366b193e0d
--- /dev/null
+++ b/Build/source/utils/asymptote/tests/frames/stat.asy
@@ -0,0 +1,14 @@
+import TestLib;
+StartTest("stat");
+struct T {
+ int x;
+ static void f(T t) {
+ t.x=2;
+ }
+}
+
+T t=new T;
+assert(t.x==0);
+T.f(t);
+assert(t.x==2);
+EndTest();
diff --git a/Build/source/utils/asymptote/tests/frames/stat2.asy b/Build/source/utils/asymptote/tests/frames/stat2.asy
new file mode 100644
index 00000000000..ea5863b081a
--- /dev/null
+++ b/Build/source/utils/asymptote/tests/frames/stat2.asy
@@ -0,0 +1,17 @@
+import TestLib;
+StartTest("stat2");
+struct T {
+ int x;
+ static void f(T t) {
+ static void g(T t) {
+ t.x=2;
+ }
+ g(t);
+ }
+}
+
+T t=new T;
+assert(t.x==0);
+T.f(t);
+assert(t.x==2);
+EndTest();