 					switch oldArguments[index] {
 					case let .Value(value):
 						foundValue = value
-						continue argumentLoop
+						continue
 
 					default:
 						break

		rawArguments.removeAll()

		var foundValue: String?
		argumentLoop: for var index = 0; index < oldArguments.count; index++ {
			let arg = oldArguments[index]

			if arg == .Key(key) {

	/// Returns the next positional argument that hasn't yet been returned, or
	/// nil if there are no more positional arguments.
	internal func consumePositionalArgument() -> String? {
		for (index, arg) in rawArguments.enumerate() {
			switch arg {
			case let .Value(value):
				rawArguments.removeAtIndex(index)
				return value
