return tokError("basic block pointers are invalid");
if (Result->isVoidTy())
return tokError("pointers to void are invalid - use i8* instead");
+ if (Result->isOpaquePointerTy())
+ return tokError("ptr* is invalid - use ptr instead");
if (!PointerType::isValidElementType(Result))
return tokError("pointer to this type is invalid");
Result = PointerType::getUnqual(Result);
--- /dev/null
+; RUN: not llvm-as < %s -disable-output 2>&1 | FileCheck %s
+
+; CHECK: ptr* is invalid - use ptr instead
+define void @f(ptr addrspace(3) %a) {
+ %b = bitcast ptr addrspace(3) %a to ptr addrspace(3)*
+ ret void
+}
--- /dev/null
+; RUN: not llvm-as < %s -disable-output 2>&1 | FileCheck %s
+
+; CHECK: ptr* is invalid - use ptr instead
+define void @f(ptr %a) {
+ %b = bitcast ptr %a to ptr*
+ ret void
+}