Commit Graph

228 Commits

Author SHA1 Message Date
cremno aa655b9ee1 remove superfluous includes
- reduce compile time by a little bit (full-core: ~0.7s for me)
- thanks to 'include-what-you-use' for some help
- include Standard C header files before any other (coding style)
2014-01-07 17:56:30 +01:00
Yukihiro "Matz" Matsumoto 791021575c need not to initialize ci->err at toplevel 2014-01-05 20:03:45 +09:00
Yukihiro "Matz" Matsumoto f5cca078e3 avoid decrimenting eidx out of ecall() 2014-01-05 19:18:13 +09:00
h2so5 0e23038a60 execute ensure clause correctly without OP_EPOP 2014-01-05 16:24:20 +09:00
Yukihiro "Matz" Matsumoto 2122cf48db pop ensure stack before execution; close #1638 2014-01-04 01:30:38 +09:00
Yukihiro "Matz" Matsumoto 6bcbef5064 always clear ci->err 2014-01-04 00:54:05 +09:00
Yukihiro "Matz" Matsumoto 4b68fbcd83 quicker release of arena after ensure calls 2014-01-04 00:13:28 +09:00
h2so5 77f215c837 use macros for assignments to ci->err 2014-01-03 21:54:58 +09:00
nanami 87a392067a Fixed callinfo buffer overflow while calling ensure handlers 2013-12-15 22:25:59 +08:00
Yukihiro "Matz" Matsumoto 3c2f51aef2 remove unnecessary keep size adjustment in stack_extend_alloc(); close #1602 2013-12-05 10:36:43 +09:00
Yukihiro "Matz" Matsumoto da8405a0f7 Merge pull request #1600 from take-cheeze/mrb_intern_lit
Proposal of mrb_intern_lit macro.
2013-12-01 21:29:46 -08:00
take_cheeze df780ae5e9 add mrb_intern_lit for creating symbol from string literal 2013-12-01 10:38:59 +09:00
Yukihiro "Matz" Matsumoto e981f0b45c inline mrb_gc_arena_restore() and stack_extend() in VM loop 2013-12-01 00:56:30 +09:00
Yukihiro "Matz" Matsumoto 9c6398a444 rename mrb_intern2() to mrb_intern(); huge API incompatibility; close #1513 2013-11-29 08:47:28 +09:00
Yukihiro "Matz" Matsumoto d73dfa8708 resolve conflict 2013-11-20 07:29:55 +09:00
Miura Hideki 54c5b12fb7 irep->pool struct pool -> mrb_value 2013-11-19 20:38:02 +09:00
Yukihiro "Matz" Matsumoto f9b14f49e6 Merge pull request #1584 from cremno/rename-mrb_exc_new3
renamed mrb_exc_new3 to mrb_exc_new_str
2013-11-18 16:24:42 -08:00
Yukihiro "Matz" Matsumoto 8954241687 clear ci->err after const set; revert 5b51b1; ref #1583 2013-11-19 09:21:55 +09:00
cremno aacadb2365 renamed mrb_exc_new3 to mrb_exc_new_str
- more descriptive name (there's no mrb_exc_new2)
- no wrapper (macro/static inline function) for
backwards compatibility because nothing besides
mruby itself seems to be calling this function:
<http://mruby-code-search.ongaeshi.me/home?query=mrb_exc_new3>
2013-11-18 21:01:03 +01:00
Yukihiro "Matz" Matsumoto 52070a9898 check upper callinfo to call ensure block; close #1579 2013-11-18 07:07:33 +09:00
Yukihiro "Matz" Matsumoto 71354b91cb enum mrb_vtype varies on compile time configuration, namely MRB_NAN_BOXING 2013-11-15 02:45:52 +09:00
Yukihiro "Matz" Matsumoto 16b34d187a remove warning on NAN_BOXING 2013-11-15 02:27:19 +09:00
Yukihiro "Matz" Matsumoto 677a2ac226 irep->pool not to be GCed 2013-11-07 04:20:46 +09:00
Yukihiro "Matz" Matsumoto e92d4e2680 modified to use irep->reps to reference child ireps. preparation for
removing irep array from mrb_state.  note that instructions OP_LAMBDA,
OP_EXEC and OP_EPUSH are incompatible, and dumped mrb format has changed.
2013-11-07 03:54:22 +09:00
fleuria a511957ec8 refactor mrb_context_run() 2013-11-03 12:05:25 +08:00
fleuria d75a907edf introduce mrb_context_run()
currently there are two scnenario to call mrb_run(), the first is
calling a proc, in this case mrb should create a new environment,
discarding all the variables except args, reciever and block.

the second is calling the newly generated irep, like in mirb.
in this case, the variables should be kept after mrb_run().
so we introduce mrb_context_run() to handle this seperately.
2013-11-03 11:32:59 +08:00
Yukihiro "Matz" Matsumoto a228841668 restore context status to RUNNING on automatic yield at the end of the block; fix #1555 2013-10-31 11:54:57 +09:00
Yukihiro "Matz" Matsumoto f8fea6931c preserve only arguments on stack; fix #1527 2013-10-30 12:01:18 +09:00
Yukihiro "Matz" Matsumoto 9b2f4c4423 move declarations to the beginning of blocks 2013-10-16 08:21:06 +09:00
Carson McDonald 11c4d81539 Set regs to stack on return of const_get calls before use 2013-10-15 07:33:41 -04:00
Yukihiro "Matz" Matsumoto a7c9a71684 better error position display 2013-10-15 12:49:41 +09:00
Yukihiro "Matz" Matsumoto 9295f6ae49 simplify stack_clear() 2013-10-05 18:50:55 +09:00
Atsushi_Morimoto 86f0912bcc fix build error when ENABLE_DEBUG is defined 2013-09-26 18:36:08 +09:00
Yukihiro "Matz" Matsumoto eeac4be4ce Merge pull request #1507 from ktaobo/yield-self
Use self for the given proc in mrb_yield
2013-09-21 04:16:28 -07:00
Yukihiro "Matz" Matsumoto 3995e7ff8f rename voidp to cptr 2013-09-21 17:28:47 +09:00
Keita Obo 862517d540 Use self for the given proc 2013-09-20 17:40:55 +09:00
Yukihiro "Matz" Matsumoto ad5c408c7b revert #1470; fix #1493 2013-08-31 14:19:15 +09:00
Yukihiro "Matz" Matsumoto 0dfda0c970 longjmp too far when exception raised from C function called from mrb_funcall() 2013-08-14 16:30:52 +09:00
Yukihiro "Matz" Matsumoto 8fa02a2cc7 Merge pull request #1470 from carsonmcdonald/morefixfor1467
Tests and another fix for issue #1467
2013-08-13 17:44:22 -07:00
Carson McDonald 7a2e0d6cf5 This check and class change is redundant because it is done in class.c#mrb_include_module 2013-08-13 11:38:27 -04:00
Carson McDonald 5a6a557f72 Remove debug printf 2013-08-13 11:30:51 -04:00
Yukihiro "Matz" Matsumoto b822c0b35e ci->target_class should point to ICLASS, not MODULE; close #1467 2013-08-14 00:13:32 +09:00
Yukihiro "Matz" Matsumoto c550a0f834 move mrb_gc_arena_restore() after cipop(); a bug found by Kilo Kawai 2013-07-31 22:24:10 +09:00
Yukihiro "Matz" Matsumoto e488393cbb Merge branch 'master' of github.com:mruby/mruby 2013-07-27 02:53:02 +09:00
Yukihiro "Matz" Matsumoto 63e5a3cfb1 refactor out longjmp() to a function 2013-07-25 14:54:17 +09:00
fleuria 620e323d15 replace assert with mrb_assert 2013-07-25 03:00:03 +08:00
Yukihiro "Matz" Matsumoto 8e6ca38416 Merge pull request #1378 from suzukaze/refactor2-vm.c
Replace 0 with FALSE and replace 1 with TRUE.
2013-07-14 06:00:06 -07:00
Jun Hiroe f7855764bc Replace int with mrb_bool because return a value is boolean. 2013-07-14 05:08:33 +09:00
Jun Hiroe 900b680006 Replace 0 with FALSE and replace 1 with TRUE. 2013-07-14 04:38:22 +09:00
Jun Hiroe 66c5b0d3fa Replace 0 with NULL because NULL is used in struct pointer. 2013-07-14 00:03:28 +09:00