Browse Source

glcpp: Print to the main compiler's infolog, not stdout.

tags/mesa-7.9-rc1
Kenneth Graunke 15 years ago
parent
commit
74704e80c6
3 changed files with 4 additions and 4 deletions
  1. 2
    2
      glcpp/pp.c
  2. 1
    1
      glsl_parser_extras.h
  3. 1
    1
      main.cpp

+ 2
- 2
glcpp/pp.c View File

@@ -57,7 +57,7 @@ glcpp_warning (YYLTYPE *locp, glcpp_parser_t *parser, const char *fmt, ...)
}

extern int
preprocess(void *talloc_ctx, const char **shader)
preprocess(void *talloc_ctx, const char **shader, char **info_log)
{
int errors;
glcpp_parser_t *parser = glcpp_parser_create ();
@@ -65,7 +65,7 @@ preprocess(void *talloc_ctx, const char **shader)

glcpp_parser_parse (parser);

printf("%s", parser->info_log);
*info_log = talloc_strdup_append(*info_log, parser->info_log);

talloc_steal(talloc_ctx, parser->output);
*shader = parser->output;

+ 1
- 1
glsl_parser_extras.h View File

@@ -102,7 +102,7 @@ extern void _mesa_glsl_warning(const YYLTYPE *locp,
const char *fmt, ...);

extern "C" {
extern int preprocess(void *ctx, const char **shader);
extern int preprocess(void *ctx, const char **shader, char **info_log);
}

extern void _mesa_glsl_lexer_ctor(struct _mesa_glsl_parse_state *state,

+ 1
- 1
main.cpp View File

@@ -128,7 +128,7 @@ compile_shader(struct glsl_shader *shader)
* should probably be the parser context, but there isn't one yet.
*/
const char *source = shader->Source;
state.error = preprocess(shader, &source);
state.error = preprocess(shader, &source, &state.info_log);

if (!state.error) {
_mesa_glsl_lexer_ctor(& state, source);

Loading…
Cancel
Save