pike.git
/
src
/
las.cmod
version
»
Context lines:
10
20
40
80
file
none
3
pike.git/src/las.cmod:4231:
copy_pike_type(n->type, CAR(n)->type); } else { copy_pike_type(n->type, mixed_type_string); } break; case F_RETURN: if (!CAR(n) || (CAR(n)->type == void_type_string)) { if (!CAR(n)) { _CAR(n) = mkintnode(0);
-
copy_pike_type(n->type, CAR(n)->type);
+
} else { _CAR(n) = mknode(F_COMMA_EXPR, CAR(n), mkintnode(0));
-
copy_pike_type(n->type, CDAR(n)->type);
+
} if (!Pike_compiler->compiler_frame || Pike_compiler->compiler_frame->current_return_type != void_type_string) {
-
yywarning("Returning a void expression. Converted to zero.");
-
break;
+
yywarning("Returning
or yielding
a void expression. Converted to zero.");
} } else if(Pike_compiler->compiler_frame && Pike_compiler->compiler_frame->current_return_type) { struct pike_type *t = Pike_compiler->compiler_frame->current_return_type; if( t->type == PIKE_T_AUTO ) { type_stack_mark();