Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
ANSI2KNR(1)		    General Commands Manual		   ANSI2KNR(1)

       ansi2knr	- convert ANSI C to Kernighan &	Ritchie	C

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

       --filename  provides  the file name for the #line directive in the out-
       put, 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	 iden-
       tifier 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  in-
       tervening  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.

       ansi2knr	 also  recognizes  adjacent  string  literals and concatenates

       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.
	    -  String  literals	 whose	concatenation requires rewriting their
       contents; e.g. "ab " "07c" is concatenated to "ab 07c",	which  is  not

       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.

       L.  Peter  Deutsch  <> wrote the original ansi2knr and
       continues to maintain the current version; most of the code in the cur-
       rent  version  is  his  work.   ansi2knr	also includes contributions by
       Francois	Pinard <>, Jim Avera <>,
       and Paul	Eggert <>.

				 8 March 2000			   ANSI2KNR(1)


Want to link to this manual page? Use this URL:

home | help