integral as it is not transferring ownership..
// rdar://
9619861
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@133622
91177308-0d34-0410-b5e6-
96231b3b80d8
ARCConversionTypeClass exprACTC = classifyTypeForARCConversion(castExprType);
ARCConversionTypeClass castACTC = classifyTypeForARCConversion(castType);
if (exprACTC == castACTC) return;
- if (exprACTC && castType->isBooleanType()) return;
+ if (exprACTC && castType->isIntegralType(Context)) return;
// Allow casts between pointers to lifetime types (e.g., __strong id*)
// and pointers to void (e.g., cv void *). Casting from void* to lifetime*
: (*x).ivar; // expected-error {{dereferencing a __weak pointer is not allowed}}
}
+// rdar://9619861
+extern int printf(const char*, ...);
+typedef long intptr_t;
+
+int Test33(id someid) {
+ printf( "Hello%ld", (intptr_t)someid);
+ return (int)someid;
+}
+