github.phpd.cn/thought-machine/please@v12.2.0+incompatible/third_party/go/flags_subcommand.patch (about)

     1  diff --git a/parser.go b/parser.go
     2  index fd2fd5f..3af2af9 100644
     3  --- a/parser.go
     4  +++ b/parser.go
     5  @@ -633,10 +633,6 @@ func (p *parseState) addArgs(args ...string) error {
     6   }
     7   
     8   func (p *Parser) parseNonOption(s *parseState) error {
     9  -	if len(s.positional) > 0 {
    10  -		return s.addArgs(s.arg)
    11  -	}
    12  -
    13   	if len(s.command.commands) > 0 && len(s.retargs) == 0 {
    14   		if cmd := s.lookup.commands[s.arg]; cmd != nil {
    15   			s.command.Active = cmd
    16  @@ -649,6 +645,10 @@ func (p *Parser) parseNonOption(s *parseState) error {
    17   		}
    18   	}
    19   
    20  +	if len(s.positional) > 0 {
    21  +		return s.addArgs(s.arg)
    22  +	}
    23  +
    24   	if (p.Options & PassAfterNonOption) != None {
    25   		// If PassAfterNonOption is set then all remaining arguments
    26   		// are considered positional