Fixes incremental flag to not leak into JUnitShell.

Change-Id: I16f8599c62c202b948a26a826c467e0cd61033c7
diff --git a/dev/core/src/com/google/gwt/dev/DevMode.java b/dev/core/src/com/google/gwt/dev/DevMode.java
index 17a3a66..fabcce2 100644
--- a/dev/core/src/com/google/gwt/dev/DevMode.java
+++ b/dev/core/src/com/google/gwt/dev/DevMode.java
@@ -84,9 +84,9 @@
    * Runs the superdev-mode code server instead of classic one.
    */
   protected static class ArgHandlerSuperDevMode extends ArgHandlerFlag {
-    private final OptionSuperDevMode options;
+    private final HostedModeOptions options;
 
-    public ArgHandlerSuperDevMode(OptionSuperDevMode options) {
+    public ArgHandlerSuperDevMode(HostedModeOptions options) {
       this.options = options;
       addTagValue("-superDevMode", true);
     }
@@ -109,6 +109,10 @@
     @Override
     public boolean setFlag(boolean value) {
       options.setSuperDevMode(value);
+      // Superdev uses incremental by default
+      if (options.isSuperDevMode()) {
+        options.setCompilePerFile(true);
+      }
       return true;
     }
   }
@@ -239,8 +243,8 @@
       registerHandler(new ArgHandlerWorkDirOptional(options));
       registerHandler(new ArgHandlerDisableUpdateCheck(options));
       registerHandler(new ArgHandlerSourceLevel(options));
-      registerHandler(new ArgHandlerIncrementalCompile(options));
       registerHandler(new ArgHandlerJsInteropMode(options));
+      registerHandler(new ArgHandlerIncrementalCompile(options));
       registerHandler(new ArgHandlerModuleName(options) {
         @Override
         public String getPurpose() {
@@ -453,7 +457,6 @@
   @Override
   protected HostedModeBaseOptions createOptions() {
     HostedModeOptionsImpl hostedModeOptions = new HostedModeOptionsImpl();
-    hostedModeOptions.setCompilePerFile(true);
     compilerContext = compilerContextBuilder.options(hostedModeOptions).build();
     return hostedModeOptions;
   }
diff --git a/user/src/com/google/gwt/junit/JUnitShell.java b/user/src/com/google/gwt/junit/JUnitShell.java
index a4cb6aa..0bcd3ad 100644
--- a/user/src/com/google/gwt/junit/JUnitShell.java
+++ b/user/src/com/google/gwt/junit/JUnitShell.java
@@ -933,16 +933,6 @@
   }
 
   @Override
-  protected HostedModeBaseOptions createOptions() {
-    HostedModeBaseOptions options = super.createOptions();
-    // DevMode defaults to incremental because it passes the flag to the
-    // CodeServer, which is incremental by default. But for GWTTestCase
-    // we don't want an incremental-by-default behavior, so reset it here.
-    options.setCompilePerFile(false);
-    return options;
-  }
-
-  @Override
   protected boolean doStartup() {
     if (!super.doStartup()) {
       return false;