summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--glcpp-parse.y8
1 files changed, 6 insertions, 2 deletions
diff --git a/glcpp-parse.y b/glcpp-parse.y
index ec966580fc..131102fab9 100644
--- a/glcpp-parse.y
+++ b/glcpp-parse.y
@@ -754,9 +754,12 @@ _arguments_parse (argument_list_t *arguments, token_node_t **node_ret)
if (node == NULL || node->token->type != '(')
return FUNCTION_NOT_A_FUNCTION;
+ last = node;
+ node = node->next;
+
argument = NULL;
- for (paren_count = 0; node; last = node, node = node->next) {
+ for (paren_count = 1; node; last = node, node = node->next) {
if (node->token->type == '(')
{
paren_count++;
@@ -770,7 +773,8 @@ _arguments_parse (argument_list_t *arguments, token_node_t **node_ret)
break;
}
}
- else if (node->token->type == ',' &&
+
+ if (node->token->type == ',' &&
paren_count == 1)
{
argument = NULL;