のくす牧場
コンテンツ
牧場内検索
カウンタ
総計:127,683,001人
昨日:no data人
今日:
最近の注目
人気の最安値情報

元スレGCCについて part9

gcc覧 / PC版 /
スレッド評価: スレッド評価について
みんなの評価 :
タグ : - std:map + 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter
401 = :

>>392
http://gcc.gnu.org/onlinedocs/gccint/Back-End.html#Back-End

402 = :

gdbの質問もここでおk?

403 = :

グデブ

404 = :

適切なスレが思いつかないんで、
とりあえず聞くだけ聞いて、それから誘導されるがよい

409 = :

>>408
Windowsなら、"\n"と"\r\n"は、同じ"\r\n"を出力します。

410 = :

>>409それだとちょっと語弊があるような最終的にはそうなるけどさ
Windowsの場合"\n"だけでCRLF(復帰改行)が出力されるから"\r\n"を明示する意味はない

412 = :

標準出力をバイナリーモードにすればいいとかじゃないの?

414 = :

窓でパイプ処理やろうとすると必ず通る壁だな

416 = :

May 22, 2010
The GNU project and the GCC developers are pleased to announce the release of GCC 4.3.5.
This release is a bug-fix release, containing fixes for regressions in GCC 4.3.4 relative to previous releases of GCC.
http://gcc.gnu.org/gcc-4.3/

418 = :

GUIなんて要らないとおもってるから。

419 = :

GNU統合開発環境ってemacsじゃないの?

420 = :

>>419勘違いも甚だしいぞ、失礼なやつだ。

421 = :

教祖に聞け

422 = :

デバッガだけはGUIあった方が断然いい。
異論はまったく認めない。

423 = :

>>530
心配性だな、とっても大人数でいじらなければいけない案件なのか?

424 = :

ロングパスだな

425 = :

>>422
かなり同意。 OllyDBG になれたら GDB なんて使う気にならん。
symdeb に疑問を感じなかった昔の自分が信じられん。

426 = :

おまえらデバッガだの統合開発環境だの言うけど、何がそんなに便利なのか俺に見せてみろよ。

そう後輩に言った10分後、おれは「すまんかった、ちょっとこれマジで教えてくれ…。」と言っていた。

427 = :

>>418
そんなこと思っていたらGDB/MIなんてないだろ。

429 = :

4.5はやくしてくれねーかなー
ラムダ式つかいたいから開発保留してるんだけど。

430 = :

>>429 保留してる間に gcc のリリースに貢献すればよいではないか。

431 = :

GCC が C++ を採用するとはビックリした。これも LLVM の影響なのかな(LLVM は C++)?

http://news.ycombinator.com/item?id=1392601

432 = :

なんだ?って思っちゃったがGCC自体のコードをC++で書き直そうって話ね。

433 = :

>>431
> The goal is a better compiler for users, not a C++ code base for its own sake.
とか言ってるわりに、とりあえずどの機能が欲しくて使うことにしたのか、よくわからんな。

434 = :

むこうにも中二病開発者がいるんだろ

435 = :

C言語でもオブジェクト指向なプログラミングはできるし、
継承や多態性も実現できるが・・・。

まあコード量がおおくなって手続きがうざくなるからな。

437 = :

まじめな話、gcc が c で書かれているから、いろんなプラットホームに移植されたわけで‥‥‥。

438 = :

bootstrapのプロセスはどうなるんだろう? 

439 = :

>>438
クロスが基本となるだろう。

440 = :

>>437
昔はクロス環境作るの大変だったけど、今は普通だし、
開発環境そこらじゅうにあるし、問題にならないんじゃね

442 = :

gcc動くけどg++ダメなんて環境はそんなになさそうだしなあ。

ついでにどうでもいいことだがRMSがこの決定に同意しているのか気にならんでもない。

443 = :

おっ、初めての経験。 ちょっと複雑なデーター構造の初期化を実験してたらg++を無限
ループに入れる事に成功したw 以下のコードをg++でコンパイルしてみてくれ。
g++ 4.0.1, g++ 4.1.2で再現された。 gccではすぐに止る。

struct {
 int value;
 union {
  int value2;
  struct {
  int value3;
  int value4;
 } s;
 } u;
} local = { value : 0,
u : s: { value3 : 3, value4: 4 }};

こういう無限エラーループに入る.
init.c:11: error: ‘<anonymous struct>::<anonymous union>’ has no non-static data member named ‘u’
init.c:11: error: ‘<anonymous struct>::<anonymous union>’ has no non-static data member named ‘u’
init.c:11: error: ‘<anonymous struct>::<anonymous union>’ has no non-static data member named ‘u’
init.c:11: error: ‘<anonymous struct>::<anonymous union>’ has no non-static data member named ‘u’
init.c:11: error: ‘<anonymous struct>::<anonymous union>’ has no non-static data member named ‘u’
init.c:11: error: ‘<anonymous struct>::<anonymous union>’ has no non-static data member named ‘u’
init.c:11: error: ‘<anonymous struct>::<anonymous union>’ has no non-static data member named ‘u’

445 = :

書けるけど読みたくは無い構造してんなぁ

446 = :

>>443
∞ループに入る最小の構造を作るためにもうちょっと単純化してみたら面白いかもよ。

448 = :

これって知ってた?
http://sourceware.org/gdb/wiki/STLSupport

試したらこんな事が出来て涙が出た。
(gdb) list
7 map<char*, int> test;
8
9 test["hoge"] = 111;
10 test["mage"] = 222;
11 test["moge"] = 333;
12 }
(gdb) p test
$1 = std::map with 3 elements = {
 [0x8049760 "hoge"] = 111,
 [0x8049765 "mage"] = 222,
 [0x804976a "moge"] = 333
}

449 = :

これを/rオプション(raw)で見るといつもの様に

$2 = {_M_t = {
_M_impl = {<std::allocator<std::_Rb_tree_node<std::pair<char* const, int> > >> = {<__gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<ch¥
ar* const, int> > >> = {<No data fields>}, <No data fields>},
_M_key_compare = {<std::binary_function<char*, char*, bool>> = {<No data fields>}, <No data fields>}, _M_header = {
_M_color = std::_S_red, _M_parent = 0x804b028, _M_left = 0x804b008, _M_right = 0x804b048}, _M_node_count = 3}}}


450 = :

FreeBSDの人いる?
gcc 4.5.0で-O2で最適化したら例外をキャッチできないケース見つけた。-O1だとOK。
再現できるか試して欲しい。

再現パターンはこんな感じ。
分岐の中にthrowがあって、最適化の結果throwにあたるコードが関数のエピローグコードの
後ろに移動してしまった場合にたまに発生。

bool flag = true;
void f()
{ if(flag) throw 1; }
int main()
{
try{ f(); }catch(...){ cout << "ok" << endl; }
}


←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / gcc一覧へ
スレッド評価: スレッド評価について
みんなの評価 :
タグ : - std:map + 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

類似してるかもしれないスレッド


トップメニューへ / →のくす牧場書庫について