X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=doc%2Fsdccman.lyx;h=ad51a397788090778617328c2cfcac89361e66ba;hb=cef12c69ab501761cf047459c40d80f6c9860e3e;hp=eb86721ef83b63b2524b8c59078b4bfb35c31135;hpb=1067daf7a0913c15972b142982e36b7338e977ea;p=fw%2Fsdcc diff --git a/doc/sdccman.lyx b/doc/sdccman.lyx index eb86721e..ad51a397 100644 --- a/doc/sdccman.lyx +++ b/doc/sdccman.lyx @@ -1,4 +1,4 @@ -#LyX 1.4.3 created this file. For more info see http://www.lyx.org/ +#LyX 1.4.5 created this file. For more info see http://www.lyx.org/ \lyxformat 245 \begin_document \begin_header @@ -104,7 +104,7 @@ SDCC Compiler User Guide \begin_layout Date \size normal -SDCC 2.7.4 +SDCC 2.8.0 \size footnotesize \newline @@ -868,7 +868,51 @@ char type parameters to vararg \end_inset - functions are casted to int unless explicitly casted + functions are casted to int unless explicitly casted and +\series bold +- +\begin_inset ERT +status collapsed + +\begin_layout Standard + + +\backslash +/ +\end_layout + +\end_inset + +-std-c89 +\begin_inset LatexCommand \index{-\/-std-c89} + +\end_inset + + +\series default +and +\series bold + - +\begin_inset ERT +status collapsed + +\begin_layout Standard + + +\backslash +/ +\end_layout + +\end_inset + +-std-c99 +\begin_inset LatexCommand \index{-\/-std-c99} + +\end_inset + + +\series default + command line option are not defined \begin_inset Marginal status collapsed @@ -897,7 +941,97 @@ n", a, (char)a); \family default \newline - will push a as an int and as a char resp. + will push a as an int and as a char resp if +\series bold + - +\begin_inset ERT +status collapsed + +\begin_layout Standard + + +\backslash +/ +\end_layout + +\end_inset + +-std-c89 +\begin_inset LatexCommand \index{-\/-std-c89} + +\end_inset + + +\series default +and +\series bold + - +\begin_inset ERT +status collapsed + +\begin_layout Standard + + +\backslash +/ +\end_layout + +\end_inset + +-std-c99 +\begin_inset LatexCommand \index{-\/-std-c99} + +\end_inset + + +\series default + command line options are not defined, +\newline + will push a as two ints if +\series bold + - +\begin_inset ERT +status collapsed + +\begin_layout Standard + + +\backslash +/ +\end_layout + +\end_inset + +-std-c89 +\begin_inset LatexCommand \index{-\/-std-c89} + +\end_inset + + +\series default +or +\series bold + - +\begin_inset ERT +status collapsed + +\begin_layout Standard + + +\backslash +/ +\end_layout + +\end_inset + +-std-c99 +\begin_inset LatexCommand \index{-\/-std-c99} + +\end_inset + + +\series default + command line option is defined. \end_layout \begin_layout Itemize @@ -8836,6 +8970,34 @@ Force a called function to always save BC. \begin_layout List \labelwidthstring 00.00.0000 +\series bold +- +\begin_inset ERT +status collapsed + +\begin_layout Standard + + +\backslash +/ +\end_layout + +\end_inset + +-no-std-crt0 +\series default + +\begin_inset LatexCommand \index{Z80!Options!-\/-no-std-crt0} + +\end_inset + + When linking, skip the standard crt0.o object file. + You must provide your own crt0.o for your system when linking. +\end_layout + +\begin_layout List +\labelwidthstring 00.00.0000 + \series bold -bo \series default @@ -22585,7 +22747,7 @@ The compiler creates the following #defines \begin_layout Standard \begin_inset Tabular - + @@ -22955,7 +23117,7 @@ when \end_inset - + \begin_inset Text @@ -22981,6 +23143,158 @@ when is used \end_layout +\end_inset + + + + +\begin_inset Text + +\begin_layout Standard +SDCC_REVISION +\begin_inset LatexCommand \index{SDCC\_REVISION} + +\end_inset + + +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Standard +Always defined. + SDCC svn revision number +\end_layout + +\end_inset + + + + +\begin_inset Text + +\begin_layout Standard +SDCC_PARMS_IN_BANK1 +\begin_inset LatexCommand \index{SDCC\_PARMS\_IN\_BANK1} + +\end_inset + + +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Standard +when +\emph on +- +\begin_inset ERT +status collapsed + +\begin_layout Standard + + +\backslash +/ +\end_layout + +\end_inset + +-parms-in-bank1 +\emph default + is used +\end_layout + +\end_inset + + + + +\begin_inset Text + +\begin_layout Standard +SDCC_FLOAT_REENT +\begin_inset LatexCommand \index{SDCC\_MODEL\_FLAT24} + +\end_inset + + +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Standard +when +\emph on +- +\begin_inset ERT +status collapsed + +\begin_layout Standard + + +\backslash +/ +\end_layout + +\end_inset + +-float-reent +\emph default + is used +\end_layout + +\end_inset + + + + +\begin_inset Text + +\begin_layout Standard +SDCC_INT_LONG_REENT +\begin_inset LatexCommand \index{SDCC\_INT\_LONG\_REENT} + +\end_inset + + +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Standard +when +\emph on +- +\begin_inset ERT +status collapsed + +\begin_layout Standard + + +\backslash +/ +\end_layout + +\end_inset + +-int-long-reent +\emph default + is used +\end_layout + \end_inset @@ -25644,7 +25958,7 @@ mv picDEVICE.c /path/to/sdcc/device/lib/pic16/libdev \begin_layout Enumerate Add DEVICE to \family typewriter -/path/to/sdcc/device/lib/pics.all +/path/to/sdcc/device/lib/pic16/pics.all \family default (and \family typewriter @@ -36604,7 +36918,11 @@ status collapsed \end_inset - or - + +\series default +or +\series bold + - \begin_inset ERT status collapsed @@ -36640,6 +36958,124 @@ t', 'near', 'nonbanked', 'pdata', 'reentrant', 'sbit', 'sfr', 'shadowregs', '__data' instead of 'data'. \end_layout +\begin_layout Itemize +Integer promotion of variable arguments is not performed if the argument + is explicitly taypecasted unless the +\series bold + - +\begin_inset ERT +status collapsed + +\begin_layout Standard + + +\backslash +/ +\end_layout + +\end_inset + +-std-c89 +\begin_inset LatexCommand \index{-\/-std-c89} + +\end_inset + + +\series default +or +\series bold + - +\begin_inset ERT +status collapsed + +\begin_layout Standard + + +\backslash +/ +\end_layout + +\end_inset + +-std-c99 +\begin_inset LatexCommand \index{-\/-std-c99} + +\end_inset + + +\series default + command line options are used. +\end_layout + +\begin_deeper +\begin_layout Verse + +\family typewriter +void vararg_func (char *str, ...) { str; } +\newline + +\newline +void main (void) +\newline +{ +\newline +\InsetSpace ~ +\InsetSpace ~ +char c = 10; +\newline + +\newline +\InsetSpace ~ +\InsetSpace ~ +/* argument + u is promoted to int before +\newline +\InsetSpace ~ +\InsetSpace ~ +\InsetSpace ~ +* passing to function */ +\newline +\InsetSpace ~ +\InsetSpace ~ +vararg_func ("%c", c); +\newline + +\newline +\InsetSpace ~ +\InsetSpace ~ +/* + argument u is not promoted to int, +\newline +\InsetSpace ~ +\InsetSpace ~ +\InsetSpace ~ +* it is passed as char to function +\newline +\InsetSpace ~ +\InsetSpace ~ +\InsetSpace ~ +* if + --std-cXX is not defined; +\newline +\InsetSpace ~ +\InsetSpace ~ +\InsetSpace ~ +* is promoted to int before passing +\newline +\InsetSpace ~ +\InsetSpace ~ +\InsetSpace ~ +* to function + if --std-cXX is defined */ +\newline +\InsetSpace ~ +\InsetSpace ~ +vararg_func ("%bc", (char)u); +\newline +} +\end_layout + +\end_deeper \begin_layout Section Cyclomatic Complexity \begin_inset LatexCommand \index{Cyclomatic complexity} @@ -40291,7 +40727,7 @@ Acknowledgments \end_layout \begin_layout Standard -\begin_inset LatexCommand \url{http://sdcc.sourceforge.net#Who} +\begin_inset LatexCommand \url{http://sdcc.sourceforge.net/#Who} \end_inset