Revert "Sema: err_after_alias is unreachable, remove it"

This reverts commit r226626.  err_after_alias is, in fact, reachable.

llvm-svn: 226633
diff --git a/clang/lib/Sema/SemaDecl.cpp b/clang/lib/Sema/SemaDecl.cpp
index 8af7e5a..cd6ff6c 100644
--- a/clang/lib/Sema/SemaDecl.cpp
+++ b/clang/lib/Sema/SemaDecl.cpp
@@ -2223,7 +2223,11 @@
         S.CheckForFunctionRedefinition(FD, cast<FunctionDecl>(Def));
       else {
         VarDecl *VD = cast<VarDecl>(New);
-        S.Diag(VD->getLocation(), diag::err_redefinition) << VD->getDeclName();
+        unsigned Diag = cast<VarDecl>(Def)->isThisDeclarationADefinition() ==
+                                VarDecl::TentativeDefinition
+                            ? diag::err_alias_after_tentative
+                            : diag::err_redefinition;
+        S.Diag(VD->getLocation(), Diag) << VD->getDeclName();
         S.Diag(Def->getLocation(), diag::note_previous_definition);
         VD->setInvalidDecl();
       }