Como posso imprimir atributos de tipo em GDB?
Pergunta
Existe uma maneira para imprimir um atributo do tipo de dentro GDB?
Por exemplo. Integer'Size.
Solução
Sim:
(GDB) p thing'attribute
Alguns atributos são reconhecidos, e outros não. (Em que está listado abaixo, encontramos é uma variável booleana.)
gdb) p integer'size
Attempt to use a type name as an expression
(gdb) p found'size
$2 = 8
(gdb) p integer'first
$3 = -2147483648
(gdb) p integer'last
$4 = 2147483647
Aqui está a lista a partir do Ada seção de Depuração com gdb:
Only a subset of the attributes are supported:
* 'First, 'Last, and 'Length on array objects (not on types and subtypes).
* 'Min and 'Max.
* 'Pos and 'Val.
* 'Tag.
* 'Range on array objects (not subtypes), but only as the right operand of the membership (in) operator.
* 'Access, 'Unchecked_Access, and 'Unrestricted_Access (a GNAT extension).
* 'Address.
(Hmm, essa lista pode ser datado, desde que eu poderia fazer Integer'Last, apesar da primeira bala dizendo que não é válida em tipos.)
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow