(toppers-users 586) systask/serial.c で MAX_FLUSH_LOOP と比較している変数のデータ型について
Naoki Saito
saito @ nmiri.city.nagoya.jp
2002年 10月 29日 (火) 09:30:19 JST
斉藤@名古屋市工研です.
systask/serial.c にある serial_close 関数で
int型の変数 i と MAX_FLUSH_LOOP との比較をしている箇所があるのですが,
/*
* バッファのフラッシュ処理
*/
if (flush) {
for (i = 0; i < MAX_FLUSH_LOOP; i++) {
if (spcb->out_write_ptr == spcb->out_read_ptr) {
break;
}
}
}
MAX_FLUSH_LOOP は 1000000 に #define されているのですが,
_16BIT_INT_ を #define しているターゲットにおいては常にこの比較が真になります.
そこで変数i を W か UW のようにしたらこのような問題は解決するように
思うのですが, いかがでしょうか.
これに便乗して一つ質問させていただきたいのですが,
(FAQでしたら恐縮ですが)通常のCデータ型とITRON仕様共通データ型は
皆様どのように使い分けていらっしゃるのでしょう?