5.4 Predefined identifiers

  ---------------------------

 

      Identifiers defined by the compiler depending on compilation mode:

 

  __TLS__     compiles Windows (w32, w32c, dll).

  __DLL__     compiles .dll

  __CONSOLE__ compiles a Windows console application

  __WIN32__   compiles a Windows GUI application

  __FLAT__    compiles 32-bit code

  __MSDOS__   compiles 16-bit code

  __TINY__    uses the 'tiny' memory model in 16-bit mode

  __SMALL__   uses the 'small' memory module in 16-bit mode

  __DOS32__   compiles 32-bit DOS code (d32)

  __COM__     compiles a .com file

  __SYS__     compiles a .sys file

  __ROM__     compiles a .rom file

  __OBJ__     compiles an .obj file

  __TEXE__    compiles an .exe file ('tiny' memory model)

  __SEXE__    compiles an .exe file ('small' memory model)

  __MEOS__    compiles an .exe file for MenuetOS (MeOS)

  codesize    compiles, optimizing for code size

  speed       compiles, optimizing for execution speed

  cpu         defines the type of cpu to compile for

          0 - 8086

          1 - 80186

          2 - 80286

          3 - 80386

          4 - 80486

          5 - Pentium

          6 - Pentium MMX

          7 - Pentium II

 

      These identifiers can be checked using directives '#ifdef' or

  '#ifndef'. The identifier 'cpu' may be used only with condition checking

  operators:

 

  #ifdef cpu > 3 // is cpu is later than an 80386