From e04a97ff23f6e0568c3c21cec8849c6c3fd2077f Mon Sep 17 00:00:00 2001 From: Kenneth Graunke Date: Sat, 23 Nov 2013 11:55:03 -0800 Subject: glsl: Merge "candidates are: " message to the previous line. Previously, when we hit a "no matching function" error, it looked like: 0:0(0): error: no matching function for call to `cos()' 0:0(0): error: candidates are: float cos(float) 0:0(0): error: vec2 cos(vec2) 0:0(0): error: vec3 cos(vec3) 0:0(0): error: vec4 cos(vec4) Now it looks like: 0:0(0): error: no matching function for call to `cos()'; candidates are: 0:0(0): error: float cos(float) 0:0(0): error: vec2 cos(vec2) 0:0(0): error: vec3 cos(vec3) 0:0(0): error: vec4 cos(vec4) This is not really any worse and removes the need for the prefix variable. It will also help with the next commit's refactoring. Signed-off-by: Kenneth Graunke Reviewed-by: Chris Forbes Reviewed-by: Ian Romanick --- src/glsl/ast_function.cpp | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) (limited to 'src/glsl/ast_function.cpp') diff --git a/src/glsl/ast_function.cpp b/src/glsl/ast_function.cpp index 82456ad4c2f..6def25a7d2e 100644 --- a/src/glsl/ast_function.cpp +++ b/src/glsl/ast_function.cpp @@ -432,11 +432,11 @@ no_matching_function_error(const char *name, _mesa_glsl_parse_state *state) { char *str = prototype_string(NULL, name, actual_parameters); - _mesa_glsl_error(loc, state, "no matching function for call to `%s'", str); + _mesa_glsl_error(loc, state, + "no matching function for call to `%s'; candidates are:", + str); ralloc_free(str); - const char *prefix = "candidates are: "; - for (int i = -1; i < (int) state->num_builtins_to_link; i++) { glsl_symbol_table *syms = i >= 0 ? state->builtins_to_link[i]->symbols : state->symbols; @@ -451,10 +451,8 @@ no_matching_function_error(const char *name, continue; str = prototype_string(sig->return_type, f->name, &sig->parameters); - _mesa_glsl_error(loc, state, "%s%s", prefix, str); + _mesa_glsl_error(loc, state, " %s", str); ralloc_free(str); - - prefix = " "; } } } -- cgit v1.2.3