sfantao added a comment.
Thanks for the review!
Please see the inline comment below.
Thanks again,
Samuel
================
Comment at: lib/Sema/Sema.cpp:366
@@ -365,3 +365,3 @@
if (*exprNullability == NullabilityKind::Nullable) {
if (auto typeNullability = Ty->getNullability(Context)) {
if (*typeNullability == NullabilityKind::NonNull) {
----------------
Done!
================
Comment at: lib/Sema/SemaCast.cpp:2106-2113
@@ -2105,3 +2105,10 @@
return;
}
+ // If we are casting pointers, we need to check whether this refers to an
+ // address cast.
+ if (DestType->isPointerType() && SrcExpr.get()->getType()->isPointerType() &&
+ DestType->getPointeeType().getAddressSpace() !=
+ SrcExpr.get()->getType().getAddressSpace()) {
+ Kind = CK_AddressSpaceConversion;
+ return;
----------------
I agree, the pointee type should also be checked.
However, if I move the check to `TryReinterpretCast` a static cast will be
attempted first and will hit the assertion I've just added to Sema.cpp. Do you
suggest to add something to `TryStaticCast` as well? Or should I just add the
pointee check?
http://reviews.llvm.org/D7606
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits