linker: Make linker_{error,warning} generally available
linker_warning is a new function. It's identical to linker_error except that it doesn't set LinkStatus=false and it prepends "warning: " on messages instead of "error: ". Signed-off-by: Ian Romanick <ian.d.romanick@intel.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Eric Anholt <eric@anholt.net>
This commit is contained in:
@@ -125,6 +125,7 @@
|
||||
#include "glsl_parser_extras.h"
|
||||
#include "linker.h"
|
||||
#include "program/hash_table.h"
|
||||
#include "program.h"
|
||||
|
||||
struct call_node : public exec_node {
|
||||
class function *func;
|
||||
|
@@ -177,6 +177,19 @@ linker_error(gl_shader_program *prog, const char *fmt, ...)
|
||||
}
|
||||
|
||||
|
||||
void
|
||||
linker_warning(gl_shader_program *prog, const char *fmt, ...)
|
||||
{
|
||||
va_list ap;
|
||||
|
||||
ralloc_strcat(&prog->InfoLog, "error: ");
|
||||
va_start(ap, fmt);
|
||||
ralloc_vasprintf_append(&prog->InfoLog, fmt, ap);
|
||||
va_end(ap);
|
||||
|
||||
}
|
||||
|
||||
|
||||
void
|
||||
invalidate_variable_locations(gl_shader *sh, enum ir_variable_mode mode,
|
||||
int generic_base)
|
||||
|
@@ -25,9 +25,6 @@
|
||||
#ifndef GLSL_LINKER_H
|
||||
#define GLSL_LINKER_H
|
||||
|
||||
extern void
|
||||
linker_error(gl_shader_program *prog, const char *fmt, ...);
|
||||
|
||||
extern bool
|
||||
link_function_calls(gl_shader_program *prog, gl_shader *main,
|
||||
gl_shader **shader_list, unsigned num_shaders);
|
||||
|
@@ -25,3 +25,11 @@
|
||||
|
||||
extern void
|
||||
link_shaders(struct gl_context *ctx, struct gl_shader_program *prog);
|
||||
|
||||
extern void
|
||||
linker_error(gl_shader_program *prog, const char *fmt, ...)
|
||||
PRINTFLIKE(2, 3);
|
||||
|
||||
extern void
|
||||
linker_warning(gl_shader_program *prog, const char *fmt, ...)
|
||||
PRINTFLIKE(2, 3);
|
||||
|
Reference in New Issue
Block a user