diff options
| author | Yukihiro "Matz" Matsumoto <[email protected]> | 2017-06-15 13:32:15 +0900 |
|---|---|---|
| committer | Yukihiro "Matz" Matsumoto <[email protected]> | 2017-06-15 13:32:15 +0900 |
| commit | bb1bfaa2fbc693a7185226737022d5d74b97a1de (patch) | |
| tree | 89634199960195d18ecb739232dfd06f8bc29034 /include/mruby.h | |
| parent | b979226871ab4a0f9977720d2a1fbf278d446cd3 (diff) | |
| download | mruby-bb1bfaa2fbc693a7185226737022d5d74b97a1de.tar.gz mruby-bb1bfaa2fbc693a7185226737022d5d74b97a1de.zip | |
Add helper functions to use gdb reverse-next.
On my machine, gdb reverse-next does not work with memcpy and memset.
Add naive implementation of those functions to override.
Diffstat (limited to 'include/mruby.h')
| -rw-r--r-- | include/mruby.h | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/include/mruby.h b/include/mruby.h index bd824ea91..995e1a743 100644 --- a/include/mruby.h +++ b/include/mruby.h @@ -1178,6 +1178,33 @@ MRB_API void mrb_show_copyright(mrb_state *mrb); MRB_API mrb_value mrb_format(mrb_state *mrb, const char *format, ...); +#if 0 +/* memcpy and memset does not work with gdb reverse-next on my box */ +/* use naive memcpy and memset instead */ +#undef memcpy +#undef memset +static inline void* +mrbmemcpy(void *dst, const void *src, size_t n) +{ + char *d = dst; + const char *s = src; + while (n--) + *d++ = *s++; + return d; +} +#define memcpy(a,b,c) mrbmemcpy(a,b,c) + +static inline void* +mrbmemset(void *s, int c, size_t n) +{ + char *t = s; + while (n--) + *t++ = c; + return s; +} +#define memset(a,b,c) mrbmemset(a,b,c) +#endif + MRB_END_DECL #endif /* MRUBY_H */ |
