Added memory protection to prevent mismatching of mem_d or vec_free on pointers which are otherwise unknown to be allocated memory or allocated vectors. Also fixed the preprocessor to only strip on ' ' and '\t' around macros.
Only increment the buffer location for macro output whitespace stripping if the situation is actually stripable, otherwise macros like #define foo(X) bar(#X), with foo(test) will expand to bartest) instead of bar(test). This should fix Xonotic builds.
Fix style
implement INSTR_STATE in the qcvm
use INSTR_STATE by default, add -femulate-state to switch to emulation, and -state-fps=NUM to set its emulation FPS
add tests for INSTR_STATE and -femulate-state
On platforms that the byte order check fails on the runtime test is concluded instead. It still needs these swap functions at compile time since the runtime test has to run. This fixes a FTBFS on BE selected ARMs.
Merge branch 'master' into cooking
Perliminary work on arithmetic exception handling in the constant evaluator. We can safely check for arithmetic underflow, overflow, divison by zero and inexactness now. Inexactness of expressions are propagated through the AST such that using an inexact value in a comparison will trigger a warning with -Winexact-compares.
Use flags instead.
Disable stupid clang warning.
Don't forget the BSDmakefile too.
Arithmetic exception flag and a plethora of tests.
Merge branch 'master' into cooking
this should be NULL
Some things. Fix testsuite as well. One test will fail (inexact).
Mage inexact travel across constants.
propagate the 'inexact' flag on when initializing a constant
local compile-time const values are now created as globals, thus they're now subject to constant-folding
Some CLZ for other toolchains.