A.2. GDB の変更点
Red Hat Developer Toolset 9.0 には GDB 8.3 が同梱されています。
以下の機能は、Red Hat Developer Toolset の以前のリリース以降に追加または変更されています。
一般的な改善
-
GDB および GDBserver は、IBM POWER システム(
PPR、DSCR、TAR、EBB/PMU、およびHTMレジスター)へのアクセスを許可します。 -
GDB および GDBserver が IPv6 接続に対応するようになりました。
[ADDRESS]:PORT表記または通常のADDRESS:PORTメソッドを使用して、IPv6 アドレスを渡します。 - バッチモードの GDB は、最後に実行されたコマンドが失敗すると、ステータス 1 で終了するようになりました。
- 端末のスタイリングが CLI および TUI で利用可能になりました。styling コマンドのリストは、GDB ユーザーマニュアルの Output Styling セクション を参照してください。GNU Source Highlight プログラムは、ソースコードのスタイリングにも使用することができます。
新しいコマンド
frame apply [all | COUNT | -COUNT | level LEVEL…] [FLAG]… COMMAND- 一部のフレームにのみ適用されます。
-
FLAG引数を使用して必要な出力を選択し、フレームへのCOMMANDの適用時に発生する可能性のあるエラーを処理するメソッドを設定します。
taas COMMAND構文は、スレッドの短いバージョンで、すべての -s COMMAND を適用します。- エラーのあるスレッドおよび空の出力を含むすべてのスレッドに適用されます。
faas COMMAND構文は、frame の短いバージョンで、すべての -s COMMAND を適用します。- エラーのあるフレームと空の出力を含むすべてのフレームに適用されます。
tfaas COMMAND構文は、スレッドの短いバージョンで、すべての -s フレームが適用される -s COMMAND すべてを適用します。- エラーのあるフレームやスレッド、および空の出力を含む、すべてのスレッドのすべてのフレームに適用されます。
変更したコマンド
フレーム、select-frameコマンド、およびinfo フレームCLI コマンドへの変更:- これらのコマンドは、フレーム指定を受け入れるようになりました。フレームレベル、またはキーワードレベル、アドレス、関数、または ビュー の後にパラメーターを指定できます。
- アドレスでフレームを選択する場合や、現在のバックトレース外にあるフレームを表示するにはキーワードが必要です。
- レベルによるフレームの選択は変更されません。
-
MI comment
-stack-select-frameは変更されません。
ターゲットリモート FILENAMEとターゲット拡張リモート FILENAME-
FILENAMEが Unix ドメインソケットの場合は、GDB はこのソケットへの接続を試み、FILENAMEを文字デバイスとして開きません。
-
info args [-q] [-t TYPEREGEXP] [NAMEREGEXP]info functions [-q] [-t TYPEREGEXP] [NAMEREGEXP]info locals [-q] [-t TYPEREGEXP] [NAMEREGEXP]info variables [-q] [-t TYPEREGEXP] [NAMEREGEXP]上記の 4 つのコマンドに、新しい
[-t TYPEREGEXP]フラグが追加されました。TYPEREGEXPに一致するタイプに、一致するエンティティーを返します。[-q]フラグは、ヘッダーまたは情報メッセージの出力を無効にします。情報関数情報タイプinfo 変数rbreak上記の 4 つのコマンドで、
set languageオプションで選択した言語に基づいてエンティティーの構文を判断するようになりました。set language autoオプションは、表示されたエンティティーの言語を自動的に選択します。thread apply [all | COUNT | -COUNT] [FLAG]… COMMAND-
新しい
[FLAG]引数が追加されます。[FLAG]引数を使用して必要な出力を選択し、フレームにCOMMANDを適用するときに取得できるエラーを処理するメソッドを設定します。
-
新しい
Python API
-
gdb.Inferiorタイプに新しいprogspaceプロパティーが追加されました。これは、下位に関連付けられたプログラム空間です。 -
新しい
objfilesメソッドがgdb.Progspaceタイプに追加されます。これは、そのプログラム空間に関連付けられているobjfilesの一覧を返します。 -
新しいコンストラクターが
gdb.Value型に追加されます。これは、Python バッファーオブジェクトと gdb.Type からを構築するために使用されます。gdb.Value -
GDB コアへの変更を反映するために、以下の新しいドメインが追加されます。
gdb.SYMBOL_LOC_COMMON_BLOCK、gdb.SYMBOL_MODULE_DOMAIN、およびgdb.SYMBOL_COMMON_BLOCK_DOMAIN。