private void compileArgumentsList() throws ParseException, IOException {
		//empty arguments list
		if ((tokenizer.tokenType() == Tokenizer.SYMBOL) &&
			    (tokenizer.symbol() == ')')) {
			return;
		}

		do {
			// <data-type>		
			Type type = compileDataType();

			// <argument-name>
			if (tokenizer.tokenType() != Tokenizer.IDENTIFIER) {
				throw new ParseException("argument name is excepted after type",
				                         tokenizer.lineNumber());
			}

			Function.currentFunction.addParameter(tokenizer.getIdentifier(),
			                                      type);

			advance("program not ended");

			// ,
			if ((tokenizer.tokenType() != Tokenizer.SYMBOL) ||
				    (tokenizer.symbol() != ',')) {
				break;
			}

			advance("program not ended");
		} while (true);
	}