Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 29 Oct 2010 13:42:18 +0000 (UTC)
From:      Jilles Tjoelker <jilles@FreeBSD.org>
To:        cvs-src-old@freebsd.org
Subject:   cvs commit: src/bin/sh expand.c expand.h mksyntax.c parser.c parser.h src/tools/regression/bin/sh/expansion plus-minus6.0
Message-ID:  <201010291342.o9TDgm7Y057841@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
jilles      2010-10-29 13:42:18 UTC

  FreeBSD src repository

  Modified files:
    bin/sh               expand.c expand.h mksyntax.c parser.c 
                         parser.h 
  Added files:
    tools/regression/bin/sh/expansion plus-minus6.0 
  Log:
  SVN rev 214512 on 2010-10-29 13:42:18Z by jilles
  
  sh: Do IFS splitting on word in ${v+word} and ${v-word}.
  
  The code is inspired by NetBSD sh somewhat, but different because we
  preserve the old Almquist/Bourne/Korn ability to have an unquoted part in a
  quoted ${v+word}. For example, "${v-"*"}" expands to $v as a single field if
  v is set, but generates filenames otherwise.
  
  Note that this is the only place where we split text literally from the
  script (the similar ${v=word} assigns to v and then expands $v). The parser
  must now add additional markers to allow the expansion code to know whether
  arbitrary characters in substitutions are quoted.
  
  Example:
    for i in ${$+a b c}; do echo $i; done
  
  Exp-run done by:        pav (with some other sh(1) changes)
  
  Revision  Changes    Path
  1.72      +27 -10    src/bin/sh/expand.c
  1.14      +2 -0      src/bin/sh/expand.h
  1.33      +1 -0      src/bin/sh/mksyntax.c
  1.95      +12 -4     src/bin/sh/parser.c
  1.15      +1 -0      src/bin/sh/parser.h
  1.1       +34 -0     src/tools/regression/bin/sh/expansion/plus-minus6.0 (new)



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