Subject: Re: [Boost-build] Parameter passing breakage (Was: Major engine changes)
From: Steven Watanabe (watanabesj_at_[hidden])
Date: 2011-12-06 10:01:15
On 12/06/2011 12:42 AM, Vladimir Prus wrote:
> On 30/11/11 04:02, Steven Watanabe wrote:
>> I've just committed a major rewrite of the
>> jam interpreter.
> it looks some of your changes broke Boost.Build/Python tests. The
> easiest one to reproduce
> is the prebuilt.py test which fails on this statement:
> if [ os.name ] in CYGWIN NT
> Here, 'os.name' is actually a function in Python, taking zero
> parameters. However, engine
> passes 1 parameter to it (which parameter is an empty list). I've traced
> this down to
> this code in function.c:
> if ( inner->args->count == 0 )
> lol_add( inner->args, list_pop_front( first ) );
Fixed in r75824.
> but I am not quite sure what is the purpose here in the first place.
> Could you comment?
This is to handle things like modules.call-in
return [ $(2) : $(3) : $(4) : $(5) : $(6) : $(7) : $(8) : $(9) ] ;
Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk