There are 2 parts to this bug.
1) The compiler makes an infinite loop by calling self.set_Property(value) instead of super.set_Property(value) in the overridden property setter. See thread http://groups.google.com/group/boolang/browse_thread/thread/f946fad0ac453351
for more information.
2) Compilation fails if the class (or another class) attempts to set the property on an earlier line than the property declaration. See thread See thread http://groups.google.com/group/boolang/browse_thread/thread/5136634864640ea7
for more information.
Here is a test case:
class A:
virtual Kaboom:
get:
return true
set:
pass
class B(A):
//comment out this method to allow compilation and reveal the infinite loop bug
private def CompileKaboom():
self.Kaboom = true
override Kaboom:
get:
return super.Kaboom
set:
super.Kaboom = value
In other words: tell me if this works.