5.1      ANSI C                                                127
5.1.1    The preprocessor                                      127
5.1.2    The keywords const and volatile                       130
5.1.3    Other changes                                         133
5.2      Internals of the SAS/C compiler                       135
5.2.1    Preprocessor symbols                                  135
5.2.2    Compiler-generated symbol references                  136
5.2.3    Memory models                                         136
5.2.3.1  Code models                                           138
5.2.3.2  Data models                                           138
5.2.4    The keywords __near, __far, and __huge                139
5.2.5    Other new keywords                                    140
5.2.6    In-line code                                          142
5.3      Parameters and results in C                           143
5.3.1    Results                                               143
5.3.2    __stdargs - passing parameters on the stack           143
5.3.3    __regargs - passing parameters in D0, D1, A0, and A1  144
5.3.4    __asm - passing parameters in specific registers      144
5.3.5    <stdarg.h> - passing a variable number of parameters  145
5.3.6    Combining C and assembly language                     146
5.4      Compilation                                           147
5.4.1    LC1 - from source code to the quads                   147
5.4.1.1  Preprocessor                                          147
5.4.1.2  Lexical analysis                                      148
5.4.1.3  Parsing (syntactical analysis)                        149
5.4.1.4  Checking (semantic analysis)                          149
5.4.1.5  Translation                                           149
5.4.2    Optimizing the code                                   150
5.4.3    LC2 - from the quads to the object module             150
5.4.4    BLink - tying up the loose ends                       150
5.4.5    Further optimizations                                 151
5.5      Two examples                                          151

Listing dalloc.c                                               153
Listing Makefiles (dalloc.o)                                   154
Listing HelloWorld.c                                           155
Listing HelloAmiga.c                                           155
Listing Makefiles (HelloWorld, HelloAmiga)                     156
Listing AmigaSieve.c                                           156
Listing Makefiles (AmigaSieve)                                 158