@@ -645,7 +645,7 @@ def main():
645645                        help = 'indentation of nodes (number of spaces)' )
646646    parser .add_argument ('--feature-version' ,
647647                        type = str , default = None , metavar = 'VERSION' ,
648-                         help = 'minor  version (int) or  3.x tuple  (e.g., 3.10)' )
648+                         help = 'python  version in the format  3.x (e.g., 3.10)' )
649649    parser .add_argument ('-o' , '--optimize' ,
650650                        type = int , default = - 1 , metavar = 'LEVEL' ,
651651                        help = 'optimization level for parser (default -1)' )
@@ -664,13 +664,13 @@ def main():
664664    # Process feature_version 
665665    feature_version  =  None 
666666    if  args .feature_version :
667-         if   '.'   in   args . feature_version :
668-             major_minor   =   tuple ( map (int , args .feature_version .split ('.' , 1 ) ))
669-              if   len ( major_minor )  !=   2   or   major_minor [ 0 ]  !=   3 :
670-                  parser .error (" --feature-version must be 3.x tuple (e.g., 3.10)" ) 
671-             feature_version   =   major_minor 
672-          else : 
673-              feature_version  =  int ( args . feature_version )
667+         try :
668+             major ,  minor   =   map (int , args .feature_version .split ('.' , 1 ))
669+         except   ValueError :
670+             parser .error ('Invalid format for  --feature-version; ' 
671+                           'expected format 3.x (e.g., 3.10)' ) 
672+ 
673+         feature_version  =  ( major ,  minor )
674674
675675    tree  =  parse (source , name , args .mode , type_comments = args .no_type_comments ,
676676                 feature_version = feature_version , optimize = args .optimize )
0 commit comments