fixed `let mut x : T = z` syntax. support `asm!(..)` macro for rust backend.