我可以将parseBitcodeFile返回值转换为Module *吗?

时间:2015-05-14 07:01:15

标签: llvm

其返回类型为ErrorOr<Module*>。我正在查看一些旧代码并直接将其返回值分配给Module*,但我的编译器抱怨从ErrorOr<Module*>Module*

不存在转换

1 个答案:

答案 0 :(得分:1)

只需调用<table> <thead> <tr> <th>Generate link</th> ... </tr> </thead> <tbody id="results"></tbody> </table> 的{​​{1}}方法:

get

请注意,由于ErrorOr为您提供了新的ErrorOr<Module *> ModuleOrErr = parseBitcodeFile(Buffer, Context); std::unique_ptr<Module> M(ModuleOrErr.get()); ,因此使用parseBitcodeFile来假定对其拥有权非常重要。

有关如何在“现实生活中”完成此操作的示例,请参阅Module函数(在std::unique_ptr中):

llvm::parseIR