Index: encoding.c =================================================================== --- encoding.c (revision 34755) +++ encoding.c (working copy) @@ -911,6 +911,8 @@ rb_enc_codepoint_len(const char *p, cons } else rb_raise(rb_eArgError, "invalid byte sequence in %s", rb_enc_name(enc)); + + return 0; /* not reached */ } #undef rb_enc_codepoint Index: re.c =================================================================== --- re.c (revision 34755) +++ re.c (working copy) @@ -1665,6 +1665,8 @@ name_to_backref_number(struct re_registe rb_raise(rb_eIndexError, "undefined group name reference: %s", StringValuePtr(s)); } + + return 0; /* not reached */ } /* Index: object.c =================================================================== --- object.c (revision 34755) +++ object.c (working copy) @@ -2470,6 +2470,8 @@ rb_Float(VALUE val) default: return rb_convert_type(val, T_FLOAT, "Float", "to_f"); } + + return Qnil; /* not reached */ } /* Index: io.c =================================================================== --- io.c (revision 34755) +++ io.c (working copy) @@ -2292,6 +2292,8 @@ io_readpartial(int argc, VALUE *argv, VA rb_eof_error(); else return ret; + + return Qnil; /* not reached */ } /* @@ -2353,6 +2355,8 @@ io_read_nonblock(int argc, VALUE *argv, rb_eof_error(); else return ret; + + return Qnil; /* not reached */ } /* Index: pack.c =================================================================== --- pack.c (revision 34755) +++ pack.c (working copy) @@ -2193,6 +2193,8 @@ rb_uv_to_utf8(char buf[6], unsigned long return 6; } rb_raise(rb_eRangeError, "pack(U): value out of range"); + + return 0; /* not reached */ } static const unsigned long utf8_limits[] = { Index: proc.c =================================================================== --- proc.c (revision 34755) +++ proc.c (working copy) @@ -1665,6 +1665,8 @@ rb_method_entry_arity(const rb_method_en } } rb_bug("rb_method_entry_arity: invalid method entry type (%d)", def->type); + + return 0; /* not reached */ } /* Index: vm_method.c =================================================================== --- vm_method.c (revision 34755) +++ vm_method.c (working copy) @@ -64,6 +64,8 @@ VALUE rb_f_notimplement(int argc, VALUE *argv, VALUE obj) { rb_notimplement(); + + return Qnil; /* not reached */ } static void Index: struct.c =================================================================== --- struct.c (revision 34755) +++ struct.c (working copy) @@ -681,6 +681,8 @@ rb_struct_aset_id(VALUE s, ID id, VALUE } } rb_name_error(id, "no member '%s' in struct", rb_id2name(id)); + + return Qnil; /* not reached */ } /* Index: class.c =================================================================== --- class.c (revision 34755) +++ class.c (working copy) @@ -1661,6 +1661,8 @@ rb_scan_args(int argc, const VALUE *argv else rb_raise(rb_eArgError, "wrong number of arguments (%d for %d%s)", argc, n_mand, f_var ? "+" : ""); + + return 0; /* not reached */ } /*! Index: process.c =================================================================== --- process.c (revision 34755) +++ process.c (working copy) @@ -3791,6 +3791,8 @@ rlimit_resource_type(VALUE rtype) return r; rb_raise(rb_eArgError, "invalid resource name: %s", name); + + return 0; /* not reached */ } static rlim_t @@ -3829,6 +3831,8 @@ rlimit_resource_value(VALUE rval) if (strcmp(name, "SAVED_CUR") == 0) return RLIM_SAVED_CUR; #endif rb_raise(rb_eArgError, "invalid resource value: %s", name); + + return (rlim_t)0; /* not reached */ } #endif @@ -5493,6 +5497,8 @@ p_uid_switch(VALUE obj) errno = EPERM; rb_sys_fail(0); } + + return Qnil; /* not reached */ } #else static VALUE @@ -5603,6 +5609,8 @@ p_gid_switch(VALUE obj) errno = EPERM; rb_sys_fail(0); } + + return Qnil; /* not reached */ } #else static VALUE Index: ext/digest/digest.c =================================================================== --- ext/digest/digest.c (revision 34755) +++ ext/digest/digest.c (working copy) @@ -154,6 +154,8 @@ static VALUE rb_digest_instance_update(VALUE self, VALUE str) { rb_digest_instance_method_unimpl(self, "update"); + + return Qnil; /* not reached */ } /* @@ -172,6 +174,8 @@ static VALUE rb_digest_instance_finish(VALUE self) { rb_digest_instance_method_unimpl(self, "finish"); + + return Qnil; /* not reached */ } /* @@ -186,6 +190,8 @@ static VALUE rb_digest_instance_reset(VALUE self) { rb_digest_instance_method_unimpl(self, "reset"); + + return Qnil; /* not reached */ } /* @@ -409,6 +415,8 @@ static VALUE rb_digest_instance_block_length(VALUE self) { rb_digest_instance_method_unimpl(self, "block_length"); + + return Qnil; /* not reached */ } /* Index: ext/bigdecimal/bigdecimal.c =================================================================== --- ext/bigdecimal/bigdecimal.c (revision 34755) +++ ext/bigdecimal/bigdecimal.c (working copy) @@ -971,6 +971,8 @@ BigDecimalCmp(VALUE self, VALUE r,char o } rb_bug("Undefined operation in BigDecimalCmp()"); + + return Qnil; /* not reached */ } /* Returns True if the value is zero. */ Index: ext/dl/handle.c =================================================================== --- ext/dl/handle.c (revision 34755) +++ ext/dl/handle.c (working copy) @@ -78,6 +78,8 @@ rb_dlhandle_close(VALUE self) return INT2NUM(ret); } rb_raise(rb_eDLError, "dlclose() called too many times"); + + return Qnil; /* not reached */ } VALUE Index: ext/tk/tcltklib.c =================================================================== --- ext/tk/tcltklib.c (revision 34755) +++ ext/tk/tcltklib.c (working copy) @@ -1407,6 +1407,8 @@ pending_exception_check0() } else { return 0; } + + return 0; /* not reached */ } static int @@ -1448,6 +1450,8 @@ pending_exception_check1(thr_crit_bup, p } else { return 0; } + + return 0; /* not reached */ } @@ -7781,6 +7785,8 @@ ip_cancel_eval_core(interp, msg, flag) #if TCL_MAJOR_VERSION < 8 || (TCL_MAJOR_VERSION == 8 && TCL_MINOR_VERSION < 6) rb_raise(rb_eNotImpError, "cancel_eval is supported Tcl/Tk8.6 or later."); + + return 0; /* not reached */ #else Tcl_Obj *msg_obj; @@ -10014,6 +10020,8 @@ lib_get_reltype_name(self) default: rb_raise(rb_eRuntimeError, "tcltklib has invalid release type number"); } + + return Qnil; /* not reached */ } @@ -10117,6 +10125,8 @@ create_dummy_encoding_for_tk_core(interp return Qnil; } } + + return Qnil; /* not reached */ #else return name; #endif Index: ext/tk/tkutil/tkutil.c =================================================================== --- ext/tk/tkutil/tkutil.c (revision 34755) +++ ext/tk/tkutil/tkutil.c (working copy) @@ -803,6 +803,8 @@ tk_hash_kv(argc, argv, self) } rb_raise(rb_eArgError, "Hash is expected for 1st argument"); } + + return Qnil; /* not reached */ } static VALUE Index: ext/fiddle/conversions.c =================================================================== --- ext/fiddle/conversions.c (revision 34755) +++ ext/fiddle/conversions.c (working copy) @@ -134,6 +134,8 @@ generic_to_value(VALUE rettype, fiddle_g default: rb_raise(rb_eRuntimeError, "unknown type %d", type); } + + return Qnil; /* not reached */ } /* vim: set noet sw=4 sts=4 */ Index: ext/socket/raddrinfo.c =================================================================== --- ext/socket/raddrinfo.c (revision 34755) +++ ext/socket/raddrinfo.c (working copy) @@ -2144,6 +2144,8 @@ rsock_io_socket_addrinfo(VALUE io, struc default: rb_raise(rb_eTypeError, "neither IO nor file descriptor"); } + + return Qnil; /* not reached */ } /* Index: ext/socket/socket.c =================================================================== --- ext/socket/socket.c (revision 34755) +++ ext/socket/socket.c (working copy) @@ -1334,6 +1334,8 @@ sock_s_getnameinfo(int argc, VALUE *argv error_exit_name: if (res) freeaddrinfo(res); rsock_raise_socket_error("getnameinfo", error); + + return Qnil; /* not reached */ } /* Index: ext/ripper/eventids2.c =================================================================== --- ext/ripper/eventids2.c (revision 34755) +++ ext/ripper/eventids2.c (working copy) @@ -274,4 +274,6 @@ ripper_token2eventid(int tok) return ripper_id_CHAR; } rb_raise(rb_eRuntimeError, "[Ripper FATAL] unknown token %d", tok); + + return (ID)NULL; /* not reached */ } Index: cont.c =================================================================== --- cont.c (revision 34755) +++ cont.c (working copy) @@ -1110,6 +1110,8 @@ return_fiber(void) fib->prev = Qnil; return prev; } + + return Qnil; /* not reached */ } VALUE rb_fiber_transfer(VALUE fib, int argc, VALUE *argv); Index: dmydln.c =================================================================== --- dmydln.c (revision 34755) +++ dmydln.c (working copy) @@ -4,4 +4,6 @@ void* dln_load(const char *file) { rb_loaderror("this executable file can't load extension libraries"); + + return NULL; } Index: vm_insnhelper.c =================================================================== --- vm_insnhelper.c (revision 34755) +++ vm_insnhelper.c (working copy) @@ -1464,6 +1464,8 @@ vm_search_normal_superclass(VALUE klass, else { rb_bug("vm_search_normal_superclass: should not be reach here"); } + + return Qnil; /* not reached */ } static void Index: bignum.c =================================================================== --- bignum.c (revision 34755) +++ bignum.c (working copy) @@ -2992,7 +2992,8 @@ big_fdiv(VALUE x, VALUE y) goto bignum; } rb_bug("big_fdiv"); - /* NOTREACHED */ + + return Qnil; /* NOTREACHED */ } /* Index: marshal.c =================================================================== --- marshal.c (revision 34755) +++ marshal.c (working copy) @@ -1143,6 +1143,8 @@ r_symlink(struct load_arg *arg) return (ID)id; } rb_raise(rb_eArgError, "bad symbol"); + + return (ID)NULL; /* not reached */ } static ID @@ -1190,6 +1192,8 @@ r_symbol(struct load_arg *arg) rb_raise(rb_eArgError, "dump format error for symbol(0x%x)", type); break; } + + return (ID)NULL; /* not reached */ } static VALUE