diff --git a/lib/modules/Arg.pmod b/lib/modules/Arg.pmod
index 4420995eb1a4567a6b73ea2b1cf69f835f028304..28c9ac3dc1f653168f8c3342771022db96389fbf 100644
--- a/lib/modules/Arg.pmod
+++ b/lib/modules/Arg.pmod
@@ -418,7 +418,7 @@ class LowOptions
       env = getenv();
 
     // Make a list of all the arguments we can parse.
-    foreach(::_indices(2), string index)
+    foreach(::_indices(this, 0), string index)
     {
       mixed val = ::`[](index, this, 0);
       if(objectp(val) && val->is_opt) opts[index]=val;