X-Git-Url: http://de.git.xonotic.org/?a=blobdiff_plain;f=doc%2Fgmqcc.1;h=66225e482fe5a0df717549b832dce1be0d279eb0;hb=3e6c98d65de86d84381f2a9dfd6c6c027c9fdead;hp=057362f14f3ebdfca862410ffcad3d17481432d4;hpb=49c4da9670b8b58acab4755bca1dd278def6782c;p=xonotic%2Fgmqcc.git diff --git a/doc/gmqcc.1 b/doc/gmqcc.1 index 057362f..66225e4 100644 --- a/doc/gmqcc.1 +++ b/doc/gmqcc.1 @@ -38,7 +38,7 @@ Default optimization level .IP 1 Minimal optimization level .IP 0 -Disable optimization entierly +Disable optimization entirely .RE .TP .BI "-O" name "\fR, " "" -Ono- name @@ -56,6 +56,12 @@ Enable or disable a warning. .B -Wall Enable all warnings. Overrides preceding -W parameters. .TP +.BR -Werror ", " -Wno-error +Controls whether or not all warnings should be treated as errors. +.TP +.BI -Werror- warning "\fR, " "" -Wno-error- warning +Controls whether a specific warning should be an error. +.TP .B -Whelp List all possible warn flags. .TP @@ -110,7 +116,7 @@ them. -f\fIno-\fRcorrect-ternary .fi .in -.SH Warnings +.SH COMPILE WARNINGS .TP .B -Wunused-variable Generate a warning about variables which are declared but never used. @@ -190,7 +196,12 @@ function to an entity's .think function pointer. .TP .B -Wpreprocessor Enable warnings coming from the preprocessor. Like duplicate macro -declarations. +declarations. This warning triggers when there's a problem with the +way the preprocessor has been used, it will \fBnot\fR affect warnings +generated with the '#warning' directive. See -Wcpp. +.TP +.B -Wcpp +Show warnings created using the preprocessor's '#warning' directive. .TP .B -Wmultifile-if Warn if there's a preprocessor \fI#if\fR spanning across several @@ -220,10 +231,18 @@ actually want. We recommend the \fI-fcorrect-ternary\fR option. .B -Wunknown-pragmas Warn when encountering an unrecognized \fI#pragma\fR line. .TP +.B -Wunreachable-code +Warn about unreachable code. That is: code after a return statement, +or code after a call to a function marked as 'noreturn'. +.TP .B -Wdebug Enable some warnings added in order to help debugging in the compiler. You won't need this. -.SH Compile Flags +.B -Wunknown-attribute +Warn on an unknown attribute. The warning will inlclude only the first +token inside the enclosing attribute-brackets. This may change when +the actual attribute syntax is better defined. +.SH COMPILE FLAGS .TP .B -foverlap-locals Allow local variables to overlap with each other if they don't @@ -287,6 +306,36 @@ soption. Normally vectors generate 4 defs, once for the vector, and once for its components with _x, _y, _z suffixes. This option prevents components from being listed. +.TP +.B -fcorrect-logic +Most QC compilers translate if(a_vector) directly as an IF on the +vector, which means only the x-component is checked. This causes +vectors to be cast to actual booleans via a NOT_V and, if necessary, a +NOT_F chained to it. +.in +4 +.nf +if (a_vector) // becomes +if not(!a_vector) +// likewise +a = a_vector && a_float // becomes +a = !!a_vector && a_float +.fi +.in +.TP +.B -ftrue-empty-strings +An empty string is considered to be true everywhere. The NOT_S +instruction usually considers an empty string to be false, this option +effectively causes the unary not in strings to use NOT_F instead. +.TP +.B -ffalse-empty-strings +An empty string is considered to be false everywhere. This means loops +and if statements which depend on a string will perform a NOT_S +instruction on the string before using it. +.TP +.B -futf8 +Enable utf8 characters. This allows utf-8 encoded character constants, +and escape sequence codepoints in the valid utf-8 range. Effectively +enabling escape sequences like '\\{x2211}'. .SH CONFIG The configuration file is similar to regular .ini files. Comments start with hashtags or semicolons, sections are written in square @@ -321,6 +370,10 @@ Here's an example: .SH BUGS Please report bugs on , or see on how to contact us. +.SH FILES +.TP 20 +.B gmqcc.ini.example +A documented example for a gmqcc.ini file. .SH SEE ALSO .IR qcvm (1) .SH AUTHOR