Lines Matching full:subobject
112 /// Find the path length and type of the most-derived subobject in the given
150 /// A path from a glvalue to a subobject of that glvalue.
152 /// True if the subobject was named in a manner not supported by C++11. Such
161 /// subobject.
173 /// The entries on the path from the glvalue to the designated subobject.
212 /// Check that this refers to a valid subobject.
218 /// Check that this refers to a valid subobject, and if not, produce a
261 /// Add N to the address of this subobject.
840 // Outside C++11, do not build a designator referring to a subobject of
1210 // each subobject of its value shall have been initialized by a constant
1606 /// Cast an lvalue referring to a base subobject to a derived class, by
1621 // Truncate the path to the subobject, and remove any derived-to-base offsets.
1941 /// A handle to a complete object (an object that is not a subobject of
1979 // Walk the designator's path to find the subobject.
2002 // Next subobject is an array element.
2022 assert(I == N - 1 && "extracting subobject of character?");
2039 // Next subobject is a complex number.
2055 assert(I == N - 1 && "extracting subobject of scalar?");
2072 // Next subobject is a class, struct or union field.
2093 // FIXME: Include a description of the path to the volatile subobject.
2105 // Next subobject is a base class.
2218 /// Find the position where two subobject designators diverge, or equivalently
2228 // Next subobject is an array element.
2243 // Next subobject is a field.
2246 // Next subobject is a base class.
2254 /// Determine whether the given subobject designators refer to elements of the
2264 // A is a subobject of the array element.
2822 /// the resulting LValue subobject designator. This is not possible when
2938 // Check this cast lands within the final derived-to-base subobject path.
3557 LValue Subobject = This;
3560 // Determine the subobject to initialize.
3572 if (!HandleLValueDirectBase(Info, (*I)->getInit(), Subobject, RD,
3577 if (!HandleLValueMember(Info, (*I)->getInit(), Subobject, FD, &Layout))
3595 // subobject other than the first.
3606 if (!HandleLValueMember(Info, (*I)->getInit(), Subobject, FD))
3618 if (!EvaluateInPlace(*Value, Info, Subobject, (*I)->getInit()) ||
4310 // Adjust our lvalue to refer to the desired subobject.
4792 /// each non-static data member and each base-class subobject is
4810 LValue Subobject = This;
4811 if (!HandleLValueDirectBase(Info, E, Subobject, CD, Base, &Layout))
4813 if (!HandleClassZeroInitialization(Info, E, Base, Subobject,
4825 LValue Subobject = This;
4826 if (!HandleLValueMember(Info, E, Subobject, *I, &Layout))
4831 Result.getStructField(I->getFieldIndex()), Info, Subobject, &VIE))
4850 LValue Subobject = This;
4851 if (!HandleLValueMember(Info, E, Subobject, *I))
4855 return EvaluateInPlace(Result.getUnionValue(), Info, Subobject, &VIE);
4917 LValue Subobject = This;
4918 if (!HandleLValueMember(Info, InitExpr, Subobject, Field, &Layout))
4925 return EvaluateInPlace(Result.getUnionValue(), Info, Subobject, InitExpr);
4941 LValue Subobject = This;
4948 Subobject, *Field, &Layout))
4961 if (!EvaluateInPlace(FieldVal, Info, Subobject, Init) ||
5079 // lvalues. The full-object of which the temporary is a subobject is implicitly
5336 LValue Subobject = This;
5337 Subobject.addArray(Info, E, CAT);
5339 return EvaluateInPlace(Result.getArrayFiller(), Info, Subobject, &VIE);
5345 const LValue &Subobject,
5400 LValue Subobject = This;
5401 Subobject.addArray(Info, E, CAT);
5406 Info, Subobject, Init) ||
5407 !HandleLValueArrayAdjustment(Info, Init, Subobject,
5421 return EvaluateInPlace(Result.getArrayFiller(), Info, Subobject,
5430 const LValue &Subobject,
5450 LValue ArrayElt = Subobject;
5474 return EvaluateInPlace(*Value, Info, Subobject, &VIE);
5495 if (!EvaluateInPlace(*Value, Info, Subobject, &VIE))
5500 return HandleConstructorCall(E->getExprLoc(), Subobject, Args,
6705 // same member of the same most derived object or the same subobject if