blob: 48ac507b04d0d43ed791d51953d581b55faa9fac [file] [log] [blame]
Michael Woeristerfb3e17b2013-06-24 15:47:211// Copyright 2013 The Rust Project Developers. See the COPYRIGHT
2// file at the top-level directory of this distribution and at
3// http://rust-lang.org/COPYRIGHT.
4//
5// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
6// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
7// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
8// option. This file may not be copied, modified, or distributed
9// except according to those terms.
10
Michael Woerister7a31a3e2013-06-28 07:35:2111// Gdb doesn't know about UTF-32 character encoding and will print a rust char as only
Michael Woeristerfb3e17b2013-06-24 15:47:2112// its numerical value.
13
14// compile-flags:-Z extra-debug-info
Michael Woerister93d63282013-09-06 14:00:0815// debugger:rbreak zzz
Michael Woeristerfb3e17b2013-06-24 15:47:2116// debugger:run
17// debugger:finish
18// debugger:print *bool_ref
19// check:$1 = true
20
21// debugger:print *int_ref
22// check:$2 = -1
23
24// debugger:print *char_ref
25// check:$3 = 97
26
27// debugger:print/d *i8_ref
28// check:$4 = 68
29
30// debugger:print *i16_ref
31// check:$5 = -16
32
33// debugger:print *i32_ref
34// check:$6 = -32
35
36// debugger:print *i64_ref
37// check:$7 = -64
38
39// debugger:print *uint_ref
40// check:$8 = 1
41
42// debugger:print/d *u8_ref
43// check:$9 = 100
44
45// debugger:print *u16_ref
46// check:$10 = 16
47
48// debugger:print *u32_ref
49// check:$11 = 32
50
51// debugger:print *u64_ref
52// check:$12 = 64
53
Michael Woeristerfb3e17b2013-06-24 15:47:2154// debugger:print *f32_ref
Daniel Micayc9d4ad02013-09-26 06:26:0955// check:$13 = 2.5
Michael Woeristerfb3e17b2013-06-24 15:47:2156
57// debugger:print *f64_ref
Daniel Micayc9d4ad02013-09-26 06:26:0958// check:$14 = 3.5
Michael Woeristerfb3e17b2013-06-24 15:47:2159
Erick Tryzelaarad5c6762013-08-17 15:37:4260#[allow(unused_variable)];
61
Michael Woeristerfb3e17b2013-06-24 15:47:2162
63fn main() {
64 let bool_box: ~bool = ~true;
Michael Woeristerb2aeb4b2013-07-16 10:17:5565 let bool_ref: &bool = bool_box;
Michael Woeristerfb3e17b2013-06-24 15:47:2166
67 let int_box: ~int = ~-1;
Michael Woeristerb2aeb4b2013-07-16 10:17:5568 let int_ref: &int = int_box;
Michael Woeristerfb3e17b2013-06-24 15:47:2169
70 let char_box: ~char = ~'a';
Michael Woeristerb2aeb4b2013-07-16 10:17:5571 let char_ref: &char = char_box;
Michael Woeristerfb3e17b2013-06-24 15:47:2172
73 let i8_box: ~i8 = ~68;
Michael Woeristerb2aeb4b2013-07-16 10:17:5574 let i8_ref: &i8 = i8_box;
Michael Woeristerfb3e17b2013-06-24 15:47:2175
76 let i16_box: ~i16 = ~-16;
Michael Woeristerb2aeb4b2013-07-16 10:17:5577 let i16_ref: &i16 = i16_box;
Michael Woeristerfb3e17b2013-06-24 15:47:2178
79 let i32_box: ~i32 = ~-32;
Michael Woeristerb2aeb4b2013-07-16 10:17:5580 let i32_ref: &i32 = i32_box;
Michael Woeristerfb3e17b2013-06-24 15:47:2181
82 let i64_box: ~i64 = ~-64;
Michael Woeristerb2aeb4b2013-07-16 10:17:5583 let i64_ref: &i64 = i64_box;
Michael Woeristerfb3e17b2013-06-24 15:47:2184
85 let uint_box: ~uint = ~1;
Michael Woeristerb2aeb4b2013-07-16 10:17:5586 let uint_ref: &uint = uint_box;
Michael Woeristerfb3e17b2013-06-24 15:47:2187
88 let u8_box: ~u8 = ~100;
Michael Woeristerb2aeb4b2013-07-16 10:17:5589 let u8_ref: &u8 = u8_box;
Michael Woeristerfb3e17b2013-06-24 15:47:2190
91 let u16_box: ~u16 = ~16;
Michael Woeristerb2aeb4b2013-07-16 10:17:5592 let u16_ref: &u16 = u16_box;
Michael Woeristerfb3e17b2013-06-24 15:47:2193
94 let u32_box: ~u32 = ~32;
Michael Woeristerb2aeb4b2013-07-16 10:17:5595 let u32_ref: &u32 = u32_box;
Michael Woeristerfb3e17b2013-06-24 15:47:2196
97 let u64_box: ~u64 = ~64;
Michael Woeristerb2aeb4b2013-07-16 10:17:5598 let u64_ref: &u64 = u64_box;
Michael Woeristerfb3e17b2013-06-24 15:47:2199
Michael Woeristerfb3e17b2013-06-24 15:47:21100 let f32_box: ~f32 = ~2.5;
Michael Woeristerb2aeb4b2013-07-16 10:17:55101 let f32_ref: &f32 = f32_box;
Michael Woeristerfb3e17b2013-06-24 15:47:21102
103 let f64_box: ~f64 = ~3.5;
Michael Woeristerb2aeb4b2013-07-16 10:17:55104 let f64_ref: &f64 = f64_box;
Michael Woeristerfb3e17b2013-06-24 15:47:21105 zzz();
106}
107
Erick Tryzelaarad5c6762013-08-17 15:37:42108fn zzz() {()}