ANSI2KNR(1) ANSI2KNR(1)
19 Jan 1996
NAME
ansi2knr - convert ANSI C to Kernighan & Ritchie C
SYNOPSIS
ansi2knr [--varargs] input_file [output_file]
DESCRIPTION
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>.
- 1 - Formatted: December 17, 2025