about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorTim Chevalier <chevalier@alum.wellesley.edu>2013-01-10 14:15:17 -0800
committerTim Chevalier <chevalier@alum.wellesley.edu>2013-01-10 14:16:02 -0800
commite0850d11ec4f577bf164daa0859ffc14ee07ddba (patch)
treeba56e8c671597fce1c3ebe267b5391d76a0f8541 /src
parent89ed595e306a7f391b561ee8a5a1e7aca24bf534 (diff)
downloadrust-e0850d11ec4f577bf164daa0859ffc14ee07ddba.tar.gz
rust-e0850d11ec4f577bf164daa0859ffc14ee07ddba.zip
Add test cases: one xfailed, one not
Diffstat (limited to 'src')
-rw-r--r--src/test/auxiliary/issue_3882.rc15
-rw-r--r--src/test/auxiliary/issue_3882.rs19
-rw-r--r--src/test/run-pass/issue-3904.rs37
-rw-r--r--src/test/run-pass/issue_3882.rs15
4 files changed, 86 insertions, 0 deletions
diff --git a/src/test/auxiliary/issue_3882.rc b/src/test/auxiliary/issue_3882.rc
new file mode 100644
index 00000000000..f6124088c9b
--- /dev/null
+++ b/src/test/auxiliary/issue_3882.rc
@@ -0,0 +1,15 @@
+// Copyright 2012 The Rust Project Developers. See the COPYRIGHT
+// file at the top-level directory of this distribution and at
+// http://rust-lang.org/COPYRIGHT.
+//
+// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
+// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
+// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
+// option. This file may not be copied, modified, or distributed
+// except according to those terms.
+
+#[link(name = "linenoise",
+       vers = "0.1")];
+#[crate_type = "lib"];
+
+pub mod issue_3882;
diff --git a/src/test/auxiliary/issue_3882.rs b/src/test/auxiliary/issue_3882.rs
new file mode 100644
index 00000000000..c2b95e4e7d6
--- /dev/null
+++ b/src/test/auxiliary/issue_3882.rs
@@ -0,0 +1,19 @@
+// Copyright 2012 The Rust Project Developers. See the COPYRIGHT
+// file at the top-level directory of this distribution and at
+// http://rust-lang.org/COPYRIGHT.
+//
+// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
+// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
+// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
+// option. This file may not be copied, modified, or distributed
+// except according to those terms.
+
+mod issue_3882 {
+    struct Completions {
+        mut len: libc::size_t,
+    }
+    
+    extern mod c {
+        fn linenoiseAddCompletion(lc: *Completions);
+    }
+}
diff --git a/src/test/run-pass/issue-3904.rs b/src/test/run-pass/issue-3904.rs
new file mode 100644
index 00000000000..047791a0e89
--- /dev/null
+++ b/src/test/run-pass/issue-3904.rs
@@ -0,0 +1,37 @@
+// Copyright 2012 The Rust Project Developers. See the COPYRIGHT
+// file at the top-level directory of this distribution and at
+// http://rust-lang.org/COPYRIGHT.
+//
+// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
+// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
+// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
+// option. This file may not be copied, modified, or distributed
+// except according to those terms.
+
+// xfail-test
+type ErrPrinter = &fn(&str, &str);
+
+fn example_err(prog: &str, arg: &str) {
+    io::println(fmt!("%s: %s", prog, arg))
+}
+
+fn exit(+print: ErrPrinter, prog: &str, arg: &str) {
+    print(prog, arg);
+}
+
+struct X {
+    mut err: ErrPrinter
+}
+
+impl X {
+    fn boom() {
+        exit(self.err, "prog", "arg");
+    }
+}
+
+fn main(){
+    let val = &X{
+        err: example_err,
+    };
+    val.boom();
+}
diff --git a/src/test/run-pass/issue_3882.rs b/src/test/run-pass/issue_3882.rs
new file mode 100644
index 00000000000..3f88772d864
--- /dev/null
+++ b/src/test/run-pass/issue_3882.rs
@@ -0,0 +1,15 @@
+// Copyright 2012 The Rust Project Developers. See the COPYRIGHT
+// file at the top-level directory of this distribution and at
+// http://rust-lang.org/COPYRIGHT.
+//
+// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
+// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
+// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
+// option. This file may not be copied, modified, or distributed
+// except according to those terms.
+
+// aux-build:issue_3882.rc
+extern mod linenoise;
+use linenoise::issue_3882::*;
+
+fn main() {}