2016-03-29 10 views
2

更新:これは貨物バグのようです。詳細については、アンサーのリンクを参照してください。`cargo run`とRust 1.9 nightlyで実行すると、stdinからの読み込みでデータが読み込まれない

パッケージを使用するために1.6から1.9にアップグレードしました。しかし、端末は標準入力からの読み込みを待つことがなくなりました。この問題は、cargo run(貨物0.10.0-夜間(25e1301 2016-03-25))のみであるようです。バイナリファイルを直接実行するとすべて正常に動作します。

私はdocumentation for Stdinに与えられた1とほぼ同じ例を使用しています:cargo runプリント0 bytes readでこの例を実行する

use std::io; 

let mut input = String::new(); 
match io::stdin().read_line(&mut input) { 
    Ok(n) => { 
     println!("{} bytes read", n); 
     println!("{}", input); 
    } 
    Err(error) => println!("error: {}", error), 
} 

私のコンピュータには1.6と1.9の両方のコンパイラがあり、コードは1.6でうまく動作します。私はWindowsとLinuxの両方で1.9を使って同じ結果を試してみました。

なぜこのようなことが起きていますか?そして、Rust 1.9で標準をどのように扱うべきですか?

+0

一週間前から夜間に再現することはできません。確認するために更新してください... –

+0

夜間には、 'rustc'や' rustc -O'を使って夜間に再現することはできません。 –

+0

@ChrisMorgan 'carc run 'を使うときはうまくいきますが、' rustc'を使うとうまくいきます。 – Liam

答えて

関連する問題