discuss@lists.openscad.org

OpenSCAD general discussion Mailing-list

View all threads

Isn't this a bug?

R
Ronaldo
Sun, Feb 4, 2018 4:59 PM

$i=1;
module set() {$i=10; children();}
set() { echo(di=$i); i=$i; echo(i=i);}

// ECHO: di = 10
// ECHO: i = 1

--
Sent from: http://forum.openscad.org/

$i=1; module set() {$i=10; children();} set() { echo(di=$i); i=$i; echo(i=i);} // ECHO: di = 10 // ECHO: i = 1 -- Sent from: http://forum.openscad.org/
NH
nop head
Sun, Feb 4, 2018 6:21 PM

This works:
$i=1;
module set() {$i=10; children();}
set() { echo(di=$i); let(i=$i) echo(i=i);}

I think the problem is echo is a module so set() has two children. i=$i is
not a child and gets evaluated earlier.

On 4 February 2018 at 16:59, Ronaldo rcmpersiano@gmail.com wrote:

$i=1;
module set() {$i=10; children();}
set() { echo(di=$i); i=$i; echo(i=i);}

// ECHO: di = 10
// ECHO: i = 1

--
Sent from: http://forum.openscad.org/


OpenSCAD mailing list
Discuss@lists.openscad.org
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org

This works: $i=1; module set() {$i=10; children();} set() { echo(di=$i); let(i=$i) echo(i=i);} I think the problem is echo is a module so set() has two children. i=$i is not a child and gets evaluated earlier. On 4 February 2018 at 16:59, Ronaldo <rcmpersiano@gmail.com> wrote: > $i=1; > module set() {$i=10; children();} > set() { echo(di=$i); i=$i; echo(i=i);} > > // ECHO: di = 10 > // ECHO: i = 1 > > > > -- > Sent from: http://forum.openscad.org/ > > _______________________________________________ > OpenSCAD mailing list > Discuss@lists.openscad.org > http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org >