Thank you it correct my first problems.

I didn't send code because I thought it has the same cause. For the last problems the code is :

use extra::serialize;
use extra::json::{Json, Decoder, ToJson, Object, Encoder, Decoder};
use extra::treemap::TreeMap;
use std::io::Decorator;

//second struct with manually implemented  Decodable, Encodable
#[deriving(Decodable, Encodable, Eq)]
pub struct TestStruct2    {
    dataInt: u8,
    dataStr:~str,
    dataArray:~[u8],
}

let test3 : TestStruct2 = TestStruct2 {dataInt: 1, dataStr:~"toto", dataArray:~[2,3,4,5]}; //{\"dataArray\":[2,3,4,5],\"dataInt\":1,\"dataStr\":\"toto\"}
    let mut m3 = MemWriter::new();
    {
        let mut encoder3 =Encoder::init(&mut m3 as &mut Writer);
        test3.encode(&mut encoder3);
    }

Rustc result :
test_json.rs:292:8: 292:36 error: type `TestStruct2` does not implement any method in scope named `encode`
test/test_json.rs:292         test3.encode(&mut encoder3);

Philippe



Le 05/12/2013 09:56, Kevin Ballard a écrit :
`do` no longer works with stack closures. It now only works with the new proc() 
type, which basically means you're only going to see it used with spawn().

You need to now say something like

     let rc = endpoint.with_c_str(|cstr| {
         unsafe {smq_bind(self.sock, cstr)}
     });

I can't speculate on your encode error without seeing it.

-Kevin

On Dec 5, 2013, at 12:43 AM, Philippe Delrieu <philippe.delr...@free.fr> wrote:

Hello,

since a few days, I have a lot of new errors in the master compiler. For 
example in the rust_zmq lib that I use. When I compile it I have these errors :
321:9 error: last argument in `do` call has non-procedure type: |*i8| -> <V3>
/home/pdelrieu/Documents/dev/musit/rust/zmq/git/rust-zmq/src/zmq/lib.rs:319 let 
rc = do endpoint.with_c_str |cstr| {
/home/pdelrieu/Documents/dev/musit/rust/zmq/git/rust-zmq/src/zmq/lib.rs:320 
unsafe {zmq_bind(self.sock, cstr)}
/home/pdelrieu/Documents/dev/musit/rust/zmq/git/rust-zmq/src/zmq/lib.rs:321 };
/home/pdelrieu/Documents/dev/musit/rust/zmq/git/rust-zmq/src/zmq/lib.rs:328:29: 330:9 
error: last argument in `do` call has non-procedure type: |*i8| -> <V3>
/home/pdelrieu/Documents/dev/musit/rust/zmq/git/rust-zmq/src/zmq/lib.rs:328 let 
rc = do endpoint.with_c_str |cstr| {
/home/pdelrieu/Documents/dev/musit/rust/zmq/git/rust-zmq/src/zmq/lib.rs:329 
unsafe {zmq_connect(self.sock, cstr)}
/home/pdelrieu/Documents/dev/musit/rust/zmq/git/rust-zmq/src/zmq/lib.rs:330 };
/home/pdelrieu/Documents/dev/musit/rust/zmq/git/rust-zmq/src/zmq/lib.rs:337:16: 352:9 
error: last argument in `do` call has non-procedure type: |*u8, uint| -> <V3>
/home/pdelrieu/Documents/dev/musit/rust/zmq/git/rust-zmq/src/zmq/lib.rs:337 do 
data.as_imm_buf |base_ptr, len| {
/home/pdelrieu/Documents/dev/musit/rust/zmq/git/rust-zmq/src/zmq/lib.rs:338 let 
msg = [0, ..32];
/home/pdelrieu/Documents/dev/musit/rust/zmq/git/rust-zmq/src/zmq/lib.rs:339
/home/pdelrieu/Documents/dev/musit/rust/zmq/git/rust-zmq/src/zmq/lib.rs:340 
unsafe {
/home/pdelrieu/Documents/dev/musit/rust/zmq/git/rust-zmq/src/zmq/lib.rs:341 // 
Copy the data into the message.
/home/pdelrieu/Documents/dev/musit/rust/zmq/git/rust-zmq/src/zmq/lib.rs:342 
zmq_msg_init_size(&msg, len as size_t);
...
/home/pdelrieu/Documents/dev/musit/rust/zmq/git/rust-zmq/src/zmq/lib.rs:342:40: 
342:43 error: the type of this value must be known in this context
/home/pdelrieu/Documents/dev/musit/rust/zmq/git/rust-zmq/src/zmq/lib.rs:342 
zmq_msg_init_size(&msg, len as size_t);
^~~
/home/pdelrieu/Documents/dev/musit/rust/zmq/git/rust-zmq/src/zmq/lib.rs:344:16: 
344:32 error: cannot determine a type for this bounded type parameter: 
unconstrained type
/home/pdelrieu/Documents/dev/musit/rust/zmq/git/rust-zmq/src/zmq/lib.rs:344 
ptr::copy_memory(::cast::transmute(zmq_msg_data(&msg)), base_ptr, len);
^~~~~~~~~~~~~~~~
I have the same type of errors in my code plus other error when the trait can't 
be found like type `MyType` does not implement any method in scope named 
`encode` and the function is implemented just above.
This code where compiling last week.

Philippe Delrieu

_______________________________________________
Rust-dev mailing list
Rust-dev@mozilla.org
https://mail.mozilla.org/listinfo/rust-dev



_______________________________________________
Rust-dev mailing list
Rust-dev@mozilla.org
https://mail.mozilla.org/listinfo/rust-dev

Reply via email to