ANSI2KNR(1)

NAME
ansi2knr - convert ANSI C to Kernighan & Ritchie C

SYNOPSIS
ansi2knr [--filename filename] [input_file [output_file]]

DESCRIPTION
--filename provides the file name for the #line directive in the output, overriding input_file (if present).

If no input_file is supplied, input is read from stdin.

If no output_file is supplied, output goes to stdout.

There are no error messages.

ansi2knr recognizes function definitions by seeing a non-keyword identifier at the left margin, followed by a left parenthesis, with a right parenthesis as the last character on the line, and with a left brace as the first token on the following line (ignoring possible intervening comments). It will recognize a multi-line header provided that no intervening line ends with a left or right brace or a semicolon. These algorithms ignore whitespace and comments, except that the function name must be the first thing on the line.

The following constructs will confuse it:
     - Any other construct that starts at the left margin and follows the above syntax (such as a macro or function call).
     - Some macros that tinker with the syntax of the function header.

The --varargs switch is obsolete, and is recognized only for backwards compatibility. The present version of ansi2knr will always attempt to convert a ... argument to va_alist and va_dcl.

AUTHOR
L. Peter Deutsch <ghost@aladdin.com> wrote the original ansi2knr and continues to maintain the current version; most of the code in the current version is his work. ansi2knr also includes contributions by Francois Pinard <pinard@iro.umontreal.ca> and Jim Avera <jima@netcom.com>.