aboutsummaryrefslogtreecommitdiff
path: root/src/test/run-pass/obj-as.rs
diff options
context:
space:
mode:
authorGraydon Hoare <[email protected]>2010-06-23 21:03:09 -0700
committerGraydon Hoare <[email protected]>2010-06-23 21:03:09 -0700
commitd6b7c96c3eb29b9244ece0c046d3f372ff432d04 (patch)
treeb425187e232966063ffc2f0d14c04a55d8f004ef /src/test/run-pass/obj-as.rs
parentInitial git commit. (diff)
downloadrust-d6b7c96c3eb29b9244ece0c046d3f372ff432d04.tar.xz
rust-d6b7c96c3eb29b9244ece0c046d3f372ff432d04.zip
Populate tree.
Diffstat (limited to 'src/test/run-pass/obj-as.rs')
-rw-r--r--src/test/run-pass/obj-as.rs21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/test/run-pass/obj-as.rs b/src/test/run-pass/obj-as.rs
new file mode 100644
index 00000000..62eda294
--- /dev/null
+++ b/src/test/run-pass/obj-as.rs
@@ -0,0 +1,21 @@
+
+obj big() {
+ fn one() -> int { ret 1; }
+ fn two() -> int { ret 2; }
+ fn three() -> int { ret 3; }
+}
+
+type small = obj {
+ fn one() -> int;
+ };
+
+fn main() {
+
+ let big b = big();
+ check (b.one() == 1);
+ check (b.two() == 2);
+ check (b.three() == 3);
+
+ let small s = b as small;
+ check (s.one() == 1);
+} \ No newline at end of file