我想在 CIL 中添加一条带有注释的指令。在此评论中,我想显示该指令中的所有变量。我写了一个 OCaml 模块来使用 CIL 驱动程序。代码看起来像
class addCommentVisitor = object
inherit nopCilVisitor
method vinst (i: instr) : instr list visitAction =
match i with
| Set(lval, exp, lc) ->
(* do the job *)
...
在匹配中,如何迭代 ? 中的所有变量instr i
?例如,通过指令x[i] = y[j] * (z[k] + l);
,我想获取变量的名称x, i, y, j, z, k, l
。
谢谢你的帮助。