Open
Description
Currently, certain naming collisions between symbols under a common parent command will result in a parser configuration whose behavior might not be correct during parsing (e.g. one symbol will always shadow the other) or might throw an exception during parsing.
- Commands and directives having the same name will throw
System.ArgumentException: An item with the same key has already been added.
even though this will not result in a misbehaving parser, since at parse time the actual directive tokens are differentiated from commands by the presence of surround[
and]
brackets. (Related: UseHost() - can't have subcommand "config" #2220)- A command with brackets in its name (
"[command]"
) could be shadowed by a directive namedcommand
.
- A command with brackets in its name (
- Commands and options with matching names or aliases will not currently result in an exception during parsing.