Bug #3523
closedStatic type checking on reflexive extension functions does not take ?void=this into account
100%
Description
See JUnit test case TestReflexion/testThisSetter2.
It appears that the URI suffix ?void=this is not considered when doing static type checking on reflexive extension function calls, that is, the static type of the call is assumed to be () rather than the type of the instance to which the method is applied.
Updated by Michael Kay about 7 years ago
A simple fix to JavaExtensionFunctionCall.adjustRequiredType() fixes the static type inferencing error, but the test then fails on a run-time cardinality checking error which needs further investigation.
Updated by Michael Kay about 7 years ago
- Status changed from In Progress to Resolved
- Applies to branch 9.8, trunk added
- Fix Committed on Branch 9.8, trunk added
The property "returnVoidAsThis" in a JavaExtensionFunctionCall object was not being retained through a call of Expression.copy().
Fixed on the 9.8 and trunk branches.
Updated by O'Neil Delpratt almost 7 years ago
- % Done changed from 0 to 100
Bug fix applied in the Saxon 9.8.0.7 maintenance release.
Updated by O'Neil Delpratt almost 7 years ago
- Status changed from Resolved to Closed
- Fixed in Maintenance Release 9.8.0.7 added
Please register to edit this issue