Yukihiro "Matz" Matsumoto
f5a86ca530
Add pointer casting from mrb_malloc(); ref #3267
2016-11-24 09:28:00 +09:00
Yukihiro "Matz" Matsumoto
798c69d1be
Avoid casting from int to unsigned char for C++; ref #3267
2016-11-24 09:28:00 +09:00
Tomasz Dąbrowski
401ad4586f
Add constant export declaration for MRBC output compiled as C++
...
Otherwise, C++ compilers will skip this constant when producing object files.
2016-11-24 09:28:00 +09:00
Tomasz Dąbrowski
1af9e363f2
Fixes for compiling mruby as C++
2016-11-24 09:28:00 +09:00
Yukihiro "Matz" Matsumoto
bfbc6b9ea4
local_variables() should not touch unshared env
2016-11-23 20:50:14 +09:00
Yukihiro "Matz" Matsumoto
efebbbbf26
Implement Float shift methods in C
2016-11-23 09:45:50 +09:00
Yukihiro "Matz" Matsumoto
8cba708854
int64_value(): use FIXABLE()
2016-11-22 19:11:54 +09:00
Yukihiro "Matz" Matsumoto
be73905c9c
accept floats as bit operator operands; fix #3260
2016-11-22 17:59:41 +09:00
Yukihiro "Matz" Matsumoto
8112295031
Removed fix_shift_get_width()
...
Fixnum is usually big enough for shift width.
2016-11-22 17:45:07 +09:00
Yukihiro "Matz" Matsumoto
740bf09740
add bit operators ~,&,|,^ to Float class (mruby special)
2016-11-22 17:36:26 +09:00
Yukihiro "Matz" Matsumoto
0ff3ae1fba
Range#include?: simplify condition; ref #3255
2016-11-18 11:54:24 +09:00
Yukihiro "Matz" Matsumoto
b03b1e37d9
Merge pull request #3255 from ksss/range-include
...
Fix condition of Range#include?
2016-11-18 11:48:49 +09:00
ksss
4ef591c897
Fix condition of Range#include?
2016-11-18 10:01:03 +09:00
Yukihiro "Matz" Matsumoto
57900d809f
String#include? does not take integers
2016-11-17 18:02:10 +09:00
Yukihiro "Matz" Matsumoto
8438792d27
renamed "inline" to "istruct" to represent inline struct; ref #3251
2016-11-17 17:19:49 +09:00
Tomasz Dąbrowski
4cca8bac6b
inline structures data type for mruby (MRB_TT_INLINE) ( fix #3237 )
...
Inline structures have no instance variables, no finalizer, and offer as much space as possible in RBASIC object. This means 24 bytes on 64-bit platforms and 12 bytes on 32-bit platforms.
mruby-inline-struct gem is only provided for testing.
2016-11-17 17:19:49 +09:00
Yukihiro "Matz" Matsumoto
c8b028027f
Merge pull request #3253 from ksss/range
...
Ranges should not rewrite
2016-11-17 16:44:58 +09:00
ksss
176d93d72a
Ranges should not rewrite
2016-11-17 14:57:30 +09:00
Tomasz Dąbrowski
8e0dc6fa8d
Correct argument specifications for few methods:
...
- Struct#values_at
- Module#define_method
- String#chop
- String#chop!
2016-11-16 15:46:28 +01:00
Yukihiro "Matz" Matsumoto
1f554ff854
Fixed rindex calling into mrb_equal bug
...
Fixed by Alex Snaps and reported by Mathieu Leduc-Hamel,
both from shopify.com. Thank you!
2016-11-16 02:10:44 +09:00
Yukihiro "Matz" Matsumoto
739dad6e87
Fixed a memory problem in Array#to_h
...
Reported from Alex Snaps via Mathieu Leduc-Hamel,
both from shopify.com. Thank you!
2016-11-16 01:29:04 +09:00
Yukihiro "Matz" Matsumoto
4f6cce059b
class/module statement should re-open; fix #3225
2016-11-15 04:15:24 +09:00
Yukihiro "Matz" Matsumoto
1422e57630
move mrb_str_dup() to mrb_class_path; ref #2470
...
Class#to_s used to return same string repeatedly,
that mean you can modify "class name" by modifying
the return value from Class#to_s.
2016-11-13 16:17:44 +09:00
Yukihiro "Matz" Matsumoto
88604e39ac
Hash#[] to call Hash#default
2016-11-12 05:23:05 +09:00
Yukihiro "Matz" Matsumoto
feb9b3debd
Merge pull request #3224 from ksss/define_method
...
Module#define_method supports proc argument
2016-11-11 22:57:52 +09:00
Felix Jones
178816626d
Merge branch 'mrb.class_under_defined'
2016-11-10 19:52:27 +00:00
Felix Jones
e3c8092ccd
Renamed class_under_defined to class_defined_under
2016-11-10 19:51:56 +00:00
Yukihiro "Matz" Matsumoto
872517dff3
class variables in higher order have a priority; fix #3235
2016-11-08 23:51:15 +09:00
Yukihiro "Matz" Matsumoto
6c299aae67
fixed wrong stack adjustment for ensure clauses; fix #3175
2016-11-07 00:44:08 +09:00
Felix Jones
8d6aa06548
Added mrb_class_under_defined
2016-11-06 13:01:21 +00:00
Yukihiro "Matz" Matsumoto
0b8d8dd379
associate REnv to the executing block; fix #3214
2016-11-05 02:52:34 +09:00
Yukihiro "Matz" Matsumoto
9a126278b6
should not unshare() reclaimed env objects; fix #3230
2016-10-28 09:21:14 +09:00
Yukihiro "Matz" Matsumoto
c45ed46f28
macro mrb_bool() may evaluate arg multiple times; ref #3228
2016-10-24 01:30:31 +09:00
Yukihiro "Matz" Matsumoto
7061658b5b
Merge pull request #3228 from ksss/respond_to_missing
...
Kernel#respond_to? should return true|false only
2016-10-24 01:27:13 +09:00
ksss
022e147b78
Kernel#respond_to? should return true|false only
2016-10-23 18:25:47 +09:00
Yukihiro "Matz" Matsumoto
6fd0e601cf
Move to_proc conversion from OP_ENTER to OP_SENDB; fix #3227
2016-10-20 23:49:40 +09:00
ksss
efe4f30b39
Module#define_method supports proc argument
2016-10-12 22:19:54 +09:00
Nobuyoshi Nakada
6511bfd79a
Removed trailing spaces
2016-09-28 12:29:41 +09:00
Yukihiro "Matz" Matsumoto
afbe211c60
mrb_str_strlen() should be MRB_API; ref #3216
2016-09-27 10:29:56 +09:00
Kouhei Sutou
91bd3ebd32
Remove needless MRB_API
...
ref #3215
If a function (such as mrb_read_irep_file()) is declared without MRB_API
in header file (such as include/mruby/dump.h), implementation of the
function in source file (such as src/load.c) should also defined without
MRB_API.
If MRB_API is mismatch, Visual C++ reports link error with C2375 error
code: https://msdn.microsoft.com/en-us/library/5k6kw95a.aspx
2016-09-25 21:47:49 +09:00
Yukihiro "Matz" Matsumoto
7a382e8bdf
Remove unnecessary MRB_API from read_irep related functions; ref #3215
2016-09-24 05:26:51 +09:00
Kazuaki Tanaka
cb29c9b415
Fix return value type of bytecode_decoder
2016-09-20 23:15:49 +00:00
Kazuaki Tanaka
968ebac001
Bytecode decoder support, MRB_BYTECODE_DECODE_OPTION
2016-09-20 23:07:28 +00:00
ksss
d265c03da0
Fix SEGV when splat object
...
Splat operation should return an array.
And raise an error if result of convert by to_a is not array or nil.
2016-09-08 16:35:17 +09:00
yuri
c9d4d96872
surpress warning when MRB_DISABLE_STDIO
2016-09-06 22:41:50 +09:00
ksss
a5c2e95b10
Should clear method name
...
- Fix method name in top-level
- Fix SEGV when call Exception#backtrace if callinfo over CALLINFO_INIT_SIZE(32)
2016-09-05 21:58:08 +09:00
Yukihiro "Matz" Matsumoto
ff3e4b91f2
Move Module#include and #prepend to class.c; ref #3197
...
To avoid VM nesting with mrb_funcall()
2016-08-20 00:03:30 +09:00
William Light
e02a88e031
make mrb_hash_values() a public API function
2016-08-01 11:05:46 +02:00
ksss
9dc820590f
Should raise LocalJumpError when no block given
2016-07-14 13:03:25 +09:00
Yuji Yamano
00faf3d317
Fix compilation error with GC_PROFILE.
2016-06-29 03:57:02 -04:00