本文整理汇总了C++中Analyser::lookup_type方法的典型用法代码示例。如果您正苦于以下问题:C++ Analyser::lookup_type方法的具体用法?C++ Analyser::lookup_type怎么用?C++ Analyser::lookup_type使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Analyser
的用法示例。
在下文中一共展示了Analyser::lookup_type方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: check
static void check(Analyser& analyser, CXXThrowExpr const* expr)
{
const TypeDecl *e = analyser.lookup_type("::std::exception");
Expr *object(const_cast<Expr*>(expr->getSubExpr()));
if (e && e->getTypeForDecl() && object) // else it is a rethrow...
{
QualType t = e->getTypeForDecl()->getCanonicalTypeInternal();
QualType ot = object->getType()->getCanonicalTypeInternal();
if (ot != t && !analyser.sema().IsDerivedFrom(ot, t)) {
analyser.report(expr, check_name, "FE01",
"Object of type %0 not derived from "
"std::exception is thrown.")
<< ot;
}
}
}