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