Use getError and remove the error_code operator.
authorRafael Espindola <rafael.espindola@gmail.com>
Wed, 8 Jan 2014 22:03:39 +0000 (22:03 +0000)
committerRafael Espindola <rafael.espindola@gmail.com>
Wed, 8 Jan 2014 22:03:39 +0000 (22:03 +0000)
llvm-svn: 198799

llvm/include/llvm/Object/ELFObjectFile.h
llvm/include/llvm/Support/ErrorOr.h
llvm/tools/llvm-readobj/ELFDumper.cpp
llvm/unittests/Support/ErrorOrTest.cpp

index 962a3e2..5b7e882 100644 (file)
@@ -219,7 +219,7 @@ error_code ELFObjectFile<ELFT>::getSymbolName(DataRefImpl Symb,
                                               StringRef &Result) const {
   ErrorOr<StringRef> Name = EF.getSymbolName(toELFSymIter(Symb));
   if (!Name)
-    return Name;
+    return Name.getError();
   Result = *Name;
   return object_error::success;
 }
@@ -233,7 +233,7 @@ error_code ELFObjectFile<ELFT>::getSymbolVersion(SymbolRef SymRef,
   ErrorOr<StringRef> Ver =
       EF.getSymbolVersion(EF.getSection(Symb.d.b), symb, IsDefault);
   if (!Ver)
-    return Ver;
+    return Ver.getError();
   Version = *Ver;
   return object_error::success;
 }
@@ -435,7 +435,7 @@ error_code ELFObjectFile<ELFT>::getSectionName(DataRefImpl Sec,
                                                StringRef &Result) const {
   ErrorOr<StringRef> Name = EF.getSectionName(&*toELFShdrIter(Sec));
   if (!Name)
-    return Name;
+    return Name.getError();
   Result = *Name;
   return object_error::success;
 }
@@ -743,7 +743,7 @@ error_code ELFObjectFile<ELFT>::getRelocationValueString(
   ErrorOr<StringRef> SymName =
       EF.getSymbolName(EF.getSection(sec->sh_link), symb);
   if (!SymName)
-    return SymName;
+    return SymName.getError();
   switch (EF.getHeader()->e_machine) {
   case ELF::EM_X86_64:
     switch (type) {
index 21ab4e7..fba6705 100644 (file)
@@ -181,10 +181,6 @@ public:
   T &get() { return *getStorage(); }
   const T &get() const { return const_cast<ErrorOr<T> >(this)->get(); }
 
-  operator llvm::error_code() const {
-    return HasError ? *getErrorStorage() : llvm::error_code::success();
-  }
-
   error_code getError() const {
     return HasError ? *getErrorStorage() : error_code::success();
   }
@@ -240,7 +236,7 @@ private:
     } else {
       // Get other's error.
       HasError = true;
-      new (getErrorStorage()) error_code(Other);
+      new (getErrorStorage()) error_code(Other.getError());
     }
   }
 
index b82cecd..7740571 100644 (file)
@@ -66,7 +66,7 @@ private:
 
 template <class T> T errorOrDefault(ErrorOr<T> Val, T Default = T()) {
   if (!Val) {
-    error(Val);
+    error(Val.getError());
     return Default;
   }
 
@@ -632,7 +632,7 @@ void ELFDumper<ELFT>::printSymbol(typename ELFO::Elf_Sym_Iter Symbol) {
       FullSymbolName += (IsDefault ? "@@" : "@");
       FullSymbolName += *Version;
     } else
-      error(Version);
+      error(Version.getError());
   }
 
   DictScope D(W, "Symbol");
index 4c5eed0..98174e8 100644 (file)
@@ -25,7 +25,7 @@ TEST(ErrorOr, SimpleValue) {
 
   a = t2();
   EXPECT_FALSE(a);
-  EXPECT_EQ(errc::invalid_argument, a);
+  EXPECT_EQ(errc::invalid_argument, a.getError());
 #ifdef EXPECT_DEBUG_DEATH
   EXPECT_DEBUG_DEATH(*a, "Cannot get value when an error exists");
 #endif