Mark Piller wrote:
> We ran into something that looks like a compiler bug. Please take a
> look at the code below and correct me if I am wrong. The object model
> and the class names of the code below may not make any sense, I put it
> together to demonstrate the problem.
> 
> Here's a class with a static property:
> 
> package
> {
>   public class StaticClass
>   {
>     public static function get Account():String
>     {
>       return "my account name";
>     }
>   }
> }
> 

That staticfunction looks a bit strange i think. Shouldnt that function be:

public static function get account():String{
   return "my account name";
}

> Here's a class inheriting from the class shown above:
> 
> package
> {
>   public class NonStaticClass extends StaticClass
>   {
>     public var _parentAccount:Account;
> 
>     public function NonStaticClass()
>     {
>       _parentAccount = new Account();
>     }
>   }
> }
> 
> And finally the Account class used in the NonStaticClass:
> 
> package
> {
>   public class Account
>   {
>     public var name:String;
>    }
> }
> 
> The compiler reports two problems with the code. Both in the
> NonStaticClass:
> 
> 1. "Type was not found or was not a compile-time constant: Account."
> This one shows up for the _parentAccount field declaration

Isn't that caused by a simple scope problem?

> 
> 2 "Call to a possibly undefined method Account"
> This error shows up for the initialization of the _parentAccount field
> in the NonStaticClass constructor.

see above.

> 
> It looks like there are two problems in the compiler:
> 1. Compiler attempts to inherit static declarations
> 2. As a result of (1), the compiler gets confused between the static
> property and a class type
> 
> Cheers,
> Mark
> 

I'm new to Flex and AS so its possible Ive missed the point..


regards,
  - shaun

Reply via email to