remove old EXPR_UNKNOWN artifact
authorMatthias Braun <matze@braunis.de>
Thu, 11 Aug 2011 19:59:57 +0000 (21:59 +0200)
committerMatthias Braun <matze@braunis.de>
Thu, 11 Aug 2011 20:00:14 +0000 (22:00 +0200)
ast.c
ast2firm.c
ast_t.h
parser.c
walk_statements.c

diff --git a/ast.c b/ast.c
index b7588c5..f44284c 100644 (file)
--- a/ast.c
+++ b/ast.c
@@ -100,7 +100,6 @@ static int right_to_left(unsigned precedence)
 static unsigned get_expression_precedence(expression_kind_t kind)
 {
        static const unsigned prec[] = {
-               [EXPR_UNKNOWN]                           = PREC_PRIMARY,
                [EXPR_INVALID]                           = PREC_PRIMARY,
                [EXPR_REFERENCE]                         = PREC_PRIMARY,
                [EXPR_REFERENCE_ENUM_VALUE]              = PREC_PRIMARY,
@@ -678,7 +677,6 @@ static void print_expression_prec(const expression_t *expression, unsigned top_p
        if (parenthesized)
                print_string("(");
        switch (expression->kind) {
-       case EXPR_UNKNOWN:
        case EXPR_INVALID:
                print_string("$invalid expression$");
                break;
@@ -1970,9 +1968,6 @@ expression_classification_t is_constant_expression(const expression_t *expressio
 
        case EXPR_INVALID:
                return EXPR_CLASS_ERROR;
-
-       case EXPR_UNKNOWN:
-               break;
        }
        panic("invalid expression found (is constant expression)");
 }
index 9dd2a57..c114ae1 100644 (file)
@@ -3583,7 +3583,6 @@ static ir_node *_expression_to_firm(const expression_t *expression)
        case EXPR_LABEL_ADDRESS:
                return label_address_to_firm(&expression->label_address);
 
-       case EXPR_UNKNOWN:
        case EXPR_INVALID:
                break;
        }
diff --git a/ast_t.h b/ast_t.h
index 9bd17ef..5fe2735 100644 (file)
--- a/ast_t.h
+++ b/ast_t.h
@@ -62,8 +62,7 @@ typedef enum precedence_t {
  * Expression kinds.
  */
 typedef enum expression_kind_t {
-       EXPR_UNKNOWN = 0,
-       EXPR_INVALID,
+       EXPR_INVALID = 0,
        EXPR_REFERENCE,
        EXPR_REFERENCE_ENUM_VALUE,
        EXPR_LITERAL_BOOLEAN,
index e8997b4..102334d 100644 (file)
--- a/parser.c
+++ b/parser.c
@@ -1547,7 +1547,6 @@ unary:
                        return;
 
                EXPR_LITERAL_CASES
-               case EXPR_UNKNOWN:
                case EXPR_INVALID:
                case EXPR_STRING_LITERAL:
                case EXPR_WIDE_STRING_LITERAL:
@@ -4830,9 +4829,6 @@ static bool expression_returns(expression_t const *const expr)
                        return
                                expression_returns(expr->binary.left) &&
                                expression_returns(expr->binary.right);
-
-               case EXPR_UNKNOWN:
-                       break;
        }
 
        panic("unhandled expression");
@@ -8527,7 +8523,6 @@ static void semantic_binexpr_assign(binary_expression_t *expression)
 static bool expression_has_effect(const expression_t *const expr)
 {
        switch (expr->kind) {
-               case EXPR_UNKNOWN:                    break;
                case EXPR_INVALID:                    return true; /* do NOT warn */
                case EXPR_REFERENCE:                  return false;
                case EXPR_REFERENCE_ENUM_VALUE:       return false;
@@ -8746,7 +8741,6 @@ static expression_t *parse_subexpression(precedence_t precedence)
                left = parser->infix_parser(left);
 
                assert(left != NULL);
-               assert(left->kind != EXPR_UNKNOWN);
        }
 
        return left;
index 883a889..fe61cf5 100644 (file)
@@ -53,9 +53,6 @@ static void walk_expression(expression_t const *const expr,
                }
                return;
 
-       case EXPR_UNKNOWN:
-               panic("unexpected expr kind");
-
        case EXPR_COMPOUND_LITERAL:
                /* TODO... */
                break;