Unfortunately, it seems the current implementation of flatten also has type stability issues. I have yet to narrow down the exact cause, but in my present use-case, I get the following from @code_warntype:
Note in particular the last line, where Vararg{Any,N} where N shows up in the type signature. This seems to be what is causing the inference failure. I think this has something to do with the use of splatting in the expression builders, but I am not sure yet.
Unfortunately, it seems the current implementation of
flatten
also has type stability issues. I have yet to narrow down the exact cause, but in my present use-case, I get the following from@code_warntype
:Note in particular the last line, where
Vararg{Any,N} where N
shows up in the type signature. This seems to be what is causing the inference failure. I think this has something to do with the use of splatting in the expression builders, but I am not sure yet.