Man Linux: Main Page and Category List

NAME

       occ - OpenC++ compiler

SYNOPSIS

       occ  [ -g ] [ -M option=value ] [ -l ] [ -S metaclass ] [ -s ] [ -V ] [
       -v ] [ -w ]
           [ -n ] [ -p ] [ -E ] [ -c ] [ -P ] [ -m file_name ]
           [ -I directory ] [ -D name=def ] [ -d option ] [ -C ]
           [ --regular-c++ ]
           [  -- C++ compiler options ] source_file

DESCRIPTION

       occ applying a meta-level program to an OpenC++ program,  and  compiles
       the result program.

       Full documentation can be found in /usr/share/doc/openc++.

OPTIONS

   MAIN OPTIONS
       -g     Produce debugging information.

       -M option=value
              Specify an option with value.  It is passed to metaobjects.

       -l     Print the list of statically loaded metaclasses.

       -S metaclass
              Load a metaclass.

       -s     Print  the  whole parse tree of the given source program.  Don’t
              perform translation or compilation.  If no source file is given,
              occ reads from the standard input.

       -V     Show the version number.

       -v     Specify the verbose mode.

       -w     Enable wide characters support.

   BUILDING STAGES OPTIONS
       -n     Suppress invoking the preprocessor.

       -p     Stop after the parsing stage.  No translation is done.

       -E     Don’t  run  the  back-end C++ compiler.  Stop after generating a
              .ii file.

       -c     Suppress linking and produce a .o file.

       -P     Preprocess again after translation.

       -m file_name
              Produce a shared library (a .so file). This is used to compile a
              metaclass.   If  file_name  is specified, the name of the shared
              library  is  file_name.so.   If  the  -c  option  is   specified
              together, occ produces a .so file, which should be linked by the
              user to be a shared library.

   PREPROCESSOR OPTIONS
       -I directory
              Add a directory to the search path of the #include directive.

       -D name=def
              Define a macro name as def.

       -d option
              Specify a preprocessor option

       -C     Don’t discard comments

   OTHER OPTIONS
       --regular-c++
              Inhibit the extended syntax.  This enables the keyword metaclass
              to  be  used  as  a  variable  name.  This option is useful when
              parsing legacy code being not  intended  to  translation.   When
              this option is used, the symbol __opencxx is not defined.

       --     The  following  options are interpreted as options for the back-
              end C++ compiler. For example, if you type:

              % occ -I.. -- -g foo.c

              Then the -g option is passed to the  C++  compiler.   Note  that
              these  options  are  not passed to the C++ preprocessor.  The -D
              and -I options need to be placed before --.

FILES

       file.{cc,C,c,cpp,cxx,mc} source file.

       file.occ output file after C++ preprocessing.

       file.ii output file after translation.

       file.o object file.

       file.so shared library dynamically loaded by occ.

       /usr/lib/libocc.so library to link with meta-level program.

NOTES

       While the C++ processor is running, the macro __opencxx is  predefined.

       The  programs  compiled  by  occ do not need any runtime libraries or a
       garbage collector unless the meta-level program requires  them  at  the
       base level.

COPYRIGHT

       Copyright (C) 1997, 1998 Shigeru Chiba.  All Rights Reserved.

       Copyright (C) 1995, 1996 Xerox Corporation.  All Rights Reserved.

AUTHOR

       OpenC++ was initially written by Shigeru Chiba<chiba@is.tsukuba.ac.jp>,
       University of Tsukuba, Japan.   It  is  now  further  developped  by  a
       Grzegorz Jakacki <jakacki@hed.com.cn> and other people.

       This  manpage  was  initially  written  by  John Lapeyre for the Debian
       GNU/Linux openc++ package, and was later reformated and updated by Yann
       Dirson.