diff options
author | ngoto <ngoto@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2012-12-05 03:20:05 +0000 |
---|---|---|
committer | ngoto <ngoto@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2012-12-05 03:20:05 +0000 |
commit | f1841f43eb9d7ec45bcbee7f70abae77d999f76d (patch) | |
tree | 5bfae3093e806b84d48b05590ab886663ac93576 /test/dl | |
parent | 342d2f2aa6037bd126c2247c6c6b9bf97f8c42bd (diff) | |
download | ruby-f1841f43eb9d7ec45bcbee7f70abae77d999f76d.tar.gz |
* ext/dl/lib/dl/func.rb (DL::Function#initialize, DL::Function#bind):
ABI should be set by using CFunc#calltype even when Fiddle is used.
When Fiddle is used and a block is given, name shoud not be ignored.
[ruby-core:50562] [Bug #7514]
* ext/dl/lib/dl/import.rb (DL::Importer#bind_function): should respect
abi and name when Fiddle is used.
* test/dl/test_func.rb (test_name_with_block): test for "name" method
with giving a block.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38202 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/dl')
-rw-r--r-- | test/dl/test_func.rb | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/test/dl/test_func.rb b/test/dl/test_func.rb index 021ea36d25..514ed6c6c2 100644 --- a/test/dl/test_func.rb +++ b/test/dl/test_func.rb @@ -9,6 +9,12 @@ module DL assert_equal 'strcpy', f.name end + def test_name_with_block + cb = Function.new(CFunc.new(0, TYPE_INT, '<callback>qsort'), + [TYPE_VOIDP, TYPE_VOIDP]){|x,y| CPtr.new(x)[0] <=> CPtr.new(y)[0]} + assert_equal('<callback>qsort', cb.name) + end + def test_to_i cfunc = CFunc.new(@libc['strcpy'], TYPE_VOIDP, 'strcpy') f = Function.new(cfunc, [TYPE_VOIDP, TYPE_VOIDP]) |