[Subject Prev][Subject Next][Thread Prev][Thread Next][Subject Index][Thread Index]
[OSASK 526] Re: ASKA Ver.1.0β15
こんにちは、川合です。
GAPIを書いているうちに、ちょっとした問題を見つけたので、報告し
ておきます。
・(char)キャストがエラーになる
segment CODE(USE32);
default(code == CODE);
void near test()
{
struct STRUCT {
int INT;
};
int i == ECX;
STRUCT *p == DS:ESI;
AL = (char) i; // AL = CL; になってほしい
DL = (char) p->INT; // MOV DL,BYTE PTR DS:[ESI]になってほしい
// どちらも、(char)キャストを付けなければうまくいく。
TEST((char) i, 0x80);
// この場合、(char)のあるなしで、コンパイル結果が変わる
}
このプログラムは、コンパイルするとエラーが出ます。ちゃんとキャ
ストが効いて、エラーが出なくなるとうれしいです。上の2つの例では
、単に(char)キャストを書かなければいいだけなんだけど、下のTESTで
は書くと書かないとではコンパイル結果が違うので、サポートしてほし
いです。
それでは。
--
川合 秀実(KAWAI Hidemi)
川合堂社長 / OSASK計画総指揮 / カーネル開発班
E-mail:kawai !Atmark! imasy.or.jp
Homepage http://www.imasy.or.jp/~kawai/