anchor.diff:      new OptionHandler('--verbose', setVerbose),
       new OptionHandler('--version', (_) => wantVersion = true),
       new OptionHandler('--library-root=.+', setLibraryRoot),
  -    new OptionHandler('--out=.+|-o.+', setOutput),
  +    new OptionHandler('--out=.+|-o.*', setOutput, multipleArguments: true),
       new OptionHandler('--allow-mock-compilation', passThrough),
       new OptionHandler('--minify', passThrough),
       new OptionHandler('--force-strip=.*', setStrip),
  
positive.code:     patterns.add(handler.pattern);
    }
    var pattern = new RegExp('^(${patterns.join(")\$|(")})\$');
    OUTER: for (String argument in argv) {
      Match match = pattern.firstMatch(argument);
      assert(match.groupCount == handlers.length);
      for (int i = 0; i < handlers.length; i++) {
        if (match[i + 1] != null) {
          handlers[i].handle(argument);
          continue OUTER;
        }
      }
  
negative.code:     packageRoot = currentDirectory.resolve(extractPath(argument));
    }
  
    setOutput(Iterator<String> arguments) {
      String path;
      if (arguments.current == '-o') {
        if (!arguments.moveNext()) {
          helpAndFail('Error: Missing file after -o option.');
        }
        path = arguments.current;
      } else {
        path = extractParameter(arguments.current);
      }
      explicitOut = true;
      out = currentDirectory.resolve(nativeToUriPath(path));
      sourceMapOut = Uri.parse('$out.map');
    }
  
  