diff --git a/lib/Sema/SemaExpr.cpp b/lib/Sema/SemaExpr.cpp
index ba13e7f..fe9a13e 100644
--- a/lib/Sema/SemaExpr.cpp
+++ b/lib/Sema/SemaExpr.cpp
@@ -1013,7 +1013,7 @@
       AssignConvertType ConvTy =
         CheckSingleAssignmentConstraints(ProtoArgType, Arg);
       TheCall->setArg(i, Arg);
-      
+
       if (DiagnoseAssignmentResult(ConvTy, Arg->getLocStart(), ProtoArgType,
                                    ArgType, Arg, "passing"))
         return true;
@@ -1700,8 +1700,9 @@
       }
       
       // Pointee types must be compatible.
-      if (!Context.typesAreCompatible(lpointee.getUnqualifiedType(), 
-                                      rpointee.getUnqualifiedType())) {
+      if (!Context.typesAreCompatible(
+              Context.getCanonicalType(lpointee).getUnqualifiedType(), 
+              Context.getCanonicalType(rpointee).getUnqualifiedType())) {
         Diag(loc, diag::err_typecheck_sub_ptr_compatible,
              lex->getType().getAsString(), rex->getType().getAsString(),
              lex->getSourceRange(), rex->getSourceRange());
diff --git a/test/Sema/pointer-subtract-compat.c b/test/Sema/pointer-subtract-compat.c
new file mode 100644
index 0000000..4ed6abf
--- /dev/null
+++ b/test/Sema/pointer-subtract-compat.c
@@ -0,0 +1,6 @@
+// RUN: clang %s -fsyntax-only -verify -pedantic
+
+typedef const char rchar;
+int a(char* a, rchar* b) {
+  return a-b;
+}
