X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=src%2Fcommon%2Ffilter%2Ffilter-ast.h;h=2b460b401ef669d87a3ab9da67e973a564914e59;hb=4878de5c7deb512bbdac4fdfc498907efa06fb7c;hp=a82e4f6bfd2cb77f21efdc13e045972029e3f157;hpb=0ae3cfc61fedae38ef31fe5a99458c4f2161c3b5;p=lttng-tools.git diff --git a/src/common/filter/filter-ast.h b/src/common/filter/filter-ast.h index a82e4f6bf..2b460b401 100644 --- a/src/common/filter/filter-ast.h +++ b/src/common/filter/filter-ast.h @@ -89,6 +89,16 @@ enum ast_link_type { AST_LINK_BRACKET, }; +enum ast_expt_type { + AST_EXP_UNKNOWN = 0, + AST_EXP_STRING, + AST_EXP_CONSTANT, + AST_EXP_FLOAT_CONSTANT, + AST_EXP_IDENTIFIER, + AST_EXP_GLOBAL_IDENTIFIER, + AST_EXP_NESTED, +}; + struct filter_node { /* * Parent node is only set on demand by specific visitor. @@ -99,20 +109,14 @@ struct filter_node { enum node_type type; union { struct { + /* Avoid -Wextern-c-compat warning with clang++. */ + char unused; } unknown; struct { struct filter_node *child; } root; struct { - enum { - AST_EXP_UNKNOWN = 0, - AST_EXP_STRING, - AST_EXP_CONSTANT, - AST_EXP_FLOAT_CONSTANT, - AST_EXP_IDENTIFIER, - AST_EXP_GLOBAL_IDENTIFIER, - AST_EXP_NESTED, - } type; + enum ast_expt_type type; enum ast_link_type post_op; /* reverse */ enum ast_link_type pre_op; /* forward */ union { @@ -158,8 +162,8 @@ struct filter_parser_ctx { struct filter_ast *ast; struct cds_list_head allocated_strings; struct ir_op *ir_root; - struct lttng_filter_bytecode_alloc *bytecode; - struct lttng_filter_bytecode_alloc *bytecode_reloc; + struct lttng_bytecode_alloc *bytecode; + struct lttng_bytecode_alloc *bytecode_reloc; }; struct filter_parser_ctx *filter_parser_ctx_alloc(FILE *input);