From b68e69aa326c98fbe9676e00aea211a49c6ae361 Mon Sep 17 00:00:00 2001 From: Yukihiro Matsumoto Date: Thu, 17 May 2012 12:57:08 +0900 Subject: remove unused assignments --- src/class.c | 8 ++------ src/error.c | 65 +++++++++++++++++++++++++---------------------------------- src/load.c | 7 ++++--- src/sprintf.c | 8 +++----- src/string.c | 14 ++----------- 5 files changed, 39 insertions(+), 63 deletions(-) (limited to 'src') diff --git a/src/class.c b/src/class.c index 9bb924df0..ee8cb8f48 100644 --- a/src/class.c +++ b/src/class.c @@ -411,8 +411,8 @@ mrb_get_args(mrb_state *mrb, const char *format, ...) break; case 's': { - char **ps; - size_t *pl; + char **ps = 0; + size_t *pl = 0; struct RString *s; if (argc > i) { @@ -422,10 +422,6 @@ mrb_get_args(mrb_state *mrb, const char *format, ...) pl = va_arg(ap, size_t*); *pl = s->len; } - else { - *ps = ""; - *pl = 0; - } i++; sp++; } break; diff --git a/src/error.c b/src/error.c index 8dd800885..f3673f9c3 100644 --- a/src/error.c +++ b/src/error.c @@ -408,23 +408,9 @@ void mrb_init_exception(mrb_state *mrb) { struct RClass *e; - struct RClass *eTypeError_class; - struct RClass *eArgumentError_class; - struct RClass *eIndexError_class; - struct RClass *eRangeError_class; - struct RClass *eNameError_class; - struct RClass *eNoMethodError_class; - struct RClass *eScriptError_class; - struct RClass *eSyntaxError_class; - struct RClass *eLoadError_class; - struct RClass *eSystemCallError_class; - struct RClass *eLocalJumpError_class; - struct RClass *eRegexpError_class; - struct RClass *eZeroDivisionError_class; - struct RClass *eEncodingError_class; - struct RClass *eNotImpError_class; - struct RClass *eFloatDomainError_class; - struct RClass *eKeyError_class; + struct RClass *eIndexError; + struct RClass *eRangeError; + struct RClass *eNameError; mrb->eException_class = e = mrb_define_class(mrb, "Exception", mrb->object_class); /* 15.2.22 */ mrb_define_class_method(mrb, e, "exception", mrb_instance_new, ARGS_ANY()); @@ -438,24 +424,29 @@ mrb_init_exception(mrb_state *mrb) mrb->eStandardError_class = mrb_define_class(mrb, "StandardError", mrb->eException_class); /* 15.2.23 */ mrb->eRuntimeError_class = mrb_define_class(mrb, "RuntimeError", mrb->eStandardError_class); /* 15.2.28 */ - eTypeError_class = mrb_define_class(mrb, "TypeError", mrb->eStandardError_class); /* 15.2.29 */ - eArgumentError_class = mrb_define_class(mrb, "ArgumentError", mrb->eStandardError_class); /* 15.2.24 */ - eIndexError_class = mrb_define_class(mrb, "IndexError", mrb->eStandardError_class); /* 15.2.33 */ - eRangeError_class = mrb_define_class(mrb, "RangeError", mrb->eStandardError_class); /* 15.2.26 */ - eNameError_class = mrb_define_class(mrb, "NameError", mrb->eStandardError_class); /* 15.2.31 */ - - eNoMethodError_class = mrb_define_class(mrb, "NoMethodError", eNameError_class); /* 15.2.32 */ - eScriptError_class = mrb_define_class(mrb, "ScriptError", mrb->eException_class); /* 15.2.37 */ - eSyntaxError_class = mrb_define_class(mrb, "SyntaxError", eScriptError_class); /* 15.2.38 */ - eLoadError_class = mrb_define_class(mrb, "LoadError", eScriptError_class); /* 15.2.39 */ - eSystemCallError_class = mrb_define_class(mrb, "SystemCallError", mrb->eStandardError_class); /* 15.2.36 */ - eLocalJumpError_class = mrb_define_class(mrb, "LocalJumpError", mrb->eStandardError_class); /* 15.2.25 */ - eRegexpError_class = mrb_define_class(mrb, "RegexpError", mrb->eStandardError_class); /* 15.2.27 */ - eZeroDivisionError_class = mrb_define_class(mrb, "ZeroDivisionError", mrb->eStandardError_class); /* 15.2.30 */ - - eEncodingError_class = mrb_define_class(mrb, "EncodingError", mrb->eStandardError_class); - eNotImpError_class = mrb_define_class(mrb, "NotImplementedError", eScriptError_class); - - eFloatDomainError_class = mrb_define_class(mrb, "FloatDomainError", eRangeError_class); - eKeyError_class = mrb_define_class(mrb, "KeyError", eIndexError_class); + mrb_define_class(mrb, "TypeError", mrb->eStandardError_class); /* 15.2.29 */ + mrb_define_class(mrb, "ArgumentError", mrb->eStandardError_class); /* 15.2.24 */ + eIndexError = mrb_define_class(mrb, "IndexError", mrb->eStandardError_class); /* 15.2.33 */ + eRangeError = mrb_define_class(mrb, "RangeError", mrb->eStandardError_class); /* 15.2.26 */ + eNameError = mrb_define_class(mrb, "NameError", mrb->eStandardError_class); /* 15.2.31 */ + + mrb_define_class(mrb, "NoMethodError", eNameError); /* 15.2.32 */ + // eScriptError = mrb_define_class(mrb, "ScriptError", mrb->eException_class); /* 15.2.37 */ + // mrb_define_class(mrb, "SyntaxError", eScriptError); /* 15.2.38 */ + // mrb_define_class(mrb, "LoadError", eScriptError); /* 15.2.39 */ + // mrb_define_class(mrb, "NotImplementedError", eScriptError_class); + // mrb_define_class(mrb, "SystemCallError", mrb->eStandardError_class); /* 15.2.36 */ + mrb_define_class(mrb, "LocalJumpError", mrb->eStandardError_class); /* 15.2.25 */ + +#ifdef INCLUDE_REGEX + mrb_define_class(mrb, "RegexpError", mrb->eStandardError_class); /* 15.2.27 */ +#endif + +#ifdef INCLUDE_ENCODING + mrb_define_class(mrb, "EncodingError", mrb->eStandardError_class); +#endif + mrb_define_class(mrb, "ZeroDivisionError", mrb->eStandardError_class); /* 15.2.30 */ + + mrb_define_class(mrb, "FloatDomainError", eRangeError); + mrb_define_class(mrb, "KeyError", eIndexError); } diff --git a/src/load.c b/src/load.c index 015dd83e0..bc79b45d4 100644 --- a/src/load.c +++ b/src/load.c @@ -116,7 +116,9 @@ load_rite_header(FILE* fp, rite_binary_header* bin_header, unsigned char* hcrc) { rite_file_header file_header; - fread(&file_header, 1, sizeof(file_header), fp); + if (fread(&file_header, 1, sizeof(file_header), fp) < sizeof(file_header)) { + return MRB_DUMP_READ_FAULT; + } memcpy(bin_header->rbfi, file_header.rbfi, sizeof(file_header.rbfi)); if (memcmp(bin_header->rbfi, RITE_FILE_IDENFIFIER, sizeof(bin_header->rbfi)) != 0) { return MRB_DUMP_INVALID_FILE_HEADER; //File identifier error @@ -142,7 +144,7 @@ load_rite_irep_record(mrb_state *mrb, RiteFILE* rfp, unsigned char* dst, uint32_ { int i; uint32_t blocklen; - uint16_t offset, tt, pdl, snl, clen; + uint16_t offset, pdl, snl, clen; unsigned char hex2[2], hex4[4], hex8[8], hcrc[4]; unsigned char *pStart; char *char_buf; @@ -193,7 +195,6 @@ load_rite_irep_record(mrb_state *mrb, RiteFILE* rfp, unsigned char* dst, uint32_ for (i=0; i