X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;ds=sidebyside;f=entity_t.h;h=61d363b418a50a4a96aff26019a3667ecc27db2a;hb=e3de7eaecb549e58c466d70b8f24d1f53aa9fc8a;hp=c23d950dfa4c27790fdfd40280c42ed44a0e7967;hpb=108fbfe7bdab64ab7a2b1d058a1384c8450d9987;p=cparser diff --git a/entity_t.h b/entity_t.h index c23d950..61d363b 100644 --- a/entity_t.h +++ b/entity_t.h @@ -1,21 +1,6 @@ /* * This file is part of cparser. - * Copyright (C) 2007-2009 Matthias Braun - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License - * as published by the Free Software Foundation; either version 2 - * of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA - * 02111-1307, USA. + * Copyright (C) 2012 Matthias Braun */ #ifndef ENTITY_T_H #define ENTITY_T_H @@ -25,6 +10,7 @@ #include "attribute.h" #include #include "builtins.h" +#include "jump_target.h" #include "token_t.h" typedef enum { @@ -120,7 +106,7 @@ struct entity_base_t { entity_kind_t kind; entity_namespace_t namespc; symbol_t *symbol; - source_position_t source_position; + position_t pos; scope_t *parent_scope; /**< The scope where this entity is contained in */ entity_t *parent_entity; @@ -176,7 +162,7 @@ struct label_t { statement_t *statement; /* ast2firm info */ - ir_node *block; + jump_target target; ir_node *indirect_block; }; @@ -283,7 +269,7 @@ union entity_t { static inline bool is_declaration(const entity_t *entity) { - switch(entity->kind) { + switch (entity->kind) { case DECLARATION_KIND_CASES: return true; default: @@ -293,7 +279,7 @@ static inline bool is_declaration(const entity_t *entity) const char *get_entity_kind_name(entity_kind_t kind); -entity_t *allocate_entity_zero(entity_kind_t, entity_namespace_t, symbol_t*, source_position_t const*); +entity_t *allocate_entity_zero(entity_kind_t, entity_namespace_t, symbol_t*, position_t const*); elf_visibility_tag_t get_elf_visibility_from_string(const char *string);