Skip to content

Commit a5bc48d

Browse files
committed
Fixed cannot use v (variable of type Int) as int value in argument to RbInt2NumInline
1 parent 8be795a commit a5bc48d

File tree

3 files changed

+14
-14
lines changed

3 files changed

+14
-14
lines changed

ruby/ruby_internal_arithmetic_int.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,11 @@ import "C"
88
// c.f. https://github.com/ruby/ruby/blob/master/include/ruby/internal/arithmetic/int.h
99

1010
// NUM2INT is alias to [RbNum2intInline]
11-
func NUM2INT(x VALUE) Int {
11+
func NUM2INT(x VALUE) int {
1212
return RbNum2IntInline(x)
1313
}
1414

1515
// INT2NUM is alias to [RbInt2numInline]
16-
func INT2NUM(v Int) VALUE {
16+
func INT2NUM(v int) VALUE {
1717
return RbInt2NumInline(v)
1818
}

ruby/testdata/example/ext/example/benchmark.go

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -16,12 +16,12 @@ import (
1616
//export rb_example_benchmark_tarai
1717
func rb_example_benchmark_tarai(_ C.VALUE, x C.VALUE, y C.VALUE, z C.VALUE) C.VALUE {
1818
ret := tarai(
19-
int(ruby.NUM2INT(ruby.VALUE(x))),
20-
int(ruby.NUM2INT(ruby.VALUE(y))),
21-
int(ruby.NUM2INT(ruby.VALUE(z))),
19+
ruby.NUM2INT(ruby.VALUE(x)),
20+
ruby.NUM2INT(ruby.VALUE(y)),
21+
ruby.NUM2INT(ruby.VALUE(z)),
2222
)
2323

24-
return C.VALUE(ruby.INT2NUM(ruby.Int(ret)))
24+
return C.VALUE(ruby.INT2NUM(ret))
2525
}
2626

2727
func tarai(x int, y int, z int) int {
@@ -35,10 +35,10 @@ func tarai(x int, y int, z int) int {
3535
//export rb_example_benchmark_tarai_goroutine
3636
func rb_example_benchmark_tarai_goroutine(_ C.VALUE, x C.VALUE, y C.VALUE, z C.VALUE, times C.VALUE) C.VALUE {
3737
ret := tarai_goroutine(
38-
int(ruby.NUM2INT(ruby.VALUE(x))),
39-
int(ruby.NUM2INT(ruby.VALUE(y))),
40-
int(ruby.NUM2INT(ruby.VALUE(z))),
41-
int(ruby.NUM2INT(ruby.VALUE(times))),
38+
ruby.NUM2INT(ruby.VALUE(x)),
39+
ruby.NUM2INT(ruby.VALUE(y)),
40+
ruby.NUM2INT(ruby.VALUE(z)),
41+
ruby.NUM2INT(ruby.VALUE(times)),
4242
)
4343

4444
var values []ruby.VALUE

ruby/testdata/example/ext/example/go_struct.go

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -29,17 +29,17 @@ func go_struct_alloc(klass C.VALUE) C.VALUE {
2929
//export rb_example_go_struct_set
3030
func rb_example_go_struct_set(self C.VALUE, x C.VALUE, y C.VALUE) {
3131
data := (*GoStruct)(ruby.GetGoStruct(ruby.VALUE(self)))
32-
data.x = int(ruby.NUM2INT(ruby.VALUE(x)))
33-
data.y = int(ruby.NUM2INT(ruby.VALUE(y)))
32+
data.x = ruby.NUM2INT(ruby.VALUE(x))
33+
data.y = ruby.NUM2INT(ruby.VALUE(y))
3434
}
3535

3636
//export rb_example_go_struct_get
3737
func rb_example_go_struct_get(self C.VALUE) C.VALUE {
3838
data := (*GoStruct)(ruby.GetGoStruct(ruby.VALUE(self)))
3939

4040
ret := []ruby.VALUE{
41-
ruby.INT2NUM(ruby.Int(data.x)),
42-
ruby.INT2NUM(ruby.Int(data.y)),
41+
ruby.INT2NUM(data.x),
42+
ruby.INT2NUM(data.y),
4343
}
4444

4545
return C.VALUE(ruby.Slice2rbAry(ret))

0 commit comments

Comments
 (0)