summaryrefslogtreecommitdiffstats
path: root/src/main.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/main.rs')
-rw-r--r--src/main.rs31
1 files changed, 20 insertions, 11 deletions
diff --git a/src/main.rs b/src/main.rs
index 944b7ab..c79f1da 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -9,17 +9,26 @@ use core::fmt::Write;
#[no_mangle]
pub extern "C" fn main(_nargs: libc::c_int, _args: *const *const libc::c_char) -> libc::c_int {
let mut stdout = unsafe { libc::stdio::stdout() };
- let x = libc::string::CString::from("foo");
- let l = x.len();
- let y = x.into_raw();
- let z = unsafe {
- libc::boxed::CBox::slice_from_raw_parts(y, l)
- };
- let foo = cstr!("Foo!\n");
- stdout.puts(foo);
- let _ = writeln!(stdout, "Foo: {} {} {}", z[0], z[1], z[2]);
- let b = libc::boxed::CBox::new(42);
- let _ = writeln!(stdout, "Bar: {}", b);
+
+ {
+ let foo = cstr!("Foo!\n");
+ stdout.puts(foo);
+ }
+
+ {
+ let x = libc::string::CString::from("foo");
+ let l = x.len();
+ let y = x.into_raw();
+ let z = unsafe {
+ libc::boxed::CBox::slice_from_raw_parts(y, l)
+ };
+ let _ = writeln!(stdout, "Foo: {} {} {}", z[0], z[1], z[2]);
+ }
+
+ {
+ let b = libc::boxed::CBox::new(42);
+ let _ = writeln!(stdout, "Bar: {}", b);
+ }
0
}