-->

Previous | Table of Contents | Next

Page 159

_Wtemplate_debugging When using templates in a C++ program, warn if debugging is not yet fully available.
_w Inhibit all warning messages.
+eN Control how virtual function definitions are used, in a fashion compatible with cfront 1.x.

PRAGMAS

Two #pragma directives are supported for GNU C++, to permit using the same header file for two purposes: as a definition of interfaces to a given object class, and as the full definition of the contents of that object class.

#pragma interface Use this directive in header files that define object classes, to save space in most of the object files that use those classes. Normally, local copies of certain information (backup copies of inline member functions, debugging information, and the internal tables that implement virtual functions) must be kept in each object file that includes class definitions. You can use this pragma to avoid such duplication. When a header file containing #pragma interface is included in a compilation, this auxiliary information will not be generated (unless the main input source file itself uses #pragma implementation). Instead, the object files will contain references to be resolved at link time.
#pragma implementation Use this pragma in a main input file, when you want full output from included
#pragma implementation !objects.h! header files to be generated (and made globally visible). The included header file, in turn, should use #pragma interface. Backup copies of inline member functions, debugging information, and the internal tables used to implement virtual functions are all generated in implementation files.
If you use #pragma implementation with no argument, it applies to an include file with the same basename as your source file; for example, in allclass.cc, #pragma implementation by itself is equivalent to #pragma implementation "allclass.h". Use the string argument if you want a single implementation file to include code from multiple header files.
There is no way to split up the contents of a single header file into multiple implementation files.

FILES

file.h C header (preprocessor) file
file.i Preprocessed C source
file file.C C++ source file
file.cc C++ source file
file.cxx C++ source file
file.s Assembly language file
file.o Object file
a.out Link edited output
TMPDIR/cc Temporary files
LIBDIR/cpp Preprocessor
LIBDIR/cc1plus Compiler
LIBDIR/collect Linker front end needed on some machines
LIBDIR/libgcc.a GCC subroutine library
/lib/crt[01n].o Start-up routine
LIBDIR/ccrt0 Additional start-up routine for C++
/lib/libc.a Standard C library; see intro(3)

Page 160

/usr/include Standard directory for #include files
LIBDIR/include Standard gcc directory for #include files
LIBDIR/g++_include Additional g++ directory for #include

LIBDIR is usually /usr/local/lib/machine/version.

TMPDIR comes from the environment variable TMPDIR (default /usr/tmp if available, else /tmp).

SEE ALSO

gcc(1), cpp(1), as(1), ld(1), gdb(1), adb(1), dbx(1), sdb(1), gcc, cpp, as, ld, and gdb entries in info.

Using and Porting GNU CC (for version 2.0), Richard M. Stallman; The C Preprocessor, Richard M. Stallman; Debugging with GDB: the GNU Source-Level Debugger, Richard M. Stallman and Roland H. Pesch; Using as: the GNU Assembler, Dean Elsner, Jay Fenlason and friends; gld: the GNU linker, Steve Chamberlain and Roland Pesch.

BUGS

For instructions on how to report bugs, see the GCC manual.

COPYING

Copyright " 1991, 1992, 1993 Free Software Foundation, Inc. Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies.

Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, provided that the entire resulting derived work is distributed under the terms of a permission notice identical to this one.

Permission is granted to copy and distribute translations of this manual into another language, under the above conditions for modified versions, except that this permission notice may be included in translations approved by the Free Software Foundation instead of in the original English.

AUTHORS

See the GNU CC Manual for the contributors to GNU CC.

GNU Tools, 30 April 1993

g3topbm

g3topbm—Convert a Group 3 fax file into a portable bitmap

SYNOPSIS


g3topbm [-kludge][-reversebits][-stretch][g3file]

DESCRIPTION

Reads a Group 3 fax file as input. Produces a portable bitmap as output.

OPTIONS

-kludge Tells g3topbm to ignore the first few lines of the file; sometimes fax files have some junk at the beginning.
-reversebits Tells g3topbm to interpret bits least-significant first, instead of the default most-significant first. Apparently, some fax modems do it one way and others do it the other way. If you get a whole bunch of "bad code word" messages, try using this flag.
-stretch Tells g3topbm to stretch the image vertically by duplicating each row. This is for the low-quality transmission mode.

All flags can be abbreviated to their shortest unique prefix.

Page 161

REFERENCES

The standard for Group 3 fax is defined in CCITT Recommendation T.4.

BUGS

Probably.

SEE ALSO

pbmtog3(1), pbm(5)

AUTHOR

Copyright " 1989 by Paul Haeberli (paul@manray.sgi.com)

2 October 1989

gawk

gawk—Pattern scanning and processing language

SYNOPSIS


gawk [ POSIX or GNU style options ] _f program-file [ __ ] file ...

gawk [ POSIX or GNU style options ] [ __ ] program-text file ...

DESCRIPTION

gawk is the GNU Project's implementation of the awk programming language. It conforms to the definition of the language in the 1003.2 Command Language and Utilities Standard. This version in turn is based on the description in The AWK Programming Language, by Aho, Kernighan, and Weinberger, with the additional features defined in the System V Release 4 version of awk. gawk also provides some GNU-specific extensions.

The command line consists of options to gawk itself, the awk program text (if not supplied via the _f or __file options), and values to be made available in the ARGC and ARGV predefined awk variables.

OPTIONS

gawk options may be either the traditional one-letter options, or the GNU-style long options. Traditional style options start with a single _, while GNU long options start with __. GNU-style long options are provided for both GNU-specific features and for mandated features. Other implementations of the awk language are likely to only accept the traditional one-letter options.

Following the standard, gawk-specific options are supplied via arguments to the _W option. Multiple _W options may be supplied, or multiple arguments may be supplied together if they are separated by commas, or enclosed in quotes and separated by whitespace. Case is ignored in arguments to the _W option. Each _W option has a corresponding GNU-style long option, as detailed below. Arguments to GNU-style long options are either joined with the option by an = sign, with no intervening spaces, or they may be provided in the next command-line argument.

gawk accepts the following options:

_F fs, __field-separator=fs Use fs for the input field separator (the value of the FS-predefined variable).
_v var=val, __assign=var=val Assign the value val, to the variable var, before execution of the program begins. Such variable values are available to the BEGIN block of an awk program.
_f program-file, Read the awk program source from the file program-file, instead of from the first
__file=program-file command-line argument. Multiple _f (or __file) options may be used.
_mf=NNN, _mr=NNN Set various memory limits to the value NNN. The f flag sets the maximum number of fields, and the r flag sets the maximum record size. These two flags and the _m option are from the AT&T Bell Labs research version of awk. They are ignored by gawk, since gawk has no predefined limits.

Previous | Table of Contents | Next