Mercurial > hg > index.cgi
diff docs/manual.docbook.sgml @ 210:5d969517db74
Added condundefzero pragma
Added pragma condundefzero to allow the assembler to treat symbols that are
undefined in a conditional expression as if their value had been set to
zero.
author | William Astle <lost@l-w.ca> |
---|---|
date | Sat, 09 Jun 2012 16:25:19 -0600 |
parents | 07e1fac76321 |
children | 2cc599f1bebf |
line wrap: on
line diff
--- a/docs/manual.docbook.sgml Sat Jun 09 16:03:36 2012 -0600 +++ b/docs/manual.docbook.sgml Sat Jun 09 16:25:19 2012 -0600 @@ -1673,6 +1673,25 @@ all cases when using the object file assembly target. It is intended for use only when the assembler will be producing the final binary.</para> +<varlistentry> +<term>condundefzero</term> +<listitem> + +<para>This pragma will cause the assembler to change the way it handles +symbols in conditional expressions. Ordinarily, any symbol that is not +defined prior to the conditional will throw an undefined symbol error. With +this pragma in effect, symbols that are not yet defined at the point the +conditional is encountered will be treated as zero.</para> + +<para>This is not the default because it encourages poor code design. One +should use the "IFDEF" or "IFNDEF" conditionals to test for the presence of +a symbol.</para> + +<para>It is important to note that if a symbol is defined but it does not +yet evaluate to a constant value at the point where the conditional appears, +the assembler will still complain about a non constant condition.</para> + + </listitem> </varlistentry>