Store warnings and errors in a parser state infolog.

Cleans up compile warning about unused state in _mesa_glsl_warning.  We
would want infolog handling roughly like this anyway.
This commit is contained in:
Eric Anholt
2010-04-29 18:00:33 -07:00
parent 81f49a774e
commit 3623df68fa
2 changed files with 12 additions and 2 deletions
+9 -1
View File
@@ -73,11 +73,15 @@ _mesa_glsl_error(YYLTYPE *locp, _mesa_glsl_parse_state *state,
va_end(ap);
printf("%s\n", buf);
if (state->info_log)
free(state->info_log);
state->info_log = strdup(buf);
}
void
_mesa_glsl_warning(const YYLTYPE *locp, const _mesa_glsl_parse_state *state,
_mesa_glsl_warning(const YYLTYPE *locp, _mesa_glsl_parse_state *state,
const char *fmt, ...)
{
char buf[1024];
@@ -92,6 +96,10 @@ _mesa_glsl_warning(const YYLTYPE *locp, const _mesa_glsl_parse_state *state,
va_end(ap);
printf("%s\n", buf);
if (!state->info_log) {
state->info_log = strdup(buf);
}
}
+3 -1
View File
@@ -65,6 +65,8 @@ struct _mesa_glsl_parse_state {
const glsl_type **user_structures;
unsigned num_user_structures;
char *info_log;
/**
* \name Enable bits for GLSL extensions
*/
@@ -95,7 +97,7 @@ extern void _mesa_glsl_error(YYLTYPE *locp, _mesa_glsl_parse_state *state,
* \sa _mesa_glsl_error
*/
extern void _mesa_glsl_warning(const YYLTYPE *locp,
const _mesa_glsl_parse_state *state,
_mesa_glsl_parse_state *state,
const char *fmt, ...);
extern void _mesa_glsl_lexer_ctor(struct _mesa_glsl_parse_state *state,