X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=doc%2Fsdccman.lyx;h=c3ded3d94a44b57b2d7b9fae8658478a0fe306fd;hb=3701534f4fc43dfdffddd514220f41d3006ad61c;hp=931915d9b53bb7dd1d666d995dcf0a2a8e1137aa;hpb=899f9f1fe37b1399c5a9b4c3300bdecb10333a55;p=fw%2Fsdcc diff --git a/doc/sdccman.lyx b/doc/sdccman.lyx index 931915d9..c3ded3d9 100644 --- a/doc/sdccman.lyx +++ b/doc/sdccman.lyx @@ -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 @@ -10393,6 +10527,33 @@ status collapsed \begin_layout Standard +\backslash +/ +\end_layout + +\end_inset + +-Werror +\begin_inset LatexCommand \index{-\/-Werror} + +\end_inset + + +\series default + Treat all warnings as errors. +\end_layout + +\begin_layout List +\labelwidthstring 00.00.0000 + +\series bold +- +\begin_inset ERT +status collapsed + +\begin_layout Standard + + \backslash / \end_layout @@ -22558,7 +22719,7 @@ The compiler creates the following #defines \begin_layout Standard \begin_inset Tabular - + @@ -22928,7 +23089,7 @@ when \end_inset - + \begin_inset Text @@ -22954,6 +23115,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 @@ -25617,7 +25930,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 @@ -36577,7 +36890,11 @@ status collapsed \end_inset - or - + +\series default +or +\series bold + - \begin_inset ERT status collapsed @@ -36613,6 +36930,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} @@ -40264,7 +40699,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