Possibly related (definitely perplexing): changing foo in A to “static”

 

class A 

{

    10000 => static int foo;

}

 

class B extends A 

{

    fun void bar()

    {

        0 => int foo;

 

        <<< "a", foo >>>;

        {

             <<< "b", foo >>>;

        }

        <<< "c", foo >>>;

    }

}

 

<<<A.foo>>>;

A a;

<<<a.foo>>>;

B b;

<<<b.foo>>>;

b.bar();

 

0 :(int)

10000 :(int)

-2031012 :(int)

a 0 

b 10000 

c 0

 

From: [email protected] 
[mailto:[email protected]] On Behalf Of Spencer Salazar
Sent: Wednesday, August 06, 2014 2:00 PM
To: ChucK Users Mailing List
Subject: Re: [chuck-users] Scope bug?

 

That looks like a bug alright. Thanks for letting us know! We will take a look 
into it. 

 

spencer

 

 

On Wed, Aug 6, 2014 at 10:56 AM, Dealga McArdle <[email protected]> wrote:

Ah, yes.. i see now

 

class A 

{

    10000 => int foo;

}

 

class B extends A 

{

    fun void bar()

    {

        0 => int foo;

 

        <<< "a", foo >>>;

        if (true) {

            <<< "b", foo >>>;

        }

        <<< "c", foo >>>;

    }

}

 

B bobj;

bobj.bar();

 

indeed.

 

On Wed, Aug 6, 2014 at 4:51 PM, Ian South-Dickinson <[email protected]> 
wrote:

The bug appears in other inner scopes, such as an if-statement, and probably 
for/while loops.

 

On Wed, Aug 6, 2014 at 7:40 AM, Dealga McArdle <[email protected]> wrote:

Ian, why do you have that innermost scope? that's not intended use of syntax I 
think.

 

On Wed, Aug 6, 2014 at 9:00 AM, Ian South-Dickinson <[email protected]> 
wrote:

I encountered a strange case where a variable was changing value within the 
scope of an if statement, because I had a superclass with an identical variable 
name. I am able to reproduce it with this simple case:

class A 
{
    10000 => int foo;
}

class B extends A 
{
    fun void bar()
    {
        0 => int foo;

        <<< "a", foo >>>;
        {
            <<< "b", foo >>>;
        }
        <<< "c", foo >>>;
    }
}

Prints out:

a 0 
b 10000 
c 0 

 

_______________________________________________
chuck-users mailing list
[email protected]
https://lists.cs.princeton.edu/mailman/listinfo/chuck-users

 


_______________________________________________
chuck-users mailing list
[email protected]
https://lists.cs.princeton.edu/mailman/listinfo/chuck-users

 


_______________________________________________
chuck-users mailing list
[email protected]
https://lists.cs.princeton.edu/mailman/listinfo/chuck-users

 


_______________________________________________
chuck-users mailing list
[email protected]
https://lists.cs.princeton.edu/mailman/listinfo/chuck-users

 

_______________________________________________
chuck-users mailing list
[email protected]
https://lists.cs.princeton.edu/mailman/listinfo/chuck-users

Reply via email to