Re: 2.2.18 signal.h

2001-01-02 Thread Andrea Arcangeli
On Thu, Dec 21, 2000 at 12:18:56PM -0600, Thomas Dodd wrote: > Andrea Arcangeli wrote: > > > > On Fri, Dec 15, 2000 at 05:55:08PM -0200, Rik van Riel wrote: > > > On Fri, 15 Dec 2000, Andrea Arcangeli wrote: > > > > > > > x() > > > > { > > > > > > > > switch (1) { > > > > case 0: > > > >

Re: 2.2.18 signal.h

2000-12-21 Thread Thomas Dodd
Andrea Arcangeli wrote: > > On Fri, Dec 15, 2000 at 05:55:08PM -0200, Rik van Riel wrote: > > On Fri, 15 Dec 2000, Andrea Arcangeli wrote: > > > > > x() > > > { > > > > > > switch (1) { > > > case 0: > > > case 1: > > > case 2: > > > case 3: > > > ; > > > } > > > } > >

Re: 2.2.18 signal.h

2000-12-19 Thread Michael Meissner
On Sat, Dec 16, 2000 at 02:52:42PM +0100, Andrea Arcangeli wrote: > On Sat, Dec 16, 2000 at 01:53:50PM +0600, Anuradha Ratnaweera wrote: > > GCC will complain the absence of a statement after `out1:out2:`, but not > > two complains for `out1' and `out2', because they form a single entity. > > I u

Re: 2.2.18 signal.h

2000-12-16 Thread Albert D. Cahalan
Michael Meissner writes: > On Fri, Dec 15, 2000 at 07:54:33PM +0100, Andrea Arcangeli wrote: >> On Fri, Dec 15, 2000 at 06:59:24PM +0100, Franz Sirl wrote: >>> It's required by ISO C, and since that's the standard now, gcc >>> spits out a warning. Just adding a ; is enough and already >>> done f

Re: 2.2.18 signal.h

2000-12-16 Thread Andrea Arcangeli
On Sat, Dec 16, 2000 at 01:53:50PM +0600, Anuradha Ratnaweera wrote: > GCC will complain the absence of a statement after `out1:out2:`, but not > two complains for `out1' and `out2', because they form a single entity. I understand the formal specs (the email from Michael is very clear). What I'm

Re: 2.2.18 signal.h

2000-12-16 Thread Anuradha Ratnaweera
On Fri, 15 Dec 2000, Andrea Arcangeli wrote: > On Fri, Dec 15, 2000 at 11:18:35AM -0800, Ulrich Drepper wrote: > > Andrea Arcangeli <[EMAIL PROTECTED]> writes: > > > > > x() > > > { > > > > > > switch (1) { > > > case 0: > > > case 1: > > > case 2: > > > case 3: > > > ; > > > } >

Re: 2.2.18 signal.h

2000-12-15 Thread Andrea Arcangeli
On Fri, Dec 15, 2000 at 03:56:52PM -0600, Jesse Pollard wrote: > [..] A null expression, specified with > the ";" is a small price to pay for simplifying the error detection. [..] I'm not convinced this is a significant simplification (also considering the "hard" way is just working fine). I thin

Re: 2.2.18 signal.h

2000-12-15 Thread Jesse Pollard
- Received message begins Here - > From: Andrea Arcangeli <[EMAIL PROTECTED]> > On Fri, Dec 15, 2000 at 11:18:35AM -0800, Ulrich Drepper wrote: > > Andrea Arcangeli <[EMAIL PROTECTED]> writes: > > > > > x() > > > { > > > > > > switch (1) { > > > case 0: > > > case 1: > >

Re: 2.2.18 signal.h

2000-12-15 Thread Michael Meissner
On Fri, Dec 15, 2000 at 07:54:33PM +0100, Andrea Arcangeli wrote: > On Fri, Dec 15, 2000 at 06:59:24PM +0100, Franz Sirl wrote: > > It's required by ISO C, and since that's the standard now, gcc spits out a > > warning. Just adding a ; is enough and already done for most stuff in > > 2.4.0-test1

Re: 2.2.18 signal.h

2000-12-15 Thread Andrea Arcangeli
On Fri, Dec 15, 2000 at 06:09:16PM -0200, Rik van Riel wrote: > On Fri, 15 Dec 2000, Andrea Arcangeli wrote: > > > And yes I can see that the whole point of the change is that > > they want to also forbids this: > > > > x() > > { > > goto out; > > out: > > } > > > > and I dislike not being

Re: 2.2.18 signal.h

2000-12-15 Thread Andrea Arcangeli
On Fri, Dec 15, 2000 at 05:55:08PM -0200, Rik van Riel wrote: > On Fri, 15 Dec 2000, Andrea Arcangeli wrote: > > > x() > > { > > > > switch (1) { > > case 0: > > case 1: > > case 2: > > case 3: > > ; > > } > > } > > > > Why am I required to put a `;' only in the last

Re: 2.2.18 signal.h

2000-12-15 Thread Michael Meissner
On Fri, Dec 15, 2000 at 04:06:36PM -0300, Horst von Brand wrote: > "Richard B. Johnson" <[EMAIL PROTECTED]> said: > > [...] > > > Both examples allow an extern declaration inside a function scope > > which is also contrary to any (even old) 'C' standards. 'extern' > > is always file

Re: 2.2.18 signal.h

2000-12-15 Thread Rik van Riel
On Fri, 15 Dec 2000, Andrea Arcangeli wrote: > And yes I can see that the whole point of the change is that > they want to also forbids this: > > x() > { > goto out; > out: > } > > and I dislike not being allowed to do the above as well infact ;). What's wrong with the - more readable -

Re: 2.2.18 signal.h

2000-12-15 Thread Andrea Arcangeli
On Fri, Dec 15, 2000 at 11:18:35AM -0800, Ulrich Drepper wrote: > Andrea Arcangeli <[EMAIL PROTECTED]> writes: > > > x() > > { > > > > switch (1) { > > case 0: > > case 1: > > case 2: > > case 3: > > ; > > } > > } > > > > Why am I required to put a `;' only in the la

Re: 2.2.18 signal.h

2000-12-15 Thread Rik van Riel
On Fri, 15 Dec 2000, Andrea Arcangeli wrote: > x() > { > > switch (1) { > case 0: > case 1: > case 2: > case 3: > ; > } > } > > Why am I required to put a `;' only in the last case and not in > all the previous ones? That `;' above is NOT in just the l

Re: 2.2.18 signal.h

2000-12-15 Thread Ulrich Drepper
Andrea Arcangeli <[EMAIL PROTECTED]> writes: > x() > { > > switch (1) { > case 0: > case 1: > case 2: > case 3: > ; > } > } > > Why am I required to put a `;' only in the last case and not in all > the previous ones? Or maybe gcc-latest is forgetting to

Re: 2.2.18 signal.h

2000-12-15 Thread Horst von Brand
"Richard B. Johnson" <[EMAIL PROTECTED]> said: [...] > Both examples allow an extern declaration inside a function scope > which is also contrary to any (even old) 'C' standards. 'extern' > is always file scope, there's no way to make it otherwise. AFAIR (rather dimly... no K&

Re: 2.2.18 signal.h

2000-12-15 Thread Andrea Arcangeli
On Fri, Dec 15, 2000 at 06:59:24PM +0100, Franz Sirl wrote: > It's required by ISO C, and since that's the standard now, gcc spits out a > warning. Just adding a ; is enough and already done for most stuff in > 2.4.0-test12. I'm not complaining gcc folks, I just dislike the new behaviour in gen

Re: 2.2.18 signal.h

2000-12-15 Thread Alan Cox
> void foo() > { > extern int a; > if(a) goto a; > return; > a: > printf("%d\n", a); > } > > Both examples allow an extern declaration inside a function scope > which is also contrary to any (even old) 'C' standards. 'exte

Re: 2.2.18 signal.h

2000-12-15 Thread Richard B. Johnson
On Fri, 15 Dec 2000, Franz Sirl wrote: > At 18:43 15.12.00, Andrea Arcangeli wrote: > >On Fri, Dec 15, 2000 at 12:07:55PM -0500, Richard B. Johnson wrote: > > > Current code makes perfect sense if you put a 'break;' after the last > > > >Current code makes perfect sense also without the break. I

Re: 2.2.18 signal.h

2000-12-15 Thread Franz Sirl
At 18:43 15.12.00, Andrea Arcangeli wrote: >On Fri, Dec 15, 2000 at 12:07:55PM -0500, Richard B. Johnson wrote: > > Current code makes perfect sense if you put a 'break;' after the last > >Current code makes perfect sense also without the break. I guess that's a >strict check to try to catch bugs,

Re: 2.2.18 signal.h

2000-12-15 Thread Andrea Arcangeli
On Fri, Dec 15, 2000 at 12:07:55PM -0500, Richard B. Johnson wrote: > Current code makes perfect sense if you put a 'break;' after the last Current code makes perfect sense also without the break. I guess that's a strict check to try to catch bugs, but calling it "deprecated" is wrong, it should

Re: 2.2.18 signal.h

2000-12-15 Thread Richard B. Johnson
On Fri, 15 Dec 2000, Andrea Arcangeli wrote: > On Fri, Dec 15, 2000 at 11:29:28AM -0500, Mike Black wrote: > > include/linux/signal.h > > > > There's a couple like this -- isn't this case statement upside down??? > > > > extern inline void siginitset(sigset_t *set, unsigned long mask) > > { > >

Re: 2.2.18 signal.h

2000-12-15 Thread Andrea Arcangeli
On Fri, Dec 15, 2000 at 11:29:28AM -0500, Mike Black wrote: > include/linux/signal.h > > There's a couple like this -- isn't this case statement upside down??? > > extern inline void siginitset(sigset_t *set, unsigned long mask) > { > set->sig[0] = mask; > switch (_NSIG_WORDS) {

2.2.18 signal.h

2000-12-15 Thread Mike Black
include/linux/signal.h There's a couple like this -- isn't this case statement upside down??? extern inline void siginitset(sigset_t *set, unsigned long mask) { set->sig[0] = mask; switch (_NSIG_WORDS) { default: memset(&set->sig[1], 0, sizeof(long)*(_NSIG