Always return `ImmutableList` from `InvocationPolicyEnforcer::expandPolicy`.

Fix an error-prone warning about varying mutability of the returned value.

PiperOrigin-RevId: 377487160
diff --git a/src/main/java/com/google/devtools/common/options/InvocationPolicyEnforcer.java b/src/main/java/com/google/devtools/common/options/InvocationPolicyEnforcer.java
index 0e4420d..5ae079b 100644
--- a/src/main/java/com/google/devtools/common/options/InvocationPolicyEnforcer.java
+++ b/src/main/java/com/google/devtools/common/options/InvocationPolicyEnforcer.java
@@ -310,10 +310,10 @@
    *
    * <p>None of the flagPolicies returned should be on expansion flags.
    */
-  private static List<FlagPolicyWithContext> expandPolicy(
+  private static ImmutableList<FlagPolicyWithContext> expandPolicy(
       FlagPolicyWithContext originalPolicy, OptionsParser parser, Level loglevel)
       throws OptionsParsingException {
-    List<FlagPolicyWithContext> expandedPolicies = new ArrayList<>();
+    ImmutableList.Builder<FlagPolicyWithContext> expandedPolicies = ImmutableList.builder();
 
     boolean isExpansion = originalPolicy.description.isExpansion();
     ImmutableList<ParsedOptionDescription> subflags =
@@ -396,7 +396,7 @@
       expandedPolicies.add(originalPolicy);
     }
 
-    return expandedPolicies;
+    return expandedPolicies.build();
   }
 
   /**