2015-11-07 13 views
5

の値の参照をgdb-7.7.1で正しくデバッグできないことに気付きました。gdbでC++ 11の値の参照をデバッグ

void simple(int &&i) {} 

私はiについての重要な情報を入手することはできません。この最小限の機能を入力してください。 タイプおよびは、からgdbです。

simple(int&&) (i=<unknown type in /tmp/test, CU 0x0, DIE 0xcd78>) at test.cpp:10 
(gdb) p i 
$2 = <unknown type in /tmp/test, CU 0x0, DIE 0xcd78> 

私は何か間違っていますか?賢明な回避策はありますか? gdb-7.10にアップグレードすると問題が解決されますか?生憎、これはGDBバグによって引き起こされる

+1

関連:[ rvalue参照を見ることができるgdbとgccのバージョンは?](http://stackoverflow.com/questions/28965431/which-versions-of-gdb-and-gcc-all ow-watching-rvalue-references) –

+0

@MarkPlotnick、たくさん説明してくれてありがとう –

+1

3歳以上のバグ。ワオ。 –

答えて

2

14441 - コメント状態にマークによってリンクの答えとしてDW_TAG_rvalue_reference_type

をサポートする必要があるが、それはまだ固定されていないgdbバグです、アップグレードは役に立たないでしょう。

リファレンス:https://sourceware.org/bugzilla/show_bug.cgi?id=14441

それは上記の例でiの値に固定されるまでそのように明示的にキャストすることによって得ることができる

(gdb) p *(int*)i 
$3 = 69 
+0

GDB8.0ではこれが修正されました。 – lz96

関連する問題