Fix build warnings

The following CL enables -Werror:
  https://codereview.chromium.org/863093002/

There were two warnings left in our subzero build:
 - Dead default cases because all of an enum's values were handled by the switch.
 - Use of C99 VLA.

R=stichnot@chromium.org
TEST= make check
BUG= none

Review URL: https://codereview.chromium.org/862853003
diff --git a/src/IceCfgNode.cpp b/src/IceCfgNode.cpp
index 4a970ae..29eb9d0 100644
--- a/src/IceCfgNode.cpp
+++ b/src/IceCfgNode.cpp
@@ -304,14 +304,15 @@
     return;
 
   // Count the number of non-deleted Phi instructions.
-  struct {
+  struct PhiDesc {
     InstPhi *Phi;
     Variable *Dest;
     Operand *Src;
     bool Processed;
     size_t NumPred; // number of entries whose Src is this Dest
     int32_t Weight; // preference for topological order
-  } Desc[getPhis().size()];
+  };
+  llvm::SmallVector<PhiDesc, 32> Desc(getPhis().size());
 
   size_t NumPhis = 0;
   for (Inst &I : Phis) {
diff --git a/src/IceConverter.cpp b/src/IceConverter.cpp
index 325fda8..a972f73 100644
--- a/src/IceConverter.cpp
+++ b/src/IceConverter.cpp
@@ -589,9 +589,6 @@
                              const Ice::Intrinsics::FullIntrinsicInfo *I) {
     Ice::SizeT ArgIndex = 0;
     switch (I->validateCall(Call, ArgIndex)) {
-    default:
-      report_fatal_error("Unknown validation error for intrinsic call");
-      break;
     case Ice::Intrinsics::IsValidCall:
       break;
     case Ice::Intrinsics::BadReturnType: {
diff --git a/src/IceInstX8632.cpp b/src/IceInstX8632.cpp
index 491e9c1..9bb136d 100644
--- a/src/IceInstX8632.cpp
+++ b/src/IceInstX8632.cpp
@@ -2906,9 +2906,6 @@
   case High:
     Str << "high";
     break;
-  default:
-    Str << "???";
-    break;
   }
   Str << "(";
   if (Func)
diff --git a/src/IceTargetLowering.h b/src/IceTargetLowering.h
index f2e5863..39fa589 100644
--- a/src/IceTargetLowering.h
+++ b/src/IceTargetLowering.h
@@ -108,9 +108,6 @@
     case Opt_2:
       translateO2();
       break;
-    default:
-      Func->setError("Target doesn't specify lowering steps.");
-      break;
     }
   }
   virtual void translateOm1() {
diff --git a/src/IceTargetLoweringX8632.cpp b/src/IceTargetLoweringX8632.cpp
index ea1f013..501cdd7 100644
--- a/src/IceTargetLoweringX8632.cpp
+++ b/src/IceTargetLoweringX8632.cpp
@@ -4710,14 +4710,6 @@
         Str << "\n";
         break;
       }
-      default: {
-        std::string Buffer;
-        llvm::raw_string_ostream StrBuf(Buffer);
-        StrBuf << "Unable to lower initializer: ";
-        Init->dump(StrBuf);
-        llvm::report_fatal_error(StrBuf.str());
-        break;
-      }
       }
     }
   } else if (IsConstant || IsExternal)
diff --git a/src/PNaClTranslator.cpp b/src/PNaClTranslator.cpp
index 01ba264..dfe93ff 100644
--- a/src/PNaClTranslator.cpp
+++ b/src/PNaClTranslator.cpp
@@ -100,9 +100,6 @@
   case ExtendedType::FuncSig:
     Stream << "FuncSig";
     break;
-  default:
-    Stream << "??";
-    break;
   }
   return Stream;
 }
@@ -1434,9 +1431,6 @@
     if (!ALLOW_DUMP)
       return;
     switch (Value) {
-    default:
-      report_fatal_error("Unknown VectorIndexCheckValue");
-      break;
     case VectorIndexNotVector:
       Stream << "Vector index on non vector";
       break;
@@ -2489,10 +2483,6 @@
     if (IntrinsicInfo) {
       Ice::SizeT ArgIndex = 0;
       switch (IntrinsicInfo->validateCall(Inst, ArgIndex)) {
-      default:
-        Error("Unknown validation error for intrinsic call");
-        // TODO(kschimpf) Remove error recovery once implementation complete.
-        break;
       case Ice::Intrinsics::IsValidCall:
         break;
       case Ice::Intrinsics::BadReturnType: {