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