diff -r 0c2ef191b22a -r d48f53715f77 absyntax_utils/search_base_type.hh --- a/absyntax_utils/search_base_type.hh Wed Feb 01 13:01:08 2012 +0000 +++ b/absyntax_utils/search_base_type.hh Wed Feb 01 19:49:11 2012 +0000 @@ -1,7 +1,7 @@ /* * matiec - a compiler for the programming languages defined in IEC 61131-3 * - * Copyright (C) 2003-2011 Mario de Sousa (msousa@fe.up.pt) + * Copyright (C) 2003-2012 Mario de Sousa (msousa@fe.up.pt) * Copyright (C) 2007-2011 Laurent Bessard and Edouard Tisserant * * This program is free software: you can redistribute it and/or modify @@ -60,18 +60,27 @@ search_base_type_c(void); public: - void *visit(identifier_c *type_name); + symbol_c *get_basetype_decl(symbol_c *symbol); + symbol_c *get_basetype_id (symbol_c *symbol); bool type_is_subrange(symbol_c* type_decl); bool type_is_enumerated(symbol_c* type_decl); public: - /*********************/ - /* B 1.2 - Constants */ - /*********************/ - - /******************************/ - /* B 1.2.1 - Numeric Literals */ - /******************************/ + /*************************/ + /* B.1 - Common elements */ + /*************************/ + /*******************************************/ + /* B 1.1 - Letters, digits and identifiers */ + /*******************************************/ + void *visit(identifier_c *type_name); + + + /*********************/ + /* B 1.2 - Constants */ + /*********************/ + /******************************/ + /* B 1.2.1 - Numeric Literals */ + /******************************/ /* Numeric literals without any explicit type cast have unknown data type, * so we continue considering them as their own basic data types until * they can be resolved (for example, when using '30+x' where 'x' is a LINT variable, the