Move getAccessedFieldNo out of lib/AST/Expr.cpp into
lib/CodeGen/CGExpr.cpp and to change include/clang/AST/Attr.h to
use its own enum for visibility types instead of using
llvm::GlobalValue::VisibilityTypes. These changes eliminate
dependencies in the AST library on LLVM's VMCore library.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@51398 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Sema/SemaDecl.cpp b/lib/Sema/SemaDecl.cpp
index b0b50ba..35f12c7 100644
--- a/lib/Sema/SemaDecl.cpp
+++ b/lib/Sema/SemaDecl.cpp
@@ -2621,16 +2621,16 @@
 
   const char *TypeStr = Str->getStrData();
   unsigned TypeLen = Str->getByteLength();
-  llvm::GlobalValue::VisibilityTypes type;
+  VisibilityAttr::VisibilityTypes type;
 
   if (TypeLen == 7 && !memcmp(TypeStr, "default", 7))
-    type = llvm::GlobalValue::DefaultVisibility;
+    type = VisibilityAttr::DefaultVisibility;
   else if (TypeLen == 6 && !memcmp(TypeStr, "hidden", 6))
-    type = llvm::GlobalValue::HiddenVisibility;
+    type = VisibilityAttr::HiddenVisibility;
   else if (TypeLen == 8 && !memcmp(TypeStr, "internal", 8))
-    type = llvm::GlobalValue::HiddenVisibility; // FIXME
+    type = VisibilityAttr::HiddenVisibility; // FIXME
   else if (TypeLen == 9 && !memcmp(TypeStr, "protected", 9))
-    type = llvm::GlobalValue::ProtectedVisibility;
+    type = VisibilityAttr::ProtectedVisibility;
   else {
     Diag(rawAttr->getLoc(), diag::warn_attribute_type_not_supported,
            "visibility", TypeStr);