# Exception when converting block arg

**URL:** <https://www.ruby-forum.com/t/exception-when-converting-block-arg/108274>\
**Category:** Development\
**Created:** [July 1, 2007, 4:08pm UTC](https://www.ruby-forum.com/t/exception-when-converting-block-arg/108274 "2007-07-01T16:08:30Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Yusuke\_ENDOH](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/y/c89c15/32.png) [@Yusuke\_ENDOH](https://www.ruby-forum.com/u/Yusuke_ENDOH)\
**Post date:** [July 1, 2007, 4:08pm UTC](https://www.ruby-forum.com/t/exception-when-converting-block-arg/108274/1 "2007-07-01T16:08:30Z")

</div>

e$B1sF#$H?=$7$^$9!#e(B

1.9 e$B$G%V%m%C%/0z?t$Ke(B proc  
e$B0J30$NCM$rM?$($?$H$-$NNc30$,!"CM$K$h$i$:e(B  
wrong argument type NilClass (expected Proc) e$B$K$J$j$^$9!#e(B

$ ./ruby -e ‘foo(&1)’  
-e:1:in `’: wrong argument type NilClass (expected Proc)  
(TypeError)

e$B$3$N\>l9g$Oe(B wrong argument type Fixnum (expected Proc)  
e$B$K$J$C$FM\_$7$$$He(B  
e$B;W$$$^$9!#e(B1.8 e$B$Ne(B eval.c  
e$B$G$O0J2\<$N$h$&$KBP:v:Q$\_$G$7$?!#e(B

# Index: insnhelper.ci

— insnhelper.ci (revision 12674)  
+++ insnhelper.ci (working copy)  
@@ -198,18 +198,19 @@  
if (block) {  
if (flag & VM\_CALL\_ARGS\_BLOCKARG\_BIT) {  
rb\_proc\_t \*po;

- 

```
 VALUE proc;

```

- 

```
 VALUE proc, b;

 proc = *(--cfp->sp);

 if (proc != Qnil) {

```

if (!rb\_obj\_is\_proc(proc)) {

- 

```
   proc = rb_check_convert_type(proc, T_DATA, "Proc", "to_proc");

```

- 

```
   if (!rb_obj_is_proc(proc)) {

```

- 

```
   b = rb_check_convert_type(proc, T_DATA, "Proc", "to_proc");

```

- 

```
   if (!rb_obj_is_proc(b)) {
 rb_raise(rb_eTypeError,
    "wrong argument type %s (expected Proc)",
    rb_obj_classname(proc));
   }

```

- 

```
   proc = b;

```

}  
GetProcPtr(proc, po);  
blockptr = &po-\>block;

---

<div class="post-metadata">

**Author:** ![Yusuke\_ENDOH](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/y/c89c15/32.png) [@Yusuke\_ENDOH](https://www.ruby-forum.com/u/Yusuke_ENDOH)\
**Post date:** [July 3, 2007, 10:01pm UTC](https://www.ruby-forum.com/t/exception-when-converting-block-arg/108274/2 "2007-07-03T22:01:23Z")

</div>

e$B!!$5$5$@$G$9!#e(B

Yusuke ENDOH wrote:

> 1.9 e$B$G%V%m%C%/0z?t$Ke(B proc e$B0J30$NCM$rM?$($?$H$-$NNc30$,!"CM$K$h$i$:e(B  
> wrong argument type NilClass (expected Proc) e$B$K$J$j$^$9!#e(B

e$B!!$"$j$,$H$&$4$6$$$^$9!#BP1~$7$^$7$?!#e(B
