【问题标题】:Insert int variable into the class using LLVM PASS or Clang使用 LLVM PASS 或 Clang 将 int 变量插入到类中
【发布时间】:2016-04-06 00:10:46
【问题描述】:

我想使用 LLVM PASS 或 Clang 将整数变量插入到所有类中。

如何做到这一点?

例如..

class foo {
     int a;
}

我想插入如下新值。

class foo {
     int a;
     unsigned int b; // I want to insert this.
}

如何使用 LLVM PASS 或 Clang 做到这一点? - 我更喜欢 LLVM PASS。

非常感谢:)

【问题讨论】:

    标签: variables clang llvm llvm-clang llvm-ir


    【解决方案1】:

    我的建议是为此使用 Clang,因为 LLVM 对位码 (IR) 进行操作,而您想要的操作与 C++ 非常相关,那么为什么不利用 Clang 关于 AST 的知识呢?

    使用LibTooling,您可以编写独立工具来完全按照您的意愿行事。更具体地说,使用 AST Matcher 查找所有 C++ 类声明 (cxxRecordDecl)。然后,您可以在回调中插入一个新的 FieldDecl

    更多信息:LibTooling and LibASTMatchers Tutorial

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-05-31
      • 1970-01-01
      • 1970-01-01
      • 2014-10-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多