--- a/main.hh Sun Nov 16 12:54:10 2014 +0000
+++ b/main.hh Sun Nov 16 14:46:52 2014 +0000
@@ -36,6 +36,29 @@
+/* Compiler options, specified at runtime on the command line */
+
+typedef struct {
+ /* options specific to stage1_2 */
+ bool safe_extensions; /* support SAFE_* datatypes defined in PLCOpen TC5 "Safety Software Technical Specification - Part 1" v1.0 */
+ bool full_token_loc; /* error messages specify full token location */
+ bool conversion_functions; /* Create a conversion function for derived datatype */
+ bool nested_comments; /* Allow the use of nested comments. */
+ bool ref_standard_extensions; /* Allow the use of REFerences (keywords REF_TO, REF, DREF, ^, NULL). */
+ bool ref_nonstand_extensions; /* Allow the use of non-standard extensions to REF_TO datatypes: REF_TO ANY, and REF_TO in struct elements! */
+ const char *includedir; /* Include directory, where included files will be searched for... */
+
+ /* options specific to stage3 */
+ bool relaxed_datatype_model; /* Use the relaxed datatype equivalence model, instead of the default strict equivalence model */
+} runtime_options_t;
+
+extern runtime_options_t runtime_options;
+
+
+
+
+
+
/* Function used throughout the code --> used to report failed assertions (i.e. internal compiler errors)! */
#include <stddef.h> /* required for NULL */