/*
 *  MODULE  : option.h
 *  command line scanner
{*  last modification:  10.11.92  15:24   }

 *  uli 26.08.91 : on_handling added.
 *  uli 09.01.92 : ov_abort added.
 *  uli 14.01.92 : ov_abort preceded by ",".
 *  uli 14.02.92 : ov_handling added.
 *  uli 17.02.92 : on_fastfor added.
 *  PJ  10.11.92 : on_print_check added.
*/


extern boolean     /*          Compiler flags, set per user option
  os_ variables specify, whether the option was set by a command line option,
  on_ variables indicate the current state of the compiler flag,
  user specified   on or off
 +--------------+---------------+---------------------- */
  os_verbose    ,  on_verbose , /* verbose compiler     */
  os_list       ,  on_list    , /* listing to file      */
  os_warning    ,  on_warning , /* report warnings      */
  os_merge      ,  on_merge   , /* merge source in code */
  os_code       ,  on_code    , /* code generation      */
  os_rename     ,  on_rename  , /* rename Pascal idents */
  os_index      ,  on_index   , /* index check          */
  os_number     ,  on_number  , /* linenumbers in code  */
  os_include    ,  on_include , /* include "filename"   */
  os_terminal   ,  on_terminal, /* code to terminal     */
  os_handling   ,  on_handling, /* explain error handling */
  os_fastfor    ,  on_fastfor , /* for-loops for vector processors */
  os_bib        ,  on_bib     , /* generate bibliothec file */
  os_dump       ,  on_dump    , /* structab dump        */
                   on_srcdir  , /* output to source-dir or current-dir */
                   on_remove  , /* remove all output files in case of error */
                   on_prototyp, /* new-style prototype declarations */
                   on_stdmodule,/* compiling standard module */
                   on_reverse , /* link modules in reverve order */
  os_print_check,  on_print_check, /* print CHECK messages */
  /* . . . . . to be continued */
  os_dummy      ;

extern  char
  *ov_real ,              /* filename specified by real option */
  *ov_include ;           /* filename specified by include option */

extern  int
   ov_idlength ,          /* identifier length accepted by linker */
   ov_abort    ,          /* abort compilation after ov_abort errors */
   ov_handling ;          /* length of lookahead queue */

#ifdef LINT_ARGS
global char * readoptions (int argc, char * argv[] ) ;
  /* sets compiler flags listed above and returns the last specified filename */
  /* or displays the possible options and aborts. */
#else
global char * readoptions (/* argc,argv */) ;
#endif

