I have functions
foo_0(...,_ v0,...)
foo_1(...,_ v1,...)
...
And, for each (foo_x, _ v_x)
pair, I would like to change the type of v_x
in the declaration to ANIMAL *
, where ANIMAL
is a local type.
I recycled some code from this question, as follow:
from idaapi import *
tif = tinfo_t()
get_tinfo2(ea, tif)
funcdata = func_type_data_t()
tif.get_func_details(funcdata)
After this I was stuck, as funcdata[i].type
is a tinfo_t
object which I could not find a way to create/modify easily.
My last resort would be to use GuessType
/GetType
and modify the string before SetType
, but this might be a tad complicated since some arguments are pointers to functions themselves.
Any suggestions would be most welcome!