c
static ecma_value_t
validate_function_object (ecma_object_t *obj_p)
{
  if (obj_p == NULL || ecma_is_lexical_environment (obj_p))
  {
    return ecma_raise_type_error (ECMA_ERR_INVALID_FUNCTION_OBJECT);
  }
  return ECMA_VALUE_EMPTY;
}

// In the main function:
ecma_value_t result = validate_function_object (func_obj_p);
if (ecma_is_value_error (result))
{
  return result;
}
JERRY_ASSERT (func_obj_p != NULL && !ecma_is_lexical_environment (func_obj_p));
