Fix OptionsParserImpl.clearValue (and invocation policy by extension) to work
correctly with flags that have expansion flags or implicit requirements.

--
MOS_MIGRATED_REVID=121862297
diff --git a/src/main/java/com/google/devtools/common/options/OptionsParser.java b/src/main/java/com/google/devtools/common/options/OptionsParser.java
index fd6d915..83a7b08 100644
--- a/src/main/java/com/google/devtools/common/options/OptionsParser.java
+++ b/src/main/java/com/google/devtools/common/options/OptionsParser.java
@@ -593,7 +593,8 @@
    * @return A map of an option name to the old value of the options that were cleared.
    * @throws IllegalArgumentException If the flag does not exist.
    */
-  public Map<String, OptionValueDescription> clearValue(String optionName) {
+  public Map<String, OptionValueDescription> clearValue(String optionName)
+      throws OptionsParsingException {
     Map<String, OptionValueDescription> clearedValues = Maps.newHashMap();
     impl.clearValue(optionName, clearedValues);
     return clearedValues;