Subject: CVS commit: basesrc
To: None <source-changes@netbsd.org>
From: Jaromir Dolecek <jdolecek@netbsd.org>
List: source-changes
Date: 09/19/2000 20:20:01
Module Name:	basesrc
Committed By:	jdolecek
Date:		Tue Sep 19 17:20:01 UTC 2000

Modified Files:
	basesrc/bin/expr: Makefile expr.1
Added Files:
	basesrc/bin/expr: expr.y
Removed Files:
	basesrc/bin/expr: expr.c

Log Message:
reimplement expr using lexical parser generated by yacc
highlights:
* / is treated correctly depending upon context (addresses PR # 10995)
* use 64 bit arithmetic, so expr is able to process integer values from
	-(2**63) to (2**63 - 1)
* checks for integer over- & underflows added
* error messages improved, more error checking added

add AUTHOR section to manpage
add BUGS section, and mention possible drawbacks with other expr implementations

XXX the old expr treated empty string in arithmetic expressions as if it was 0
XXX this behaviour has been retained


To generate a diff of this commit:
cvs rdiff -r1.13 -r1.14 basesrc/bin/expr/Makefile basesrc/bin/expr/expr.1
cvs rdiff -r1.12 -r0 basesrc/bin/expr/expr.c
cvs rdiff -r0 -r1.17 basesrc/bin/expr/expr.y

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.