We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 45f5f8e commit df712abCopy full SHA for df712ab
src/libcore/sys.rs
@@ -32,11 +32,6 @@ struct Closure {
32
env: *(),
33
}
34
35
-#[abi = "cdecl"]
36
-extern mod rustrt {
37
- pure fn shape_log_str(t: *sys::TypeDesc, data: *()) -> ~str;
38
-}
39
-
40
#[abi = "rust-intrinsic"]
41
extern mod rusti {
42
fn get_tydesc<T>() -> *();
@@ -104,8 +99,10 @@ pure fn refcount<T>(+t: @T) -> uint {
104
99
105
100
pure fn log_str<T>(t: T) -> ~str {
106
101
unsafe {
107
- let data_ptr: *() = unsafe::reinterpret_cast(&ptr::addr_of(t));
108
- rustrt::shape_log_str(get_type_desc::<T>(), data_ptr)
102
+ let buffer = io::mem_buffer();
103
+ let writer = io::mem_buffer_writer(buffer);
+ repr::write_repr(writer, &t);
+ return io::mem_buffer_str(buffer); // XXX: Extra malloc and copy.
109
110
111
0 commit comments