2006-01-01から1年間の記事一覧
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30328 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30332 ビットフィールドを使うと地雷踏みまくり。 最近、ビットフィールド関連のバグを合わせて五つほど報告。 ビットフィールドはバグを避けて使うのは難…
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30313 static inline void bar(){} struct S { signed int i: 32; }; int main() { struct S x = {32}; sizeof(x.i+0); return 0; } このバグは今のところ、最適化しないときのみ発生している。 最適化のバグは…
多分大丈夫だと思ったけど通常使わないビットフィールドの使い方をしてみた。 予想に反し、GCCはバグっていた。http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30274 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30277回避策 なし。こんな間抜けな使い方す…
http://d.hatena.ne.jp/sulpsulpc/20061125では宣言する方法のみだったので、今回は定義する方法。 #include template struct P { typedef R func(A*); }; P>::func foo; template struct I { friend R foo(A* x) { X y= *x; std::cout ; template struct I,…
近所の郵便局にあるATMが、故障しているっぽい。入金ができないのです。 もう一台あったからいいけど。
http://java.sun.com/javase/ja/6/いろいろ出ていたので、インストール
http://www.silverfrost.com/11/ftn95/ftn95_fortran_95_for_windows.asp
http://www.openwatcom.org/
http://www.microsoft.com/japan/msdn/vstudio/downloads/sp/vs2005/sp1/ とりあえずいれておく。
ここを見て、日記を書いていられる方を見かけたのでちょっとだけ解説。 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19809で示されているサンプル #include template struct n{ friend void foo(){ std::cerr n1; n n2; n n3; foo(); } Reporterの方は、規…
JIS X 3016 5.18 『CTSの整数部分』って何だよ。『CTSの重要な部分』だろ! JIS規格の和訳はいまいち信用できね〜〜 原規格を読むのは、辛いのよ。和訳のチェックしてよ >日本規格協会
クラステンプレート内で、using宣言がうまく機能していない。http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30195回避策 using宣言を使わずに、明示的に限定するべし。 滅多に遭遇するバグじゃないし、問題になることはまず無いかな。
http://d.hatena.ne.jp/RiSK/20061120より CLI JIS化されたのね。JISCで閲覧できるみたい。 日本語で読めるのはありがたい。
http://gcc.gnu.org/bugzilla//show_bug.cgi?id=30144 重複だった。orz
void への変換演算子を定義するのはvalidなのね。始めて知ったぞ。 何に使うんだよ。こんなの。
C++0x 2006.10版ドラフトに右辺値参照が入っていることを発見。 GCCに実装されるのは早くてもversion 4.3以降みたい。
題のような関数の宣言は、標準C++では禁止されているが、 現ヴァージョンのGCCでは、以下のような抜け道がある。 template struct bar { static void baz(X* x); }; extern "C" __typeof__(bar>::baz) foo; // 関数 void foo(int(*))の宣言 ただし、これがGC…
いや、これを発見したのは今日じゃないんだが、 http://gcc.gnu.org/bugzilla//show_bug.cgi?id=29928 http://gcc.gnu.org/bugzilla//show_bug.cgi?id=29927GCCにバグレポートを提出したまではいいんだが、 後者のコードはどう解釈すればいいんだか、よくわ…
BCCのライブラリのバグ発見。 errnoがマクロではなく、namespace std内の、外部識別子として宣言されていやがる。 やはり、BCCは捨てた方がいいな。
インストール gcc 3.3じゃないとコンパイルできない。 左辺値へのキャストを使っているみたい。
バイナリをhttp://haskell.org/ghc/からDLして、インストール。 何をするつもりなんだろ?俺。
今回の configure option ./configure --enable-static --disable-shared --enable-extra-encodings
ICUが9/1にversion upされていたのでインストール 今回のcunfigure option ./configure --enable-shared --enable-staticGCC 4.1.1でコンパイルできねえー (T_T) GCC 3.4.6を使ってコンパイル成功。いつの間にかUNICODEがversion5になっているのね。
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19809このバグはVCの以下のバグについて調査しているときに遭遇 template class foo { template friend void prod(const foo&); }; template void prod(const foo&s) { } int main() { foo x; prod(x); return …
先頭に以下を追加 #define main(ARGC,ARGV) (main_)(ARGC, ARGV) int main(int argc, char *argv); int (main)(int argc, char *argv) { return main(argc, argv); }
main関数をクラステンプレートのフレンドにできね〜。http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24449
右辺値参照、static_assert、Right Angle Brackets、Delegating Constructors、 concept、可変個テンプレート引数を試せるGCCを作成。patchはこのあたり http://mndfck.org/~pedro.lamarao/projects/c++0x/ http://www.generic-programming.org/software/Con…
以下のように書くとコンパイルエラー template typeof(*(T*)0+*(U*)0) add(const T& x, const U& y) { return x+y; } http://gcc.gnu.org/bugzilla/show_bug.cgi?id=11078回避策 template struct C { typedef typeof(*(T*)0+*(U*)0) type; };template typena…
とりあえず、インストール 情報が少なくて、よく判らん。 確か、C magazineに紹介記事が載っていたな。どの号だったかな。 http://cyclone.thelanguage.org/
http://d.hatena.ne.jp/sulpsulpc/20060914に書いたとおり、C99標準プラグマ、OpenMP用及びC++/CLI用の強調定義を追加。 C99,C++,Objective C,C++/CLI OpenMP(C/C++)に対応した強調定義ファイルがとりあえず完成。 これで、Objective C++/CLIなんていうふざ…