On Fri, Jun 24, 2016 at 8:39 AM, Richard Smith <[email protected]> wrote:
> rsmith added a comment.
>
> Ah right, we were (intentionally, but unfortunately) making an assumption
> that the `TypeLoc` data layout doesn't change when the exception spec of a
> function is updated. You'd need to make yourself a `TypeLocBuilder`, copy the
> relevant data, and update the exception spec loc.
Would that look something like what we do in SemaType.cpp
GetFullTypeForDeclarator()? i.e.,
if (TInfo) {
TypeLocBuilder TLB;
TLB.pushFullCopy(TInfo->getTypeLoc());
ObjCObjectPointerTypeLoc TLoc = TLB.push<ObjCObjectPointerTypeLoc>(T);
TLoc.setStarLoc(FixitLoc);
TInfo = TLB.getTypeSourceInfo(Context, T);
}
~Aaron
>
> Where are we adjusting the exception specification on the type source info?
> That (changing the type-info-as-written) seems like a somewhat unusual thing
> to do implicitly.
>
>
> http://reviews.llvm.org/D20428
>
>
>
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits