Lines Matching defs:closure
2536 // Lower the body of a function, and set the closure type. Record the
2719 if (fe->closure() != NULL)
3488 // closure.
3918 Expression* closure = NULL;
3922 // variable NEW_CLOSURE_NO and set it to be the closure variable
3923 // of the function. This will be set to the closure value
3925 // variable as the closure value when calling the original
3926 // function. In other words, simply pass the closure value
3933 snprintf(buf, sizeof buf, "closure.%u", count);
3938 closure = Expression::make_var_reference(new_closure_no, location);
3941 Expression* fn = Expression::make_func_reference(new_no, closure, location);
4535 // Return the closure variable, creating it if necessary.
4552 this->closure_var_ = Named_object::make_variable("$closure", NULL, var);
4558 // Set the type of the closure variable.
4565 Named_object* closure = this->closure_var_;
4566 Struct_type* st = closure->var_value()->type()->deref()->struct_type();
4568 // The first field of a closure is always a pointer to the function
5222 // If we need a closure variable, make sure to create it.