Project

General

Profile

Feature #4965

Updated by Greg Shah over 3 years ago

When a class is instantiated a 'constructor' method that matches the arguments is searched and then depending on the parameter mode there are some validations on the data type. If the parameter is @object@ then the @qualified@ annotation is used to find the actual class/interface, would it make sense to default to P.L.O if no annotation is present?

The issue we had is we have a variable defined as P.L.O that gets converted to @_BaseObject_@ (interface), the parameter qualified annotation is also P.L.O only that result in @BaseObject@ (base class) and the constructor is ignored because the interface is not assignable to the base class :(

Maybe the conversion can be changed to use @BaseObject@ for P.L.O variables, meanwhile as a work around I'm changing the legacy class from @BaseObject@ to @_BaseObject_@ in this case - @ControlFlowOps@.

Back