diff --git a/guix/scripts/download.scm b/guix/scripts/download.scm index b81295e5d9d989f81c9327c66254e3bd0a5020c2..6ebc14f5733d364c74ff2722d491197f545a1607 100644 --- a/guix/scripts/download.scm +++ b/guix/scripts/download.scm @@ -96,6 +96,9 @@ (define (parse-options) (lambda (opt name arg result) (leave (_ "~A: unrecognized option~%") name)) (lambda (arg result) + (when (assq 'argument result) + (leave (_ "~A: extraneous argument~%") arg)) + (alist-cons 'argument arg result)) %default-options)) diff --git a/tests/guix-download.sh b/tests/guix-download.sh index 7af6f181f6a4d9035fe2632a7cfdf0d66b4ca159..6283772c4808a7e2887e6b10b0e12187df670713 100644 --- a/tests/guix-download.sh +++ b/tests/guix-download.sh @@ -1,5 +1,5 @@ # GNU Guix --- Functional package management for GNU -# Copyright © 2012 Ludovic Courtès <ludo@gnu.org> +# Copyright © 2012, 2015 Ludovic Courtès <ludo@gnu.org> # # This file is part of GNU Guix. # @@ -34,3 +34,7 @@ then false; else true; fi # This one should succeed. guix download "file://$abs_top_srcdir/README" + +# This one should fail. +if guix download "file:///does-not-exist" "file://$abs_top_srcdir/README" +then false; else true; fi