fix local labels
authorMatthias Braun <matze@braunis.de>
Thu, 13 Nov 2008 14:02:44 +0000 (14:02 +0000)
committerMatthias Braun <matze@braunis.de>
Thu, 13 Nov 2008 14:02:44 +0000 (14:02 +0000)
[r23632]

entity_t.h
parser.c

index bfcbe1d..d6002f9 100644 (file)
@@ -43,8 +43,7 @@ typedef enum namespace_tag_t {
        NAMESPACE_STRUCT,
        NAMESPACE_UNION,
        NAMESPACE_ENUM,
-       NAMESPACE_LABEL,
-       NAMESPACE_LOCAL_LABEL
+       NAMESPACE_LABEL
 } namespace_tag_t;
 typedef unsigned char namespace_t;
 
index 5c3229d..a149652 100644 (file)
--- a/parser.c
+++ b/parser.c
@@ -10118,7 +10118,7 @@ static statement_t *parse_local_label_declaration(void)
                        goto end_error;
                }
                symbol_t *symbol = token.v.symbol;
-               entity_t *entity = get_entity(symbol, NAMESPACE_LOCAL_LABEL);
+               entity_t *entity = get_entity(symbol, NAMESPACE_LABEL);
                if (entity != NULL && entity->base.parent_scope == scope) {
                        errorf(HERE, "multiple definitions of '__label__ %Y' (previous definition %P)",
                               symbol, &entity->base.source_position);
@@ -10126,7 +10126,7 @@ static statement_t *parse_local_label_declaration(void)
                        entity = allocate_entity_zero(ENTITY_LOCAL_LABEL);
 
                        entity->base.parent_scope    = scope;
-                       entity->base.namespc         = NAMESPACE_LOCAL_LABEL;
+                       entity->base.namespc         = NAMESPACE_LABEL;
                        entity->base.source_position = token.source_position;
                        entity->base.symbol          = symbol;