|
clang 24.0.0git
|
#include "Pointer.h"#include "Boolean.h"#include "Char.h"#include "Context.h"#include "Floating.h"#include "Function.h"#include "InitMap.h"#include "Integral.h"#include "InterpBlock.h"#include "MemberPointer.h"#include "PrimType.h"#include "Record.h"#include "clang/AST/Expr.h"#include "clang/AST/ExprCXX.h"#include "clang/AST/RecordLayout.h"Go to the source code of this file.
Functions | |
| static bool | validType (QualType T) |
| static bool | toRValue (const Context &Ctx, QualType Ty, PtrView Ptr, APValue &R) |
| Convert a pointer to a composite value to an rvalue. | |
Convert a pointer to a composite value to an rvalue.
Definition at line 1120 of file Pointer.cpp.
References clang::APValue, clang::interp::Descriptor::asFieldDecl(), clang::interp::Context::canClassify(), clang::interp::Context::classify(), clang::interp::PtrView::deref(), clang::interp::Record::fields(), clang::interp::Floating::getAPFloat(), clang::Type::getAs(), clang::Type::getAsArrayTypeUnsafe(), clang::Type::getAsCanonical(), clang::interp::Context::getASTContext(), clang::interp::Record::getBase(), clang::ASTContext::getCanonicalTagType(), clang::interp::Record::getField(), clang::interp::PtrView::getFieldDesc(), clang::interp::Record::getNumBases(), clang::interp::Record::getNumFields(), clang::interp::Record::getNumVirtualBases(), clang::interp::Descriptor::getPrimType(), clang::interp::Descriptor::getType(), clang::interp::Record::getVirtualBase(), INT_TYPE_SWITCH, clang::interp::PtrView::isActive(), clang::Type::isAnyComplexType(), clang::interp::Descriptor::isArray(), clang::Type::isIncompleteArrayType(), clang::interp::isIntegerOrBoolType(), clang::interp::Descriptor::isPrimitive(), clang::interp::Descriptor::isPrimitiveArray(), clang::interp::Descriptor::isRecord(), Ok, clang::interp::PT_Float, clang::T, toRValue(), and TYPE_SWITCH.
Referenced by toRValue().
Definition at line 30 of file Pointer.cpp.
References ASTContext::hasLayout(), and clang::T.