 		return left == right
 
 	case let (.Value(left), .Value(right)):
+		return left == right
+
+	case let (.Flag(left), .Flag(right)):
 		return left == right
 
 	default:

	/// A value, either associated with an option or passed as a positional
	/// argument.
	case Value(String)
}

private func ==(lhs: RawArgument, rhs: RawArgument) -> Bool {


		case let .Value(value):
			return "\"\(value)\""

		case let .Flag(flags):
			return "-\(flags)"
		}
	}
}
