diff --git a/mercurial/commands.py b/mercurial/commands.py --- a/mercurial/commands.py +++ b/mercurial/commands.py @@ -1226,13 +1226,9 @@ rev = opts.get(b'rev') inactive = opts.get(b'inactive') # meaning add/rename to inactive bookmark - selactions = [k for k in [b'delete', b'rename', b'list'] if opts.get(k)] - if len(selactions) > 1: - raise error.Abort( - _(b'--%s and --%s are incompatible') % tuple(selactions[:2]) - ) - if selactions: - action = selactions[0] + action = cmdutil.check_at_most_one_arg(opts, b'delete', b'rename', b'list') + if action: + pass elif names or rev: action = b'add' elif inactive: diff --git a/tests/test-bookmarks.t b/tests/test-bookmarks.t --- a/tests/test-bookmarks.t +++ b/tests/test-bookmarks.t @@ -475,7 +475,7 @@ $ cd repo $ hg bookmark -m Y -d Z - abort: --delete and --rename are incompatible + abort: cannot specify both --delete and --rename [255] $ hg bookmark -r 1 -d Z