I am trying to eliminate type instability in my function. When I perform @code_warntype to the function, some of the variables in the Variables: section of the output have names like #temp#@_130, T@_131, and A_1@_166, and they are typed ::Any and indicated red.
However, these unstable variables do not appear in the Body: section of the @code_warntype output, so it is difficult to figure out where these variables come from. I tried using @code_lowered following the suggestion here, but still have no luck figuring them out.
So, here are my questions:
- What do these
T,Ain the variablesT@_131andA_1@166mean? Is there any documentation that summarizes the meanings of them? -
@yuyichao’s comment in this issue thread seems to suggest that these red variables are in fact harmless as long as they don’t appear in the
Body:section of the@code_warntypeoutput. Can I always consider the red variables harmless if they do not appear in theBody:section?