Why does verifyTypeInfo sometimes return an Expression*, and sometimes void?