#include "ctf-parser.h"
#include "ctf-ast.h"
-#define printf_dbg(fmt, args...) fprintf(stderr, "%s: " fmt, __func__, args)
-#define printf_dbg_noarg(fmt) fprintf(stderr, "%s: " fmt, __func__)
+#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);
{
struct ctf_scanner_scope *ns;
- printf_dbg_noarg("push scope\n");
+ printf_dbg("push scope\n");
ns = malloc(sizeof(struct ctf_scanner_scope));
init_scope(ns, scanner->cs);
scanner->cs = ns;
{
struct ctf_scanner_scope *os;
- printf_dbg_noarg("pop scope\n");
+ printf_dbg("pop scope\n");
os = scanner->cs;
scanner->cs = os->parent;
finalize_scope(os);
event_declaration_begin:
EVENT LBRAC
- {
- push_scope(scanner);
- }
+ { push_scope(scanner); }
;
event_declaration_end:
RBRAC SEMICOLON
- {
- pop_scope(scanner);
- }
+ { pop_scope(scanner); }
;
stream_declaration_begin:
STREAM LBRAC
- {
- push_scope(scanner);
- }
+ { push_scope(scanner); }
;
stream_declaration_end:
RBRAC SEMICOLON
- {
- pop_scope(scanner);
- }
+ { pop_scope(scanner); }
;
trace_declaration_begin:
TRACE LBRAC
- {
- push_scope(scanner);
- }
+ { push_scope(scanner); }
;
trace_declaration_end:
RBRAC SEMICOLON
- {
- pop_scope(scanner);
- }
+ { pop_scope(scanner); }
;
declaration_specifiers:
struct_declaration_begin:
LBRAC
- {
- push_scope(scanner);
- }
+ { push_scope(scanner); }
;
struct_declaration_end:
RBRAC
- {
- pop_scope(scanner);
- }
+ { pop_scope(scanner); }
;
variant_type_specifier:
variant_declaration_begin:
LBRAC
- {
- push_scope(scanner);
- }
+ { push_scope(scanner); }
;
variant_declaration_end:
RBRAC
- {
- pop_scope(scanner);
- }
+ { pop_scope(scanner); }
;
type_specifier_or_integer_constant:
direct_type_declarator:
IDENTIFIER
- {
- add_type(scanner, $1->s);
- }
+ { add_type(scanner, $1->s); }
| LPAREN type_declarator RPAREN
| direct_type_declarator LSBRAC type_specifier_or_integer_constant RSBRAC
;
direct_abstract_type_declarator:
/* empty */
| IDENTIFIER
- {
- add_type(scanner, $1->s);
- }
+ { add_type(scanner, $1->s); }
| LPAREN abstract_type_declarator RPAREN
| direct_abstract_type_declarator LSBRAC type_specifier_or_integer_constant RSBRAC
| direct_abstract_type_declarator LSBRAC RSBRAC