Replace IS_OP?_TMP_FREE() with more clear (OP?_TYPE == IS_TMP_VAR)
Make error paths to be UNEXPECTED