Hi Thorsten, Thanks for your fast and complete answers.
Le Friday 11 September 2015 à 20:07 +0000, Thorsten Glaser a écrit : > Jean Delvare dixit: > > >Dear mksh developers, > > Feel free to use the singular ☺ we’re all just one person, be > it mksh, bash, ksh93, lynx, ncurses, xterm… all those projects > are done by one person (sometimes even the same). I know the feeling ;-) > >A customer of ours is migrating from ksh-93 to mksh. They reported the > > Interesting, but, depending on the scripts, probably hard (lots > of other ksh93 extensions, such as float, will not be there either). Thanks for the hint. Customers are just starting to migrate, on our request (as it turns out that ksh-93 has a lot of bugs and upstream is hardly active so we did not feel like supporting it any more) and this is the first incompatibility I hear about. > [ all parts of a pipeline are run in subshells ] > >I would like to ask if this is: > > > >1* A deliberate design decision, and this will never change. > > An implementation choice, and while the status of this was > not set in stone for several years, some time ago (I’d have > to look when) I decided to make it into a formal language > feature, i.e. it will never change. OK, noted. I'll let the customer know. > Scripts can use this, e.g: > > # here, set +o foo is active > cat "$@" | while …; do set -o foo; …; done > # here, set +o foo is active again Sorry but I do not understand how this relate to the problem at hand? Just an illustration of another change in subshells that do not propagate to the main shell? -- Jean Delvare SUSE L3 Support