blob: f9ee5a631c2ee870819fefe6c1c701eb426d1508 [file] [log] [blame]
The Android Open Source Project9f5d49a2009-03-03 19:30:03 -08001.TH ANSI2KNR 1 "19 Jan 1996"
2.SH NAME
3ansi2knr \- convert ANSI C to Kernighan & Ritchie C
4.SH SYNOPSIS
5.I ansi2knr
6[--varargs] input_file [output_file]
7.SH DESCRIPTION
8If no output_file is supplied, output goes to stdout.
9.br
10There are no error messages.
11.sp
12.I ansi2knr
13recognizes function definitions by seeing a non-keyword identifier at the left
14margin, followed by a left parenthesis, with a right parenthesis as the last
15character on the line, and with a left brace as the first token on the
16following line (ignoring possible intervening comments). It will recognize a
17multi-line header provided that no intervening line ends with a left or right
18brace or a semicolon. These algorithms ignore whitespace and comments, except
19that the function name must be the first thing on the line.
20.sp
21The following constructs will confuse it:
22.br
23 - Any other construct that starts at the left margin and follows the
24above syntax (such as a macro or function call).
25.br
26 - Some macros that tinker with the syntax of the function header.
27.sp
28The --varargs switch is obsolete, and is recognized only for
29backwards compatibility. The present version of
30.I ansi2knr
31will always attempt to convert a ... argument to va_alist and va_dcl.
32.SH AUTHOR
33L. Peter Deutsch <ghost@aladdin.com> wrote the original ansi2knr and
34continues to maintain the current version; most of the code in the current
35version is his work. ansi2knr also includes contributions by Francois
36Pinard <pinard@iro.umontreal.ca> and Jim Avera <jima@netcom.com>.