reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

tools/clang/lib/AST/ExprConstant.cpp
 8468     Info.CCEDiag(E, diag::note_constexpr_new);
 8474   FunctionDecl *OperatorNew = E->getOperatorNew();
 8479       Info.CurrentCall->isStdFunction() && !E->isArray()) {
 8481     assert(E->getNumPlacementArgs() == 1);
 8482     if (!EvaluatePointer(E->getPlacementArg(0), Result, Info))
 8488     Info.FFDiag(E, diag::note_constexpr_new_non_replaceable)
 8491   } else if (E->getNumPlacementArgs()) {
 8502     if (E->getNumPlacementArgs() != 1 ||
 8503         !E->getPlacementArg(0)->getType()->isNothrowT())
 8504       return Error(E, diag::note_constexpr_new_placement);
 8507     if (!EvaluateLValue(E->getPlacementArg(0), Nothrow, Info))
 8512   const Expr *Init = E->getInitializer();
 8515   QualType AllocType = E->getAllocatedType();
 8516   if (Optional<const Expr*> ArraySize = E->getArraySize()) {
 8534         return ZeroInitialization(E);
 8547         return ZeroInitialization(E);
 8567           return ZeroInitialization(E);
 8620     } Handler = {Info, E, AllocType, AK, nullptr};
 8622     CompleteObject Obj = findCompleteObject(Info, E, AK, Result, AllocType);
 8623     if (!Obj || !findSubobject(Info, E, Obj, Result.Designator, Handler))
 8635     Val = Info.createHeapAlloc(E, AllocType, Result);
 8654     Result.addArray(Info, E, cast<ConstantArrayType>(AT));