+ # Prevent the creation of _x, _y and _z progdefs for vectors
+ SINGLE_VECTOR_DEFS = false
+
+ # Cast vectors to real booleans when used in logic expressions.
+ # This is achieved by using NOT_V.
+ CORRECT_LOGIC = false
+
+ # Always treat empty strings as true. Usuall !"" yields true, because
+ # the string-NOT instruction considers empty strings to be false, while
+ # an empty string as condition for 'if' will be considered true, since
+ # only the numerical value of the global is looked at.
+ TRUE_EMPTY_STRINGS = false
+
+ # Opposite of the above, empty strings are always false. Similar to
+ # CORRECT_LOGIC this will always use NOT_S to cast a string to a real
+ # boolean value.
+ FALSE_EMPTY_STRINGS = false
+
+ # Recognize utf-8 characters in character constants, and encode
+ # codepoint escape sequences in strings as utf-8. This essentially allows
+ # \{1234} escape sequences to be higher than 255.
+ UTF8
+
+ # When a warning is printed and it is set to be treated as error via
+ # a -Werror switch, compilation will be stopped, unless this is false.
+ # When this is false, the rest of the code will be compiled, and at the end
+ # the file and line of the first warning will be shown.
+ BAIL_ON_WERROR = true
+
+ # Allow loops and switches to be labeled and break and continue to take an
+ # optional label to target a specific loop/switch.
+ LOOP_LABELS = false
+
+ # Enable the 'nil' null constant, which has no type. It can be used as the
+ # right hand of any assignment regardless of the required type.
+ UNTYPED_NIL = false
+
+ # Be "permissive". For instance, when -funtyped-nil is used, this allows local
+ # variables with the name 'nil' to be declared.
+ PREMISSIVE = false
+
+ # Allow vararg access from within QC of the form: ...(argnumber, type)
+ VARIADIC_ARGS = true
+
+ # Most Quake VMs, including the one from FTEQW or up till recently
+ # Darkplaces, do not cope well with vector instructions with overlapping
+ # input and output. This option will avoid producing such code.
+ LEGACY_VECTOR_MATHS = true
+
+ # Builtin-numbers are usually just immediate constants.
+ # The following allows whole expressions to be used, as long as they
+ # are compile-time constant.
+ EXPRESSIONS_FOR_BUILTINS = false
+