Fix variable name style. Don't cast to and from int.

This enables the compiler to see the enum and produce warnings about a switch
not being fully covered. Fix one of these warnings.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183749 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Rafael Espindola 2013-06-11 15:29:10 +00:00
parent d27a9785d5
commit 4fbf663302
2 changed files with 8 additions and 7 deletions

View File

@ -181,7 +181,7 @@ public:
/// file_magic - An "enum class" enumeration of file types based on magic (the first /// file_magic - An "enum class" enumeration of file types based on magic (the first
/// N bytes of the file). /// N bytes of the file).
struct file_magic { struct file_magic {
enum _ { enum Impl {
unknown = 0, ///< Unrecognized file unknown = 0, ///< Unrecognized file
bitcode, ///< Bitcode file bitcode, ///< Bitcode file
archive, ///< ar style archive file archive, ///< ar style archive file
@ -204,16 +204,15 @@ struct file_magic {
}; };
bool is_object() const { bool is_object() const {
return v_ == unknown ? false : true; return V == unknown ? false : true;
} }
file_magic() : v_(unknown) {} file_magic() : V(unknown) {}
file_magic(_ v) : v_(v) {} file_magic(Impl V) : V(V) {}
explicit file_magic(int v) : v_(_(v)) {} operator Impl() const { return V; }
operator int() const {return v_;}
private: private:
int v_; Impl V;
}; };
/// @} /// @}

View File

@ -44,6 +44,8 @@ ObjectFile *ObjectFile::createObjectFile(MemoryBuffer *Object) {
sys::fs::file_magic Type = sys::fs::identify_magic(Object->getBuffer()); sys::fs::file_magic Type = sys::fs::identify_magic(Object->getBuffer());
switch (Type) { switch (Type) {
case sys::fs::file_magic::unknown: case sys::fs::file_magic::unknown:
case sys::fs::file_magic::bitcode:
case sys::fs::file_magic::archive:
return 0; return 0;
case sys::fs::file_magic::elf_relocatable: case sys::fs::file_magic::elf_relocatable:
case sys::fs::file_magic::elf_executable: case sys::fs::file_magic::elf_executable: