libctf: introduce ctf_func_type_{info,args}, ctf_type_aname_raw
authorNick Alcock <nick.alcock@oracle.com>
Thu, 18 Jul 2019 17:44:21 +0000 (18:44 +0100)
committerNick Alcock <nick.alcock@oracle.com>
Thu, 18 Jul 2019 19:53:57 +0000 (20:53 +0100)
commit12a0b67d289e2c3ed266d93e8a8c80087f7d18f8
treeb1319f5db30360a534b3ef60c07cf2b8f2be49ec
parentafe09f0b6311a4dd1a7e2dc6491550bb228734f8
libctf: introduce ctf_func_type_{info,args}, ctf_type_aname_raw

The first two of these allow you to get function type info and args out
of the types section give a type ID: astonishingly, this was missing
from libctf before now: so even though types of kind CTF_K_FUNCTION were
supported, you couldn't find out anything about them.  (The existing
ctf_func_info and ctf_func_args only allow you to get info about
functions in the function section, i.e. given symbol table indexes, not
type IDs.)

The second of these allows you to get the raw undecorated name out of
the CTF section (strdupped for safety) without traversing subtypes to
build a full C identifier out of it.  It's useful for things that are
already tracking the type kind etc and just need an unadorned name.

include/
* ctf-api.h (ECTF_NOTFUNC): Fix description.
(ctf_func_type_info): New.
(ctf_func_type_args): Likewise.
libctf/
* ctf-types.c (ctf_type_aname_raw): New.
(ctf_func_type_info): Likewise.
(ctf_func_type_args): Likewise.
* ctf-error.c (_ctf_errlist): Fix description.
include/ChangeLog
include/ctf-api.h
libctf/ChangeLog
libctf/ctf-error.c
libctf/ctf-lookup.c
libctf/ctf-types.c
This page took 0.024736 seconds and 4 git commands to generate.