bin: compile lttng as C++
[lttng-tools.git] / src / common / filter / filter-ast.h
index 29fde10f8c126f7cd430b9a8f498987386801d03..d7a5674451db2ee8f9872f9134784710b43aba78 100644 (file)
  */
 
 #include <urcu/list.h>
+#include <stdio.h>
 #include <stdint.h>
 
+#if defined(__cplusplus)
+extern "C" {
+#endif
+
 #define printf_debug(fmt, args...)                                     \
        do {                                                            \
                if (filter_parser_debug)                                \
@@ -98,6 +103,8 @@ struct filter_node {
        enum node_type type;
        union {
                struct {
+                       /* Avoid -Wextern-c-compat warning with clang++. */
+                       char unused;
                } unknown;
                struct {
                        struct filter_node *child;
@@ -157,8 +164,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);
@@ -185,4 +192,8 @@ int filter_visitor_ir_validate_string(struct filter_parser_ctx *ctx);
 int filter_visitor_ir_normalize_glob_patterns(struct filter_parser_ctx *ctx);
 int filter_visitor_ir_validate_globbing(struct filter_parser_ctx *ctx);
 
+#if defined(__cplusplus)
+}
+#endif
+
 #endif /* _FILTER_AST_H */
This page took 0.024029 seconds and 4 git commands to generate.