about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorMichael Woerister <michaelwoerister@gmail>2013-06-25 21:55:02 +0200
committerMichael Woerister <michaelwoerister@gmail>2013-06-27 19:28:37 +0200
commit4fb471ab7828e31c29054b76217c42917c4206c5 (patch)
treedf006330912d82ae9367636a642b3b0b769097bf /src
parent074e0fa2a95d9cc723c9c952cf6dc5e7daed574d (diff)
downloadrust-4fb471ab7828e31c29054b76217c42917c4206c5.tar.gz
rust-4fb471ab7828e31c29054b76217c42917c4206c5.zip
debuginfo: Added test case for function arguments.
Diffstat (limited to 'src')
-rw-r--r--src/test/debug-info/function-arguments.rs51
1 files changed, 51 insertions, 0 deletions
diff --git a/src/test/debug-info/function-arguments.rs b/src/test/debug-info/function-arguments.rs
new file mode 100644
index 00000000000..f5563cda259
--- /dev/null
+++ b/src/test/debug-info/function-arguments.rs
@@ -0,0 +1,51 @@
+// Copyright 2013 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
+
+// GDB doesn't know about UTF-32 character encoding and will print a rust char as only its numerical
+// value.
+
+// compile-flags:-Z extra-debug-info
+// debugger:break zzz
+// debugger:run
+// debugger:finish
+
+// debugger:print x
+// check:$1 = 111102
+// debugger:print y
+// check:$2 = true
+
+// debugger:continue
+// debugger:finish
+
+// debugger:print a
+// check:$3 = 2000
+// debugger:print b
+// check:$4 = 3000
+
+fn main() {
+
+    fun(111102, true);
+    nested(2000, 3000);
+
+    fn nested(a: i32, b: i64) -> (i32, i64) {
+        zzz()
+        (a, b)
+    }
+}
+
+fn fun(x: int, y: bool) -> (int, bool) {
+    zzz();
+
+    (x, y)
+}
+
+fn zzz() {()}
\ No newline at end of file