Re: [Rd] Buig in bin/R script (PR#9375)

From: <ripley_at_stats.ox.ac.uk>
Date: Tue 21 Nov 2006 - 13:51:38 GMT


On Tue, 21 Nov 2006, gml4410@ggr.co.uk wrote:

> Full_Name: Gordon Lack
> Version: 2.4.0
> OS: OSF1 v5.1
> Submission from: (NULL) (198.28.92.5)
>
>
> Changes to the bin/R front-end interlude script at 2.4.0 (cf: 2.2.0) have broken
> R on (Dec/Compaq/HP) OSF1.

This was not changed in 2.4.0, and indeed 2.2.0's bin/R used "${@}" in one place.

> There are 3 occurrences of "${@}", but this is the incorrect syntax for adding
> $@, as on older Bourne shells this will add an empty (but present) parameter.
> The result is that the build fails while attempting to add in the Recommended
> libraries because "ARGUMENT '' __ignored__" end up on the gcc command line.
>
> The fix is to edit src/scripts//R.sh.in to use the correct, original Bourne
> shell syntax:

Surely this is an idiosyncracy (aka 'buig') of your OS rather than being 'correct'? The POSIX definition is

   @ Expands to the positional parameters, starting from one. When the    expansion occurs within double-quotes, and where field splitting (see    Field Splitting) is performed, each positional parameter shall expand as a    separate field, with the provision that the expansion of the first    parameter shall still be joined with the beginning part of the original    word (assuming that the expanded parameter was embedded within a word),    and the expansion of the last parameter shall still be joined with the    last part of the original word. If there are no positional parameters, the    expansion of '@' shall generate zero fields, even when '@' is    double-quoted.

Note the declarative 'shall' there.

Further, Solaris has a genuine Bourne shell from the AT&T source code base, and it is both documented and behaves as this quotation.

Perhaps we need a workaround conditional on 'HAVE_OSF_BROKEN_SH', but I am not at all keen to complicate simple POSIX-compliant code unconditionally.

-- 
Brian D. Ripley,                  ripley@stats.ox.ac.uk
Professor of Applied Statistics,  http://www.stats.ox.ac.uk/~ripley/
University of Oxford,             Tel:  +44 1865 272861 (self)
1 South Parks Road,                     +44 1865 272866 (PA)
Oxford OX1 3TG, UK                Fax:  +44 1865 272595

______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel
Received on Wed Nov 22 15:43:02 2006

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.1.8, at Wed 22 Nov 2006 - 05:30:50 GMT.

Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-devel. Please read the posting guide before posting to the list.