From: Wolfgang (Blub) Bumiller Date: Thu, 23 Aug 2012 18:48:51 +0000 (+0200) Subject: add 'X has been declared here:' too the too-few/many-parameters warning/error X-Git-Tag: 0.1-rc1~62 X-Git-Url: https://git.rm.cloudns.org/?a=commitdiff_plain;h=dff6328c9eb9ff6be4580269d87dd5af7220c83f;p=xonotic%2Fgmqcc.git add 'X has been declared here:' too the too-few/many-parameters warning/error --- diff --git a/parser.c b/parser.c index 5b84ac2..d382dd1 100644 --- a/parser.c +++ b/parser.c @@ -1000,23 +1000,31 @@ static bool parser_close_call(parser_t *parser, shunt *sy) if (opts_standard == COMPILER_GMQCC) { if (fval) - parseerror(parser, "too %s parameters for call to %s: expected %i, got %i", fewmany, - fval->name, (int)fun->expression.params_count, paramcount); + parseerror(parser, "too %s parameters for call to %s: expected %i, got %i\n" + " -> `%s` has been declared here: %s:%i", + fewmany, fval->name, (int)fun->expression.params_count, (int)paramcount, + fval->name, ast_ctx(fun).file, (int)ast_ctx(fun).line); else - parseerror(parser, "too %s parameters for function call: expected %i, got %i", fewmany, - (int)fun->expression.params_count, paramcount); + parseerror(parser, "too %s parameters for function call: expected %i, got %i\n" + " -> `%s` has been declared here: %s:%i", + fewmany, fval->name, (int)fun->expression.params_count, (int)paramcount, + fval->name, ast_ctx(fun).file, (int)ast_ctx(fun).line); return false; } else { if (fval) return !parsewarning(parser, WARN_TOO_FEW_PARAMETERS, - "too %s parameters for call to %s: expected %i, got %i", fewmany, - fval->name, (int)fun->expression.params_count, paramcount); + "too %s parameters for call to %s: expected %i, got %i\n" + " -> `%s` has been declared here: %s:%i", + fewmany, fval->name, (int)fun->expression.params_count, (int)paramcount, + fval->name, ast_ctx(fun).file, (int)ast_ctx(fun).line); else return !parsewarning(parser, WARN_TOO_FEW_PARAMETERS, - "too %s parameters for function call: expected %i, got %i", fewmany, - (int)fun->expression.params_count, paramcount); + "too %s parameters for function call: expected %i, got %i\n" + " -> `%s` has been declared here: %s:%i", + fewmany, fval->name, (int)fun->expression.params_count, (int)paramcount, + fval->name, ast_ctx(fun).file, (int)ast_ctx(fun).line); } } }