2008-04-17

ただいま、x264がMSVCでコンパイルできない件について

frame.cで、void *型に対するポインタ演算をしているためだ。報告しに行ったら、どうやら、gccではvoid *型へのポインタ演算は、1バイト単位での演算だとみなされるらしい。あたかもuint8_t *型であるかのように振舞う。なんて腐ったコンパイラだ。しかも言い草がこうだ。

「例えどんな単純な修正であっても、マイクロソフトの信者の要求は受けない」

お前な、Cのどの規格にも違反してるコードだぞ。しかも、そのコードを修正する前は、ちゃんとvoid *型をuint8_t *型にキャストしてから演算を行っていたのだ。何故それを見習わない。

ついでに、Cのキャストは嫌いだといったら、これまたC信者らしい意見で反論された。いわく、ugly。キャストはuglyな処理だからuglyな文法でいいのだ。そのコードを読んだものをして、なにかuglyな処理が行われていると知らしめるのが目的だ。D&Eを読め。D&Eを。

No comments:

Post a Comment

You can use some HTML elements, such as <b>, <i>, <a>, also, some characters need to be entity referenced such as <, > and & Your comment may need to be confirmed by blog author. Your comment will be published under GFDL 1.3 or later license with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.