Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 5 Nov 2012 23:31:23 +0100
From:      Jilles Tjoelker <jilles@stack.nl>
To:        Pawel Jakub Dawidek <pjd@FreeBSD.org>
Cc:        svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org
Subject:   Re: svn commit: r242620 - head/bin/sh
Message-ID:  <20121105223122.GA67582@stack.nl>
In-Reply-To: <20121105213448.GA1399@garage.freebsd.pl>
References:  <201211051752.qA5HqI6m050154@svn.freebsd.org> <20121105213448.GA1399@garage.freebsd.pl>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Nov 05, 2012 at 10:34:48PM +0100, Pawel Jakub Dawidek wrote:
> On Mon, Nov 05, 2012 at 05:52:18PM +0000, Jilles Tjoelker wrote:
> > Author: jilles
> > Date: Mon Nov  5 17:52:18 2012
> > New Revision: 242620
> > URL: http://svnweb.freebsd.org/changeset/base/242620

> > Log:
> >   sh: Change cmdtype in tblentry from short to signed char.

> >   If this is a smaller type than int anyway, we can make it the smallest
> >   possible.

> > Modified:
> >   head/bin/sh/exec.c

> > Modified: head/bin/sh/exec.c
> > ==============================================================================
> > --- head/bin/sh/exec.c	Mon Nov  5 17:50:40 2012	(r242619)
> > +++ head/bin/sh/exec.c	Mon Nov  5 17:52:18 2012	(r242620)
> > @@ -85,7 +85,7 @@ struct tblentry {
> >  	struct tblentry *next;	/* next entry in hash chain */
> >  	union param param;	/* definition of builtin function */
> >  	int special;		/* flag for special builtin commands */
> > -	short cmdtype;		/* index identifying command */
> > +	signed char cmdtype;	/* index identifying command */

> Why not simply 'char'?

Because 'char' may be signed or unsigned depending on architecture and
we store the value -1 in it (CMDUNKNOWN). In particular, on ARM 'char'
is unsigned.

-- 
Jilles Tjoelker



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20121105223122.GA67582>