Take responsibility for translating thread states for managed code.

Using switch lets the compiler take responsibility for keeping things in sync.

Change-Id: If0b4becd9c84901937a39045e373e0ef0ec48406
diff --git a/src/debugger.cc b/src/debugger.cc
index 569ea81..5a9a462 100644
--- a/src/debugger.cc
+++ b/src/debugger.cc
@@ -1388,17 +1388,16 @@
   // TODO: if we're in Thread.sleep(long), we should return TS_SLEEPING,
   // even if it's implemented using Object.wait(long).
   switch (thread->GetState()) {
-  case Thread::kTerminated:   *pThreadStatus = JDWP::TS_ZOMBIE;   break;
-  case Thread::kRunnable:     *pThreadStatus = JDWP::TS_RUNNING;  break;
-  case Thread::kTimedWaiting: *pThreadStatus = JDWP::TS_WAIT;     break;
-  case Thread::kBlocked:      *pThreadStatus = JDWP::TS_MONITOR;  break;
-  case Thread::kWaiting:      *pThreadStatus = JDWP::TS_WAIT;     break;
-  case Thread::kStarting:     *pThreadStatus = JDWP::TS_ZOMBIE;   break;
-  case Thread::kNative:       *pThreadStatus = JDWP::TS_RUNNING;  break;
-  case Thread::kVmWait:       *pThreadStatus = JDWP::TS_WAIT;     break;
-  case Thread::kSuspended:    *pThreadStatus = JDWP::TS_RUNNING;  break;
-  default:
-    LOG(FATAL) << "Unknown thread state " << thread->GetState();
+    case Thread::kTerminated:   *pThreadStatus = JDWP::TS_ZOMBIE;   break;
+    case Thread::kRunnable:     *pThreadStatus = JDWP::TS_RUNNING;  break;
+    case Thread::kTimedWaiting: *pThreadStatus = JDWP::TS_WAIT;     break;
+    case Thread::kBlocked:      *pThreadStatus = JDWP::TS_MONITOR;  break;
+    case Thread::kWaiting:      *pThreadStatus = JDWP::TS_WAIT;     break;
+    case Thread::kStarting:     *pThreadStatus = JDWP::TS_ZOMBIE;   break;
+    case Thread::kNative:       *pThreadStatus = JDWP::TS_RUNNING;  break;
+    case Thread::kVmWait:       *pThreadStatus = JDWP::TS_WAIT;     break;
+    case Thread::kSuspended:    *pThreadStatus = JDWP::TS_RUNNING;  break;
+    // Don't add a 'default' here so the compiler can spot incompatible enum changes.
   }
 
   *pSuspendStatus = (thread->IsSuspended() ? JDWP::SUSPEND_STATUS_SUSPENDED : JDWP::SUSPEND_STATUS_NOT_SUSPENDED);