X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=isl_stream.c;h=4d684ecb824290697d0a0a1d49ef39d10a9f676d;hb=c1dbabe09b2ea06c17f5dbbcb615d0ab5a3143d0;hp=7ddc75a07000d1b9c3db4402b9830f2df060a251;hpb=85f6aa70cd1f7de4038f57fa93255edb22b03b0a;p=platform%2Fupstream%2Fisl.git diff --git a/isl_stream.c b/isl_stream.c index 7ddc75a..4d684ec 100644 --- a/isl_stream.c +++ b/isl_stream.c @@ -95,6 +95,8 @@ void isl_stream_error(struct isl_stream *s, struct isl_token *tok, char *msg) if (tok) { if (tok->type < 256) fprintf(stderr, "got '%c'\n", tok->type); + else if (tok->type == ISL_TOKEN_IDENT) + fprintf(stderr, "got ident '%s'\n", tok->u.s); else fprintf(stderr, "got token type %d\n", tok->type); } @@ -217,6 +219,8 @@ static enum isl_token_type check_keywords(struct isl_stream *s) return ISL_TOKEN_INFTY; if (!strcasecmp(s->buffer, "NaN")) return ISL_TOKEN_NAN; + if (!strcasecmp(s->buffer, "max")) + return ISL_TOKEN_MAX; if (!s->keywords) return ISL_TOKEN_IDENT; @@ -538,9 +542,9 @@ int isl_stream_is_empty(struct isl_stream *s) return 0; } -static int free_keyword(void *p) +static int free_keyword(void **p, void *user) { - struct isl_keyword *keyword = p; + struct isl_keyword *keyword = *p; free(keyword->name); free(keyword); @@ -570,7 +574,7 @@ void isl_stream_free(struct isl_stream *s) isl_token_free(tok); } if (s->keywords) { - isl_hash_table_foreach(s->ctx, s->keywords, free_keyword); + isl_hash_table_foreach(s->ctx, s->keywords, &free_keyword, NULL); isl_hash_table_free(s->ctx, s->keywords); } isl_ctx_deref(s->ctx);