Awk had the following problem.

Normally tokens are delimited by whitespace rules. That is any
number of spaces or tabs counts as a single delimiter. In normal
awk as long as FS = " \t" whitespace rules always apply. If FS
is anything else normal delimeter rules should apply. That is if
FS=":" the line a::c has 3 tokens, a, NULL, and c.

We were always applying whitespace rules. That is with FS=":"
a::c had two tokens a and c.

This is now fixed.
---------------------------------------------------------------

Awk had the following problem
{ print ($1 + 10) * 5 }
Gave a syntax error because print ( was detected first.

This is now fixed.

Steve made an improved make that uses $SRCPATH the Makefile now
takes advantage of this.
---------------------------------------------------------------

Awk had the following problem
\ new line did not allow continuation lines.
{ print \
	$1 }
Gave a syntax error.
This is now fixed.
---------------------------------------------------------------

Awk had the following problem.
There was no provision for unary minus. It was treated as
a syntax error.

This is now fixed.

---------------------------------------------------------------

Awk had the following bug. The input line
	b	c
Intrepeted b as field 1 and c as field 2.

This is now fixed. b is field 2 and c is field 3.

---------------------------------------------------------------
If awk tried to store at say $3 on a line with only one field It
would end up storing at the famous unitialized pointer. Now it
will attempt to add the correct number of trailing delimeters
and then add the field at the end. If white space rules are in
effect and more than one trailing delimeter is needed there will
be a warning message and the field will be added at the end as
though whitespace rules were not in effect.

---------------------------------------------------------------
Awk would not allow concatination as a pattern.
($1 $2) == "abc" {	some stuff	}
Was a syntax error. This now works.

---------------------------------------------------------------
If awk used a split() to break up a line multiple delimeters
were always counted as one and leading delimeters were skipped.
This is now fixed.

---------------------------------------------------------------
If awk tried to store $3 on a line with an insufficient number
of fields and trailing delimeters it added new delimeters
without removing the old ones.
---------------------------------------------------------------
Awk reported the wrong number of fields where there were trailing
delimeters. It failed to update the number of fields when new
fields were added at the end. This is fixed. (awk[35].c)
---------------------------------------------------------------
Awk did not accept names with underscores. This is fixed (awk1.c)
---------------------------------------------------------------
Thu Feb  4 13:50:09 1993 PST
Changes by steve to support "for (; cond; incr)" with absent initializer:
awk.h	Deleted bogus sprintf declaration.
awk.y	Added new FOR_ production with absent initializer.
awk3.c	Changed AFOR code to evaluate initializer only if present.
---------------------------------------------------------------
