Commit Graph

27 Commits

Author SHA1 Message Date
bapt
0b5952ee32 Improve m4 compatibility with GNU m4 extension ** (exponent)
Submitted by:	Marc Espie (espie@OpenBSD.org)
Approved by:	des@ (mentor)
2012-04-15 13:25:51 +00:00
bz
6eb0dc9dd3 Unbreak the build after r228697 adding the { } block to make clear which
if the else belongs to.
2011-12-19 08:50:17 +00:00
bapt
e5ed194323 Reimplement support for the ** (exponent) gnu extension, make it available thought the -g (mimic gnu) option
Reviewed by:	cognet
Approved by:	cognet
Discussed with:	espie@OpenBSD.org (upstream)
2011-12-18 22:04:55 +00:00
bapt
0d5c584942 Synchronize with laster version of m4 from OpenBSD and NetBSD
This bring better compatibility with gnum4

Reviewed by:	cognet
Approved by:	cognet
Obtained from:	OpenBSD, NetBSD
2011-11-28 13:32:39 +00:00
joel
29af67e52c Remove the advertising clause from UCB copyrighted files in usr.bin. This
is in accordance with the information provided at
ftp://ftp.cs.berkeley.edu/pub/4bsd/README.Impt.License.Change

Also add $FreeBSD$ to a few files to keep svn happy.

Discussed with:	imp, rwatson
2010-12-11 08:32:16 +00:00
tjr
1d5fa9d950 Store a pointer to "null" in struct ndblock's defn member instead of a
duplicate allocated on the heap; the address defn points to is significant,
and is checked against the address of "null" in certain conditionals.

PR:		59883
MFC after:	1 week
2004-08-16 14:18:22 +00:00
tjr
ddbd6efafa Flush streams before calling system() so that the output appears in the
right place in the output stream when redirected to a file (when full
buffering is enabled). Noticed by schweikh on freebsd-standards.
2003-05-01 02:36:27 +00:00
jmallett
5cf2af5a27 Kill extraneous whitespace. 2002-07-15 02:15:12 +00:00
jmallett
fc27b969e8 Revert vendor identifiers, and #if 0 what is #if 0/#else for OpenBSD.
Add __FBSDID() properly.

Requested by:	bde, mike
2002-05-03 14:48:21 +00:00
jmallett
5f1aa32acd Merge local changes again, against ANSIfied m4(1). 2002-05-01 21:37:29 +00:00
jmallett
ecccdb8703 Crank WARNS.
Cast sizeof() to (int), as it's being compared against an int, not a size_t.
If i is changed to a size_t, it means the logic must be slightly changed later
in the flow, where --i is checked to be >= 0.  I am not sure I want to make a
logic change to account for clearing up a warning, when an aesthetic one will
keep from modifying the logic.

Other harmless casts, that I think I've made in the right directions.

Make gpbc() an inline function, rather than an obfuscated macro, make its
scratch space local, rather than global.  The previous macro used a dirty
hack (logical AND in place of a conditional) which would lead GCC to throw
a fit (rightly so) as the logical check, as well as the incrementation of
a variable, were not used for anything.

const'ify a few places where gcc3 yells. xstrdup() some global consts in
places where we xstrdup() when not using consts, but tried to assign them
to non-consts before.

Don't use execv(2) if we don't have the kind of arguments it wants.

Reviewed by:    asmodai obrien tjr
Submitted by:   tjr (a gcc3 build log)
2002-04-20 01:49:10 +00:00
jmallett
b38bbfea3b Bring OpenBSD m4(1) off of the OPENBSD vendor branch, and add the -s option,
$FreeBSD$ identifiers, and fix initialisation to stderr to happen in a function
as stderr is not the same in CURRENT as in OpenBSD.

Reviewed by:	obrien
2002-04-19 17:26:21 +00:00
jmallett
116615d3b6 This adds support for -s to the m4(1) utility, which causes #line directives
to be emitted as per the C preprocessor.  It updates the manual page in
regards to standards accordingly.

PR:		standards/36075
Submitted by:	tjr
Reviewed by:	mike
MFC after:	1 week
2002-04-17 17:26:32 +00:00
obrien
0004ccf798 Remove the local basename in favor of the libc version.
Remove xmalloc and xstrdup and do the error checking at the place of use.
2001-07-24 14:09:47 +00:00
gshapiro
2dc2275139 Make sure the len() builtin always returns an answer. Previously,
len(`') didn't return an answer.  Now it returns 0.

PR:		bin/12942
MFC after:	5 days
2001-05-29 03:32:38 +00:00
gshapiro
5201154685 String operations could silently truncate long strings, leaving the output
corrupted.  Mark's patch fixes this be removing the MAXTOK limitation on
substring operations and allowing the putback buffer size to be the limiting
factor.  If the putback buffer size if reached, m4 gives an error instead of
silently truncating the string.

PR:		bin/26619
Submitted by:	Mark Peek <mark-ml@whistle.com>
MFC after:	5 days
2001-05-18 18:35:34 +00:00
kris
a5289e99bd Fix format string warnings.
Submitted by:	nra
Obtained from:	NetBSD
2000-11-27 04:26:39 +00:00
peter
3b842d34e8 $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
steve
06aec80098 Make the builtin unix macro work as it should (well like Solaris's,
GNU's, and OSF1's).
1998-09-07 22:09:13 +00:00
jlemon
3d3878a0ed divnum is no longer silently restricted to the range 0..9. (cf: 4098)
changequote(,) is now a synonym for changequote().	 	(cf: 803)

buffer size for translit() enlarged to handle a full string

PR:		803, 4098
1997-08-18 21:01:45 +00:00
charnier
4c63237bb0 Use err(3) instead of local redefinition. Remove progname. 1997-07-23 06:50:06 +00:00
joerg
ed5e079990 Make the $@ macro behave as described in the man page.
This patch has been submitted by Andreas Burmester (i think) on the
German Usenet long ago.  Andreas told me that our m4 has quite more
subtle bugs, so we might consider using NGU m4 instead.
1997-04-13 17:51:32 +00:00
rgrimes
a14d555c87 Remove trailing whitespace. 1995-05-30 06:41:30 +00:00
ache
7de0762f0a 1) kill temp diver upon exit
2) add logical ops, fix ! precedence, implement unary +, fix exp
Obtained from: NetBSD
1995-04-16 23:31:35 +00:00
ache
76821a692c Fix syscmd() output out of sync
Submitted by: smp@clem.systemsix.com
1995-03-11 16:57:54 +00:00
ache
81a63dc6d5 Make m4 more 8bit clean.
Don't use is*(EOF)
This fix core dump when LANG setted to 8bit wide charset
and ENABLE_STARTUP_LOCALE
1994-12-18 23:58:25 +00:00
rgrimes
34f25f0a2a BSD 4.4 Lite Usr.bin Sources 1994-05-27 12:33:43 +00:00