From ff47338973feec4b09f0025c1ffd02a6cf6eadaa Mon Sep 17 00:00:00 2001 From: NAKAMURA Usaku Date: Fri, 20 Apr 2012 15:34:41 +0900 Subject: In mruby.h, there is no definitions of RSTRING_* here, so cannot compile if the compiler is not GCC. --- include/mruby.h | 3 +++ 1 file changed, 3 insertions(+) diff --git a/include/mruby.h b/include/mruby.h index 506158d3c..123f802ad 100644 --- a/include/mruby.h +++ b/include/mruby.h @@ -441,11 +441,14 @@ void mrb_bug(const char *fmt, ...); #ifdef __GNUC__ # define NUM2CHR(x) __extension__ ({mrb_value num2chr_x = (x); NUM2CHR_internal(num2chr_x);}) #else +/* TODO: there is no definitions of RSTRING_* here, so cannot compile. static inline char NUM2CHR(mrb_value x) { return NUM2CHR_internal(x); } +*/ +#define NUM2CHR(x) NUM2CHR_internal(x) #endif mrb_value mrb_io_gets(mrb_state *mrb, mrb_value); mrb_value mrb_io_getbyte(mrb_state *mrb, mrb_value); -- cgit v1.2.3 From 2161737c2dcae3ad6679d0b7bb752d201d3895a5 Mon Sep 17 00:00:00 2001 From: NAKAMURA Usaku Date: Fri, 20 Apr 2012 15:35:57 +0900 Subject: MRUBY_OBJECT_HEADER is always used with `;', but, in the definition of a struct, you cannot include any statement except declarations, even if the statement is void statement. --- include/mruby/object.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/mruby/object.h b/include/mruby/object.h index 151e36b96..e73ebe79a 100644 --- a/include/mruby/object.h +++ b/include/mruby/object.h @@ -6,7 +6,7 @@ int color:3;\ unsigned int flags:21;\ struct RClass *c;\ - struct RBasic *gcnext; + struct RBasic *gcnext /* white: 011, black: 100, gray: 000 */ -- cgit v1.2.3 From d2a38520ab569f9fa3589123af3b22fc2726f295 Mon Sep 17 00:00:00 2001 From: NAKAMURA Usaku Date: Fri, 20 Apr 2012 15:40:19 +0900 Subject: void* does not have its size. --- src/pool.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pool.c b/src/pool.c index 62e1a4d17..1a2bec642 100644 --- a/src/pool.c +++ b/src/pool.c @@ -68,7 +68,7 @@ mrb_pool_alloc(mrb_pool *pool, size_t len) if (page->offset + len <= page->len) { n = page->offset; page->offset += len; - page->last = (void*)page->page+n; + page->last = (char*)page->page+n; return page->last; } page = page->next; -- cgit v1.2.3 From c999e4762a8aea83bc253af4a4954919bb47934a Mon Sep 17 00:00:00 2001 From: NAKAMURA Usaku Date: Fri, 20 Apr 2012 15:42:05 +0900 Subject: the type of return values of tr->func_ii() and tr->func_si() is already mrb_value, so no need to cast. --- src/transcode.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/transcode.c b/src/transcode.c index cb2f86731..05d2b05b1 100644 --- a/src/transcode.c +++ b/src/transcode.c @@ -632,14 +632,14 @@ transcode_restartable0(mrb_state *mrb, } continue; case FUNii: - next_info = (mrb_value)(*tr->func_ii)(TRANSCODING_STATE(tc), next_info); + next_info = (*tr->func_ii)(TRANSCODING_STATE(tc), next_info); goto follow_info; case FUNsi: { const unsigned char *char_start; size_t char_len; char_start = transcode_char_start(tc, *in_pos, inchar_start, in_p, &char_len); - next_info = (mrb_value)(*tr->func_si)(TRANSCODING_STATE(tc), char_start, (size_t)char_len); + next_info = (*tr->func_si)(TRANSCODING_STATE(tc), char_start, (size_t)char_len); goto follow_info; } case FUNio: -- cgit v1.2.3