remove the Decl::getCanonicalType() method.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49295 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Sema/SemaDecl.cpp b/lib/Sema/SemaDecl.cpp
index 9498fb2..0f464a0 100644
--- a/lib/Sema/SemaDecl.cpp
+++ b/lib/Sema/SemaDecl.cpp
@@ -280,8 +280,8 @@
   MergeAttributes(New, Old);
 
   
-  QualType OldQType = Old->getType().getCanonicalType();
-  QualType NewQType = New->getType().getCanonicalType();
+  QualType OldQType = Context.getCanonicalType(Old->getType());
+  QualType NewQType = Context.getCanonicalType(New->getType());
   
   // Function types need to be compatible, not identical. This handles
   // duplicate function decls like "void f(int); void f(enum X);" properly.
@@ -357,8 +357,9 @@
   MergeAttributes(New, Old);
 
   // Verify the types match.
-  if (Old->getCanonicalType() != New->getCanonicalType() && 
-      !areEquivalentArrayTypes(New->getCanonicalType(), Old->getCanonicalType())) {
+  QualType OldCType = Context.getCanonicalType(Old->getType());
+  QualType NewCType = Context.getCanonicalType(New->getType());
+  if (OldCType != NewCType && !areEquivalentArrayTypes(NewCType, OldCType)) {
     Diag(New->getLocation(), diag::err_redefinition, New->getName());
     Diag(Old->getLocation(), diag::err_previous_definition);
     return New;