Pergunta

Existe uma maneira para imprimir um atributo do tipo de dentro GDB?
Por exemplo. Integer'Size.

Foi útil?

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
scroll top