Discussion:
[ast-developers] ${_.__.x} not working in nested types... / was:
Roland Mainz
2013-08-11 02:17:52 UTC
Permalink
the AT&T Software Technology ast alpha 2013-08-07 source release
has been posted to the download site
http://www.research.att.com/sw/download/alpha/
the package names and md5 checksums are
INIT 47f2073fae4b73fe5210cc4e287556ca
ast-open e6927faa687a2af8ee94431b793c08ac
ast-ksh 43b7379fdf573811c66f41ce231cbac0
the md5 sums should match the ones listed on the download page
[snip]
2013-07-29 snarf from amazing dr.ek, ast-ize, and its alive
13-08-05 --- Release ksh93v- ---
[snip]
13-07-30 +An experimental change to allow ${foo.__} to expand to the parent
node for foo, or foo if foo doesn't have a parent. There are no
regression tests for .__ yet.
I tried this with ast-ksh.2013-08-07 on SuSE 12.3/AMD64/64bit:
-- snip --
$ ksh -c 'set -o nounset ; typeset -T x_t=( integer i=9 ; function pr
{ printf "%d/%d\n" _.i _.__.j ; } ;) ; typeset -T y_t=( x_t x ;
integer j=5 ) ; compound c ; y_t c.v ; c.v.x.pr'
9//home/test001/bin/ksh: c.v.x.pr[1]: printf: __.j: is not an element of c.v.x
-- snip --
... does anyone spot an error or is this a bug ?

Dismanteling "_.__.j" ... "_" references the current object (an
"x_t"), "_.__" the parent (an "y_t") so "_.__.j" should reference
y_t's member variable "j" ... right ?

----

Bye,
Roland
--
__ . . __
(o.\ \/ /.o) roland.mainz at nrubsig.org
\__\/\/__/ MPEG specialist, C&&JAVA&&Sun&&Unix programmer
/O /==\ O\ TEL +49 641 3992797
(;O/ \/ \O;)
Dan Shelton
2013-08-11 05:56:40 UTC
Permalink
Post by Roland Mainz
the AT&T Software Technology ast alpha 2013-08-07 source release
has been posted to the download site
http://www.research.att.com/sw/download/alpha/
the package names and md5 checksums are
INIT 47f2073fae4b73fe5210cc4e287556ca
ast-open e6927faa687a2af8ee94431b793c08ac
ast-ksh 43b7379fdf573811c66f41ce231cbac0
the md5 sums should match the ones listed on the download page
[snip]
2013-07-29 snarf from amazing dr.ek, ast-ize, and its alive
13-08-05 --- Release ksh93v- ---
[snip]
13-07-30 +An experimental change to allow ${foo.__} to expand to the parent
node for foo, or foo if foo doesn't have a parent. There are no
regression tests for .__ yet.
-- snip --
$ ksh -c 'set -o nounset ; typeset -T x_t=( integer i=9 ; function pr
{ printf "%d/%d\n" _.i _.__.j ; } ;) ; typeset -T y_t=( x_t x ;
integer j=5 ) ; compound c ; y_t c.v ; c.v.x.pr'
9//home/test001/bin/ksh: c.v.x.pr[1]: printf: __.j: is not an element of c.v.x
-- snip --
... does anyone spot an error or is this a bug ?
Dismanteling "_.__.j" ... "_" references the current object (an
"x_t"), "_.__" the parent (an "y_t") so "_.__.j" should reference
y_t's member variable "j" ... right ?
What a pity that it doesn't work.

David, let me know if you have a patch to test...

Dan

Continue reading on narkive:
Loading...