#38: Inlining loses declarations ---------------------+------------------------------------------------------ Reporter: heller | Owner: somebody Type: defect | Status: new Priority: minor | Milestone: Component: Core | Version: 20a Resolution: | Keywords: ---------------------+------------------------------------------------------
Comment(by rtoy):
I'm not 100% sure, but it looks like the compiler believes the derived function type and inlines the function without the type check for the result type.
This bug does not exist in 18b, but 18b doesn't inline the function; it tail calls fx+. 18c and later actually inline the function and produces the unwanted result.
I agree that it would be nicer if the inlined function behaved like the not-inlined version. It seems the only way to get what you want is put an explicit check-type call.