Jun Hiroe
9ca1745833
Replace int with mrb_bool in local_var_p func
2014-10-28 00:11:16 +09:00
Jun Hiroe
34175bf41f
Refactor yylex func
2014-10-27 01:27:00 +09:00
Jun Hiroe
7bd2a8508e
Refactor mrbc_context_new func
2014-10-27 00:29:00 +09:00
Yukihiro "Matz" Matsumoto
69ba4f0ed5
instance_methods etc should not include undef'ed method names; based on a patch from @cremno; fix #2613
2014-10-20 11:11:26 +09:00
Jan Berdajs
aff2be4b40
fix typo (i->idx)
2014-10-15 14:11:00 +02:00
Hiroyuki Matsuzaki
e77ea4e5f2
fixed. cygwin-gcc(ver4.8.3) warning in conv_digit()
2014-10-02 19:50:58 +09:00
Yukihiro "Matz" Matsumoto
83992ee163
cast MRB_ENV_STACK_LEN to (mrb_int); ref #2600
2014-10-02 17:59:01 +09:00
Hiroshi Mimaki
ed15477c74
Pacify MSVC warnings for numeric.c, proc.c, and symbol.c
2014-10-02 13:37:49 +09:00
Yukihiro "Matz" Matsumoto
ae1403004b
load.c to use mrb_ro_data_p()
2014-10-01 00:01:36 +09:00
Yukihiro "Matz" Matsumoto
b72e94fa6b
mrbconf.h option MRB_USE_ETEXT_EDATA to reduce memory.
...
on platforms with _etext and _edata, mruby can distinguish string literals so that it avoids memory allocation to copy them.
for example, on my Linux box (x86 32bit), memory consumed by mrbtest decreased from 8,168,203 to 8,078,848 (reduced 88KB).
2014-09-30 23:48:57 +09:00
Yukihiro "Matz" Matsumoto
bbf24b8463
mrb_sym2name_len() should initialize lenp even when proper symbol does not exist
2014-09-30 22:46:19 +09:00
Yukihiro "Matz" Matsumoto
7a7dcd12e5
remove unnecessary trailing comma to remove pre C99 declaration error with -Wdeclaration-after-statement
2014-09-30 22:40:55 +09:00
Yukihiro "Matz" Matsumoto
4a55b42984
O(1) mrb_sym2name_len(); close #2591
...
instead of adding sym->name hash table, linear symbol table is added, and reduced name->sym hash table size.
2014-09-30 20:15:27 +09:00
take_cheeze
524c9152d3
Fix mrb_get_args arguments types found by mruby-clang-plugin.
2014-09-21 22:43:13 +09:00
Yukihiro "Matz" Matsumoto
5f7b0580b7
code reduce by using mrb_get_args("n")
2014-09-19 03:03:53 +09:00
Yukihiro "Matz" Matsumoto
147fbf1c12
Module#const_defined? to take second optional argument as CRuby; fix #2593
2014-09-19 03:02:07 +09:00
Yukihiro "Matz" Matsumoto
95c7f570e1
change class argument of mrb_const_defined_at from struct RClass* to mrb_value to make it consistent with mrb_const_defined; ref #2593
2014-09-19 02:51:52 +09:00
Yukihiro "Matz" Matsumoto
6b34166ba5
const_defined? to check superclasses; ref #2593
2014-09-19 02:41:20 +09:00
Yukihiro "Matz" Matsumoto
6057b2e378
change mrb_sym type from uint16_t to uint32_t
2014-09-15 01:48:08 +09:00
Yukihiro "Matz" Matsumoto
48c5321dca
constify pointer from RARRAY_PTR to detect potential write barrier bugs.
...
if you see compiler errors due to this commit, you'd better to use array-modifying
functions, e.g. mrb_ary_set() or mrb_ary_push(), otherwise you might see nasty
GC bugs in the future. if you are sure what you are doing, replace `RARRAY_PTR(ary)`
by `mrb_ary_ptr(ary)->ptr`. but be warned.
2014-09-12 12:42:39 +09:00
Tatsuhiko Kubo
cfb321e877
Add inline to str_with_class().
2014-09-09 00:44:49 +09:00
Yukihiro "Matz" Matsumoto
89e9df2681
fixed wandering filename problem
2014-09-08 01:20:43 +09:00
Yukihiro "Matz" Matsumoto
3f70edbd16
support native byteorder in mrb files; ref 3492be
2014-09-05 11:09:44 +09:00
Yukihiro "Matz" Matsumoto
5b235a8bfa
condition refactoring in load.c
2014-09-05 10:55:09 +09:00
Yukihiro "Matz" Matsumoto
81c894a1c6
add some MRB_API to function prototypes
2014-09-05 00:54:51 +09:00
Yukihiro "Matz" Matsumoto
9b4ec380d2
use uint16_t instead of short; ref #2568
2014-09-05 00:47:22 +09:00
cremno
610d1d4afa
fix strict aliasing rule violation
2014-09-04 12:34:37 +02:00
Yukihiro "Matz" Matsumoto
6b302d80a3
instance variable name validation based on <ctype.h>; fix #2584
2014-09-04 18:36:28 +09:00
Yukihiro "Matz" Matsumoto
32aee72d29
wrong iseq conversion flag
2014-09-04 18:28:56 +09:00
Yukihiro "Matz" Matsumoto
3492be401a
avoid iseq allocation from static irep binary. it reduces 424KB allocation for mrbtest
2014-09-04 17:16:34 +09:00
Yukihiro "Matz" Matsumoto
dc3c91dfdc
rename a local variable current_node -> nodetype; ref #2583
2014-09-04 08:33:18 +09:00
cremno
26bbc81e12
get rid of shadowing variables
...
Mostly by renaming the shadowing variable.
If a shadowing variable was deleted,
the shadowed one can be used instead.
2014-09-03 10:00:37 +02:00
Yukihiro "Matz" Matsumoto
1fdf47d71a
Merge pull request #2582 from iij/pr-attr-accessor-save-arena
...
save and restore arena index to prevent arena overflow.
2014-09-03 11:02:52 +09:00
Tomoyuki Sahara
2fd49b2b9f
save and restore arena index to prevent arena overflow.
2014-09-03 10:44:38 +09:00
Tatsuhiko Kubo
b9acd20aef
Use mrb_str_cat_lit() instead of mrb_str_cat_cstr() for string-literals.
2014-09-03 01:43:46 +09:00
Jun Hiroe
f7a7426d7e
Refactor mrb_obj_is_kind_of_m() in kernel.c
2014-09-02 19:40:29 +09:00
Jun Hiroe
3e40cc6974
Refactor obj_is_instance_of() in kernel.c
2014-09-02 19:40:23 +09:00
Yukihiro "Matz" Matsumoto
90ba47ccfe
implement attr_reader and attr_writer in C; use cfunc closure to speed-up
2014-09-02 16:41:38 +09:00
Yukihiro "Matz" Matsumoto
6c7b0d88e8
refactor valid instance variable name check
2014-09-02 16:37:40 +09:00
Yukihiro "Matz" Matsumoto
471c43ff96
move mrb_proc_new_cfunc_with_env() to the core
2014-09-02 13:03:32 +09:00
Yukihiro "Matz" Matsumoto
7ac68809d3
remove ci->nreg initialization from cipush()
2014-09-01 15:38:25 +09:00
Yukihiro "Matz" Matsumoto
296b0571be
remove unnecessary MRB_API from mrb_num_div(); close #2578
2014-08-30 16:15:31 +09:00
cremno
c219c2a15e
use RITE_LV_NULL_MARK for better readability
...
The comment didn't say why the length is reserved.
Using RITE_LV_NULL_MARK makes things a bit clearer.
2014-08-29 15:53:52 +02:00
cremno
0e28f4b973
add sym_validate_len() to validate symbol length
...
This also fixes an off-by-one in mrb_check_intern().
2014-08-29 15:53:51 +02:00
Yukihiro "Matz" Matsumoto
607795ffdd
more OP_MOVE swap detection in peephole optimization
2014-08-29 16:24:12 +09:00
Yukihiro "Matz" Matsumoto
3c4cd5428a
allow no_optimize esp. for debugger
2014-08-29 15:09:14 +09:00
Tatsuhiko Kubo
6b8e06a5b9
Remove unused macro.
...
OutOfRange() is no longer used.
2014-08-29 02:22:55 +09:00
Yukihiro "Matz" Matsumoto
a3c34c165b
Merge pull request #2572 from cubicdaiya/issues/fprintf_error_handlings
...
Fix error handlings for fprintf() and fputs() to file.
2014-08-29 01:10:44 +09:00
Yukihiro "Matz" Matsumoto
9e4b012478
Merge pull request #2570 from cubicdaiya/issues/unify_duplicated_functions
...
Unify and rename duplicated functions (noregexp() and regexp_check()).
2014-08-29 01:09:33 +09:00
Tatsuhiko Kubo
5fa30aeaea
Fix mismatches for MRB_API declarations.
2014-08-29 01:06:22 +09:00