IsExpression can evaluate the specified type speculatively, and even if
it instantiates any symbols, they are normally unnecessary for the
final executable.
However, if those symbols leak to the actual code, compiler should remark
them as non-speculative to generate their code and link to the final executable.
IsExpression can evaluate the specified type speculatively, and even if it instantiates any symbols, they are normally unnecessary for the final executable. However, if those symbols leak to the actual code, compiler should remark them as non-speculative to generate their code and link to the final executable.