diff --git a/etc/completion/bash/guix b/etc/completion/bash/guix
index 00c3dfaf49ef8138a0627371d244d07e716f9040..6a5f281c4fe14024904c2c2fb17d997bad15cb2e 100644
--- a/etc/completion/bash/guix
+++ b/etc/completion/bash/guix
@@ -26,7 +26,7 @@ _guix_complete_subcommand ()
     local subcommands="$(${COMP_WORDS[0]} $command --help 2> /dev/null \
                          | grep '^   [a-z]' \
                          | sed -e's/^ \+\([a-z-]\+\).*$/\1/g')"
-    COMPREPLY=($(compgen -W "$subcommands" -- "${COMP_WORDS[${#COMP_WORDS[*]} - 1]}"))
+    COMPREPLY=($(compgen -W "$subcommands" -- "${COMP_WORDS[$COMP_CWORD]}"))
 }
 
 _guix_complete_available_package ()