X-Git-Url: https://git.xonotic.org/?p=xonotic%2Fgmqcc.git;a=blobdiff_plain;f=doc%2Fgmqcc.1;h=22150a3110439977c8f39ce2ec522b7619413040;hp=6ede944f1ffb68be44140899140e0ae7ba1e8439;hb=f78d653b1ee1a2b5d4530cb74ec7c10da28ee96f;hpb=179da9241c50a79f76ac9ec9c097702ec21ad2b3 diff --git a/doc/gmqcc.1 b/doc/gmqcc.1 index 6ede944..22150a3 100644 --- a/doc/gmqcc.1 +++ b/doc/gmqcc.1 @@ -320,6 +320,12 @@ marked as such. Warn about possible mistakes caused by missing or wrong parenthesis, like an assignment in an 'if' condition when there's no additional set of parens around the assignment. +.It Fl W Ns Cm unsafe-types +When passing variadic parameters via +.Li ...(N) +it can happen that incompatible types are passed to functions. This +enables several warnings when static typechecking cannot guarantee +consistent behavior. .El .Sh COMPILE FLAGS .Bl -tag -width Ds @@ -518,6 +524,12 @@ float fun() { return = bar(); return; // returns value of bar } +.Ed +.It Fl f Ns Cm unsafe-varargs +When passing on varargs to a different functions, this turns some +static error cases into warnings. Like when the caller's varargs are +restricted to a different type than the callee's parameter. Or a list +of unrestricted varargs is passed into restricted varargs. .El .Sh OPTIMIZATIONS .Bl -tag -width Ds