Re: [PATCH] removal of "static foo = 0"

Rogier Wolff
2000-11-26T11:24:01Z

John Alvord wrote:
> On Sun, 26 Nov 2000 04:25:05 +0000 (GMT), Alan Cox
> <alan@lxorguk.ukuu.org.uk> wrote:
>
> >> AB> of changes that yield a negligable advantage and reduce stability
> >> AB> a tiny little bit. That is pushing Linux in the direction of this
> >> AB> abyss. You notice that the view gets better, and I get nervous.
> >>
> >> Can somebody stop this train load of bunk?
> >>
> >> Uninitialized global variables always have a initial value of
> >> zero. Static or otherwise. Period.
> >
> >That isnt what Andries is arguing about. Read harder. Its semantic differences
> >rather than code differences.
> >
> > static int a=0;
> >
> >says 'I thought about this. I want it to start at zero. I've written it this
> >way to remind of the fact'
> >
> >Sure it generates the same code
>
> It also says "I do not know much about the details of the kernel C
> environment. In particular I do not know that all static variables are
> initialized to 0 in the kernel startup. I have not read setup.S."

Nope. It doesn't say that. Maybe if you wrote the code. But if Andries
or I had written that line, it just says that when written the
programmer thought about the initial value, and that the initial value
matters on this variable.

It is a concise form of documentation. As Andries explained, this can
also be done with comments or with

static int a /* = 0 */;

However, I like the "=0" variant much better.

If you're worried about the inefficiency of the compiler, take it up
with the compiler guys. Or write an extra preprocessor step or
something like that.

Roger.

--
** R.E.Wolff@BitWizard.nl ** http://www.BitWizard.nl/ ** +31-15-2137555 **
*-- BitWizard writes Linux device drivers for any device you may have! --*
* There are old pilots, and there are bold pilots.
* There are also old, bald pilots.