removed superfluous &
[cparser] / ast.c
diff --git a/ast.c b/ast.c
index 0687d51..073ab7d 100644 (file)
--- a/ast.c
+++ b/ast.c
@@ -204,6 +204,10 @@ static void print_unary_expression(const unary_expression_t *unexpr)
        case EXPR_UNARY_DEREFERENCE:      fputs("*", out);  break;
        case EXPR_UNARY_TAKE_ADDRESS:     fputs("&", out);  break;
 
+       case EXPR_UNARY_BITFIELD_EXTRACT:
+               print_expression(unexpr->value);
+               return;
+
        case EXPR_UNARY_POSTFIX_INCREMENT:
                fputs("(", out);
                print_expression(unexpr->value);
@@ -865,6 +869,7 @@ bool is_constant_expression(const expression_t *expression)
        case EXPR_UNARY_POSTFIX_DECREMENT:
        case EXPR_UNARY_PREFIX_INCREMENT:
        case EXPR_UNARY_PREFIX_DECREMENT:
+       case EXPR_UNARY_BITFIELD_EXTRACT:
        case EXPR_UNARY_ASSUME: /* has VOID type */
        case EXPR_BINARY_ASSIGN:
        case EXPR_BINARY_MUL_ASSIGN: