diff --git a/ChangeLog b/ChangeLog
index b1dd59a4b0..b95b4015b3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Sat Oct 30 00:35:13 2010  Koichi Sasada  <ko1@atdot.net>
+
+	* iseq.c (iseq_s_compile): fix optional argument.
+	  a patch from Yutaka HARA [ruby-core:32953] [Ruby 1.9-Bug#4001]
+
 Sat Oct 30 00:24:42 2010  Koichi Sasada  <ko1@atdot.net>
 
 	* ext/objspace/objspace.c (memsize_of): take care of
diff --git a/iseq.c b/iseq.c
index 2a056ae0c1..327de57361 100644
--- a/iseq.c
+++ b/iseq.c
@@ -581,7 +581,7 @@ iseq_s_compile(int argc, VALUE *argv, VALUE self)
 
     rb_secure(1);
 
-    rb_scan_args(argc, argv, "13", &src, &file, &path, &line, &opt);
+    rb_scan_args(argc, argv, "14", &src, &file, &path, &line, &opt);
     if (NIL_P(file)) file = rb_str_new2("<compiled>");
     if (NIL_P(line)) line = INT2FIX(1);