@@ -89,7 +89,7 @@ def constant_fold_expr(builder: IRBuilder, expr: Expression) -> ConstantValue |
8989 and isinstance (arg := args [0 ], (ListExpr , TupleExpr ))
9090 ):
9191 folded_items = constant_fold_container_expr (builder , arg )
92- if all (isinstance (item , str ) for item in folded_items ):
92+ if folded_items is not None and all (isinstance (item , str ) for item in folded_items ):
9393 return folded_callee .join (folded_items )
9494
9595 # builtins.bytes methods
@@ -102,7 +102,7 @@ def constant_fold_expr(builder: IRBuilder, expr: Expression) -> ConstantValue |
102102 and isinstance (arg := args [0 ], (ListExpr , TupleExpr ))
103103 ):
104104 folded_items = constant_fold_container_expr (builder , arg )
105- if all (isinstance (item , bytes ) for item in folded_items ):
105+ if folded_items is not None and all (isinstance (item , bytes ) for item in folded_items ):
106106 return folded_callee .join (folded_items )
107107 return None
108108
@@ -139,7 +139,7 @@ def constant_fold_container_expr(
139139 builder : IRBuilder , expr : ListExpr | TupleExpr
140140) -> list [ConstantValue ] | tuple [ConstantValue , ...] | None :
141141 folded_items = [constant_fold_expr (builder , item_expr ) for item_expr in expr .items ]
142- if all (isinstance (item , ( ConstantValue ) ) for item in folded_items ):
142+ if all (isinstance (item , CONST_TYPES ) for item in folded_items ):
143143 if isinstance (expr , ListExpr ):
144144 return folded_items
145145 elif isinstance (expr , TupleExpr ):
0 commit comments