Re: empty lists in for

2000-03-07 Thread Arindum Mukerji
* David Scheidt ([EMAIL PROTECTED]) [000307 11:18]: > > esc-M ctrl-V will give you version info, at least in ksh88. Neither HP nor > Solaris appear to use ksh93. > Solaris' ksh93 implementation is /usr/dt/bin/dtksh (Version M-12/28/93d). -- Arindum To Unsubscribe: send mail to [EMAIL PROTE

Re: empty lists in for

2000-03-07 Thread David Scheidt
On Mon, 6 Mar 2000, Chris Costello wrote: > On Monday, March 06, 2000, Max Khon wrote: > > However, under Solaris 2.6: > > clone$uname -a > > SunOS clone 5.6 Generic_105181-13 sun4u sparc SUNW,Ultra-1-Engine > > clone$/bin/ksh > > clone$for i in ; do echo $i; done > > /bin/ksh: syntax error: `;'

Re: empty lists in for

2000-03-07 Thread Ian Dowse
In message <[EMAIL PROTECTED]>, Chet Ramey writes: >> for f in $$empty_list ${SUBDIRS}; do ... >Not bad, but will break if the shell is run with the `-u' option on >for some reason. Ok, how about: for f in $$IFS ${SUBDIRS}; do ... Ian To Unsubscribe: send mail to [EMAIL PROTECT

Re: empty lists in for

2000-03-07 Thread Max Khon
hi, there! On Mon, 6 Mar 2000, Chet Ramey wrote: > > >: to > > >: > > >: sh_subdirs=${SUBDIRS}; for f in $$sh_subdirs ; do ... > > > > > > > >there's lots of other workarounds, from seeing if SUBDIRS is defined, > > >to using make's .foreach. > > > > Another option is: > > > > for f

Re: empty lists in for

2000-03-06 Thread W Gerald Hicks
> I agree that this is not the time to change it. But in the long run, > if the ports framework is misusing /bin/sh then the framework needs to > be fixed. We shouldn't let bugs there influence what we do with the > shell. Haven't been convinced yet they are bugs :-) Cheers, Jerry Hicks [EMA

Re: empty lists in for

2000-03-06 Thread W Gerald Hicks
> is not a word at all, so it can't be expanded, so I think > bash is corrent to complain about a syntax error. Epsilon anyone? I really don't care (honestly) but a null word can be considered a word too! In yacc-like terms: wordlist: | wordlist WORD ; It doesn't really matte

Re: empty lists in for

2000-03-06 Thread John Polstra
In article <[EMAIL PROTECTED]>, W Gerald Hicks <[EMAIL PROTECTED]> wrote: > > Convince me that nothing like the following exists in the > ports framework and /usr/src and I'd be ok with a change > *after* 4.0 release (repeats himself) > > # Makefile.foo > > FOOVAR= > > . > . > . > > BA

Re: empty lists in for

2000-03-06 Thread Chet Ramey
> In message <[EMAIL PROTECTED]>, Warner Losh writes: > > >: to > >: > >:sh_subdirs=${SUBDIRS}; for f in $$sh_subdirs ; do ... > > > > >there's lots of other workarounds, from seeing if SUBDIRS is defined, > >to using make's .foreach. > > Another option is: > > for f in $$empt

Re: empty lists in for

2000-03-06 Thread Andrew Reilly
On Mon, Mar 06, 2000 at 01:45:44PM -0500, John Baldwin wrote: > > On 06-Mar-00 Doug Barton wrote: > > All that said, if the ports make system depends on the current > > behavior, it has to be fixed before we can contemplate any changes. > > Patches accepted. The construction set -- ${MAK

Re: empty lists in for

2000-03-06 Thread Ian Dowse
In message <[EMAIL PROTECTED]>, Warner Losh writes: >: to >: >: sh_subdirs=${SUBDIRS}; for f in $$sh_subdirs ; do ... > >there's lots of other workarounds, from seeing if SUBDIRS is defined, >to using make's .foreach. Another option is: for f in $$empty_list ${SUBDIRS}; d

Re: empty lists in for

2000-03-06 Thread Warner Losh
In message <[EMAIL PROTECTED]> Chet Ramey writes: : The idiomatic solution for this sort of thing is changing : your makefile recipes from : : for f in ${SUBDIRS} do ... : : to : : sh_subdirs=${SUBDIRS}; for f in $$sh_subdirs ; do ... That's much better than what I've tended to do:

Re: empty lists in for

2000-03-06 Thread Sheldon Hearn
On Mon, 06 Mar 2000 12:04:53 EST, Chet Ramey wrote: > Bash claims POSIX.2 compliance. If you have specific reports of > non-compliance, send them to [EMAIL PROTECTED] I spoke out of turn. Please permit me to extract my foot from my mouth and try to reattach it to some part of the body that'l

Re: empty lists in for

2000-03-06 Thread John Baldwin
On 06-Mar-00 Doug Barton wrote: > I just checked POSIX 1003.2. > > for name [ in word ] > do > compound-list > done > > the "in word" is optional. Therefore: > > for name in ; do echo $name; done > > is an error, whereas > > for name ; do echo $name; done These are two different fu

Re: empty lists in for

2000-03-06 Thread Chet Ramey
> Are you sure that "word" here means one or more tokens, or zero or > more tokens. If it means zero or more tokens, then 'for i in ; do ' > is perfectly legal. You're not quoting what word means. The standard says that `word' may not be the empty string. POSIX.2, 3.10. > The reason that I ask

Re: empty lists in for

2000-03-06 Thread Chet Ramey
> Even though it's my preferred shell, I certainly wouldn't say > that Bash is any sort of standard, certainly not in the POSIX > sense. Bash implements the POSIX.2 standard, with certain well-defined exceptions (`posix mode'). > Imagine processing a possibly empty list constructed from a > 'mak

Re: empty lists in for

2000-03-06 Thread Chet Ramey
> On Mon, 21 Feb 2000 22:10:15 +0600, Max Khon wrote: > > > bash and ksh complain about unexpected ';'. > > /bin/sh (FreeBSD) thinks it's ok and does nothing. > > Which behaviour is more POSIXly correct? > > Neither bash nor ksh claim to be particularly POSIX compliant. Bash claims POSIX.2 comp

Re: empty lists in for

2000-03-06 Thread Christian Weisgerber
Max Khon <[EMAIL PROTECTED]> wrote: > However, under Solaris 2.6: > clone$uname -a > SunOS clone 5.6 Generic_105181-13 sun4u sparc SUNW,Ultra-1-Engine > clone$/bin/ksh > clone$for i in ; do echo $i; done > /bin/ksh: syntax error: `;' unexpected That's an old ksh88, which probably doesn't conform

Re: empty lists in for

2000-03-06 Thread Chris Costello
On Monday, March 06, 2000, Max Khon wrote: > However, under Solaris 2.6: > clone$uname -a > SunOS clone 5.6 Generic_105181-13 sun4u sparc SUNW,Ultra-1-Engine > clone$/bin/ksh > clone$for i in ; do echo $i; done > /bin/ksh: syntax error: `;' unexpected > clone$ It is likely you are running the

Re: empty lists in for

2000-03-06 Thread Sheldon Hearn
On Mon, 06 Mar 2000 01:44:35 PST, Doug Barton wrote: > At the same time, I'd also like to see if POSIX has a clear definition > of "word." Aha, that's what we should have looked at right in the beginning. My take on POSIX.2 3.10.2 (Shell Grammar Rules) is that _word_ may not be the empty stri

Re: empty lists in for

2000-03-06 Thread Doug Barton
Warner Losh wrote: > > In message <[EMAIL PROTECTED]> Sheldon Hearn writes: > : On Mon, 06 Mar 2000 00:59:39 PST, Doug Barton wrote: > : > : > for name [ in word ] > : > do > : > compound-list > : > done > : > > : > the "in word" is optional. Therefore: > : > : Hmmm, you're right. > : > :

Re: empty lists in for

2000-03-06 Thread Warner Losh
In message <[EMAIL PROTECTED]> Sheldon Hearn writes: : On Mon, 06 Mar 2000 00:59:39 PST, Doug Barton wrote: : : > for name [ in word ] : > do : > compound-list : > done : > : > the "in word" is optional. Therefore: : : Hmmm, you're right. : : I must admit, though, that if the text is

Re: empty lists in for

2000-03-06 Thread Sheldon Hearn
On Mon, 06 Mar 2000 00:59:39 PST, Doug Barton wrote: > for name [ in word ] > do > compound-list > done > > the "in word" is optional. Therefore: Hmmm, you're right. I must admit, though, that if the text is confusing enough to confuse me, it's not entirely clear (even if I'm not th

Re: empty lists in for

2000-03-06 Thread Doug Barton
Sheldon Hearn wrote: > > On Sat, 04 Mar 2000 15:36:43 +0200, Sheldon Hearn wrote: > > > I seem to remember POSIX being ambiguous on this one, but my books > > are at the office. If you haven't gotten a more conclusive answer by > > Monday, mail me and I'll look it up. > > I was wrong about POS

Re: empty lists in for

2000-03-06 Thread Sheldon Hearn
On Sat, 04 Mar 2000 15:36:43 +0200, Sheldon Hearn wrote: > I seem to remember POSIX being ambiguous on this one, but my books > are at the office. If you haven't gotten a more conclusive answer by > Monday, mail me and I'll look it up. I was wrong about POSIX being ambiguous in this regard; i

Re: empty lists in for

2000-03-06 Thread Max Khon
hi, there! On Sun, 5 Mar 2000, Chris Costello wrote: >ksh doesn't claim to be POSIX compliant? > > "ksh is intended to conform to the Shell Language Standard > developed by the IEEE POSIX 1003.2 Shell and Utilities Language > Committee." >--

Re: empty lists in for (/bin/sh)

2000-03-06 Thread Martin Cracauer
In <[EMAIL PROTECTED]>, Max Khon wrote: > hi, there! > > On Mon, 6 Mar 2000, Martin Cracauer wrote: > > > I just checked POSIX 1003.2. > > > > for name [ in word ] > > do > > compound-list > > done > > > > "First, the list of words following 'in' shall be expanded to generate > > a list

Re: empty lists in for (/bin/sh)

2000-03-06 Thread Max Khon
hi, there! On Mon, 6 Mar 2000, Martin Cracauer wrote: > I just checked POSIX 1003.2. > > for name [ in word ] > do > compound-list > done > > "First, the list of words following 'in' shall be expanded to generate > a list of items." [...] "If no items result from the expansion, the > co

Re: empty lists in for

2000-03-05 Thread Martin Cracauer
In <[EMAIL PROTECTED]>, John Polstra wrote: > In article <[EMAIL PROTECTED]>, > Doug Barton <[EMAIL PROTECTED]> wrote: > > > > Given that Bash in both standard and POSIX mode complains about 'for i > > in ; do echo $i; done', I would say that it's not POSIX compatible. What > > could/does d

Re: empty lists in for

2000-03-05 Thread Chris Costello
On Saturday, March 04, 2000, Sheldon Hearn wrote: > Neither bash nor ksh claim to be particularly POSIX compliant. our > /bin/sh does. ksh doesn't claim to be POSIX compliant? "ksh is intended to conform to the Shell Language Standard developed by the IEEE POSIX 1003.2 Shell and Uti

Re: empty lists in for

2000-03-05 Thread Doug Barton
W Gerald Hicks wrote: > To me, changing it right now on the eve of -release > would be gratuitous. Later I would be fine with it. > > I still prefer /bin/sh being able to handle an empty > literal list but would yield to the desires of others. I think you misunderstand me. I'm not sugge

Re: empty lists in for

2000-03-05 Thread W Gerald Hicks
From: Doug Barton <[EMAIL PROTECTED]> > John Polstra already pointed this out, and Bash handles this like you > would expect. There is a difference between expanding an empty list and > trying to expand a list that isn't there. Convince me that nothing like the following exists in the por

Re: empty lists in for

2000-03-05 Thread Doug Barton
W Gerald Hicks wrote: > Even though it's my preferred shell, I certainly wouldn't say > that Bash is any sort of standard, certainly not in the POSIX > sense. Well, one of Chet's stated goals is to be as POSIX as possible. I agree that letting the standard speak for itself is a better id

Re: empty lists in for

2000-03-05 Thread John Polstra
Doug Barton wrote: > > Agreed on all counts. By "this behavior" I was referring to the > example. Yep -- I was agreeing with you. :-) John To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-hackers" in the body of the message

Re: empty lists in for

2000-03-05 Thread W Gerald Hicks
From: Doug Barton <[EMAIL PROTECTED]> Subject: Re: empty lists in for Date: Sun, 05 Mar 2000 11:39:49 -0800 > W Gerald Hicks wrote: > > > > > > bash and ksh complain about unexpected ';'. > > > > /bin/sh (FreeBSD) thinks it's ok and does no

Re: empty lists in for

2000-03-05 Thread Doug Barton
John Polstra wrote: > > In article <[EMAIL PROTECTED]>, > Doug Barton <[EMAIL PROTECTED]> wrote: > > > > Given that Bash in both standard and POSIX mode complains about 'for i > > in ; do echo $i; done', I would say that it's not POSIX compatible. What > > could/does depend on this behavio

Re: empty lists in for

2000-03-05 Thread John Polstra
In article <[EMAIL PROTECTED]>, Doug Barton <[EMAIL PROTECTED]> wrote: > > Given that Bash in both standard and POSIX mode complains about 'for i > in ; do echo $i; done', I would say that it's not POSIX compatible. What > could/does depend on this behavior "working?" It works for the rea

Re: empty lists in for

2000-03-05 Thread Doug Barton
W Gerald Hicks wrote: > > > > bash and ksh complain about unexpected ';'. > > > /bin/sh (FreeBSD) thinks it's ok and does nothing. > > > Which behaviour is more POSIXly correct? > > > > > Neither bash nor ksh claim to be particularly POSIX compliant. our > > /bin/sh does. I seem to remember PO

Re: empty lists in for

2000-03-05 Thread W Gerald Hicks
> > bash and ksh complain about unexpected ';'. > > /bin/sh (FreeBSD) thinks it's ok and does nothing. > > Which behaviour is more POSIXly correct? > > Neither bash nor ksh claim to be particularly POSIX compliant. our > /bin/sh does. I seem to remember POSIX being ambiguous on this one, but

Re: empty lists in for

2000-03-04 Thread Doug Barton
Sheldon Hearn wrote: > > On Mon, 21 Feb 2000 22:10:15 +0600, Max Khon wrote: > > > bash and ksh complain about unexpected ';'. > > /bin/sh (FreeBSD) thinks it's ok and does nothing. > > Which behaviour is more POSIXly correct? > > Neither bash nor ksh claim to be particularly POSIX compliant.

Re: empty lists in for

2000-03-04 Thread Sheldon Hearn
On Mon, 21 Feb 2000 22:10:15 +0600, Max Khon wrote: > bash and ksh complain about unexpected ';'. > /bin/sh (FreeBSD) thinks it's ok and does nothing. > Which behaviour is more POSIXly correct? Neither bash nor ksh claim to be particularly POSIX compliant. our /bin/sh does. I seem to remembe

empty lists in for

2000-02-21 Thread Max Khon
hi, there! I'm trying to port FreeBSD ports subsystem to Solaris and Linux (for our company internal needs). many for's in bsd.port.mk are expanded into for's with empty word list (e.g.: for i in ; do smth; done). bash and ksh complain about unexpected ';'. /bin/sh (FreeBSD) thinks it's ok and d