polymorphing

BlitzMax Forums/BlitzMax Beginners Area/polymorphing

Thats totally morronic.
The following source works and that although this is definitely no expected behavior nor anything near usefull / desired. It totally defeats the use of inheritance if dublicated field names are seperated instead of overridden

Type a
	Field z%
End Type
Type b Extends a
	Field z% = 2
End Type
Type c Extends b
	Field z% = 3
End Type
Local me:a = New c
handleit(me)
End

Function handleit(it:a)
 Print it.z
 If b(it)	Print "B: " + b(it).z
 If c(it)	Print "C: " + c(it).z
End Function


EDIT: This would already be the second type based compiler error on 1.22 hopefully the last one (the other is calling functions from type instances which then have a self)