https://bugzilla.gnome.org/show_bug.cgi?id=795265
}
context.analyzer.current_symbol = this;
+ return_type.floating_reference = returns_floating_reference;
return_type.check (context);
var init_attr = get_attribute ("ModuleInit");
if (m.returns_modified_pointer) {
((MemberAccess) call).inner.lvalue = true;
}
+ // avoid passing possible null to ref_sink_function without checking
+ if (may_throw && !value_type.nullable && value_type.floating_reference && ret_type is ObjectType) {
+ value_type.nullable = true;
+ }
var dynamic_sig = m.parent_symbol as DynamicSignal;
if (dynamic_sig != null && dynamic_sig.handler != null) {