X-Git-Url: http://git.efficios.com/?p=babeltrace.git;a=blobdiff_plain;f=formats%2Fctf%2Fmetadata%2Fctf-parser.y;h=8fc83dfad49c154f4ad756da4e7f73a3a72de60a;hp=69fed13abb2f5e098319437b95372b19fda82673;hb=a398348262109d4272d93b787014e9c901d99b67;hpb=8c572eba034b95716a4bbd019dfbe0827605ba90 diff --git a/formats/ctf/metadata/ctf-parser.y b/formats/ctf/metadata/ctf-parser.y index 69fed13a..8fc83dfa 100644 --- a/formats/ctf/metadata/ctf-parser.y +++ b/formats/ctf/metadata/ctf-parser.y @@ -26,10 +26,13 @@ #include #include #include +#include #include "ctf-scanner.h" #include "ctf-parser.h" #include "ctf-ast.h" +int yydebug; + /* * TODO: support enum, variant and struct declarations in scopes. */ @@ -47,8 +50,6 @@ _cds_list_splice_tail (struct cds_list_head *add, struct cds_list_head *head) } } -#define printf_dbg(fmt, args...) fprintf(stderr, "%s: " fmt, __func__, ## args) - int yyparse(struct ctf_scanner *scanner); int yylex(union YYSTYPE *yyval, struct ctf_scanner *scanner); int yylex_init_extra(struct ctf_scanner *scanner, yyscan_t * ptr_yy_globals); @@ -171,7 +172,7 @@ static void push_scope(struct ctf_scanner *scanner) { struct ctf_scanner_scope *ns; - printf_dbg("push scope\n"); + printf_debug("push scope\n"); ns = malloc(sizeof(struct ctf_scanner_scope)); init_scope(ns, scanner->cs); scanner->cs = ns; @@ -181,7 +182,7 @@ static void pop_scope(struct ctf_scanner *scanner) { struct ctf_scanner_scope *os; - printf_dbg("pop scope\n"); + printf_debug("pop scope\n"); os = scanner->cs; scanner->cs = os->parent; finalize_scope(os); @@ -193,7 +194,7 @@ static int lookup_type(struct ctf_scanner_scope *s, const char *id) int ret; ret = (int) (long) g_hash_table_lookup(s->types, id); - printf_dbg("lookup %p %s %d\n", s, id, ret); + printf_debug("lookup %p %s %d\n", s, id, ret); return ret; } @@ -208,13 +209,13 @@ int is_type(struct ctf_scanner *scanner, const char *id) break; } } - printf_dbg("is type %s %d\n", id, ret); + printf_debug("is type %s %d\n", id, ret); return ret; } static void add_type(struct ctf_scanner *scanner, struct gc_string *id) { - printf_dbg("add type %s\n", id->s); + printf_debug("add type %s\n", id->s); if (lookup_type(scanner->cs, id->s)) return; g_hash_table_insert(scanner->cs->types, id->s, id->s); @@ -790,6 +791,8 @@ struct ctf_scanner *ctf_scanner_alloc(FILE *input) struct ctf_scanner *scanner; int ret; + yydebug = babeltrace_debug; + scanner = malloc(sizeof(*scanner)); if (!scanner) return NULL;