mario@177: /* mario@177: * (c) 2009 Mario de Sousa mario@177: * mario@177: * Offered to the public under the terms of the GNU General Public License mario@177: * as published by the Free Software Foundation; either version 2 of the mario@177: * License, or (at your option) any later version. mario@177: * mario@177: * This program is distributed in the hope that it will be useful, but mario@177: * WITHOUT ANY WARRANTY; without even the implied warranty of mario@177: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General mario@177: * Public License for more details. mario@177: * mario@177: * This code is made available on the understanding that it will not be mario@177: * used in safety-critical situations without a full and competent review. mario@177: */ mario@177: mario@177: /* mario@177: * An IEC 61131-3 IL and ST compiler. mario@177: * mario@177: * Based on the mario@177: * FINAL DRAFT - IEC 61131-3, 2nd Ed. (2001-12-10) mario@177: * mario@177: */ mario@177: mario@177: mario@177: /* mario@177: * The public interface to stage1_2.cc mario@177: */ mario@177: mario@177: mario@177: mario@177: #ifndef _STAGE1_2_HH mario@177: #define _STAGE1_2_HH mario@177: mario@177: mario@177: mario@177: /* mario@177: * This file includes the interface through which the main function accesses the stage1_2 services mario@177: */ mario@177: mario@177: mario@177: mario@177: typedef struct { mario@177: /******************************************************/ mario@177: /* whether we are suporting safe extensions */ mario@177: /* as defined in PLCopen - Technical Committee 5 */ mario@177: /* Safety Software Technical Specification, */ mario@177: /* Part 1: Concepts and Function Blocks, */ mario@177: /* Version 1.0 – Official Release */ mario@177: /******************************************************/ mario@177: bool safe_extensions; mario@177: /* error messages specify full token location */ mario@177: bool full_token_loc; mario@177: /* Include directory, where included files will be searched for... */ mario@177: const char *includedir; mario@177: } stage1_2_options_t; mario@177: mario@177: mario@177: int stage1_2(const char *filename, symbol_c **tree_root, stage1_2_options_t options); mario@177: mario@177: mario@177: mario@177: mario@177: mario@177: #endif /* _STAGE1_2_HH */