问题描述
我正在尝试编写一个外部 Clang AST 修饰符,将匿名结构和联合定义转换为不同的形式。例如,我有:
typedef struct test_case_t {
struct {
int value;
} first[1];
int second;
int third[1];
} test_case_t;
我想将其转换为:
struct test_case_t {
struct first{
int value;
};
struct first first[1];
int second;
int third[1];
};
typedef struct test_case_t test_case_t;
但是,转换似乎删除了 struct first
声明,所以这就是我得到的:
struct test_case_t {
struct{ // this should be "struct first"
int value;
};
struct first first[1];
int second;
int third[1];
};
typedef struct test_case_t test_case_t;
如何修改结构体定义并添加 first
声明名称?我有第一个变量定义的 RecordDecl
,但我似乎无法弄清楚如何转换结构定义。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)