main.hh
changeset 946 c012a64dc2fa
parent 890 499486ece119
child 956 513809fbfaf9
equal deleted inserted replaced
945:477393b00f95 946:c012a64dc2fa
    31 
    31 
    32 
    32 
    33 
    33 
    34 #ifndef _MAIN_HH
    34 #ifndef _MAIN_HH
    35 #define _MAIN_HH
    35 #define _MAIN_HH
       
    36 
       
    37 
       
    38 
       
    39 /* Compiler options, specified at runtime on the command line */
       
    40 
       
    41 typedef struct {
       
    42    /* options specific to stage1_2 */
       
    43 	bool safe_extensions;          /* support SAFE_* datatypes defined in PLCOpen TC5 "Safety Software Technical Specification - Part 1" v1.0 */
       
    44 	bool full_token_loc;           /* error messages specify full token location */
       
    45 	bool conversion_functions;     /* Create a conversion function for derived datatype */
       
    46 	bool nested_comments;          /* Allow the use of nested comments. */
       
    47 	bool ref_standard_extensions;  /* Allow the use of REFerences (keywords REF_TO, REF, DREF, ^, NULL). */
       
    48 	bool ref_nonstand_extensions;  /* Allow the use of non-standard extensions to REF_TO datatypes: REF_TO ANY, and REF_TO in struct elements! */
       
    49 	const char *includedir;        /* Include directory, where included files will be searched for... */
       
    50 	
       
    51    /* options specific to stage3 */
       
    52 	bool relaxed_datatype_model;   /* Use the relaxed datatype equivalence model, instead of the default strict equivalence model */
       
    53 } runtime_options_t;
       
    54 
       
    55 extern runtime_options_t runtime_options;
       
    56 
       
    57 
       
    58 
    36 
    59 
    37 
    60 
    38 
    61 
    39  /* Function used throughout the code --> used to report failed assertions (i.e. internal compiler errors)! */
    62  /* Function used throughout the code --> used to report failed assertions (i.e. internal compiler errors)! */
    40 #include <stddef.h>  /* required for NULL */
    63 #include <stddef.h>  /* required for NULL */