@@ -1207,15 +1207,15 @@ fn (mut g Gen) gen_array_method_call(node ast.CallExpr, left_type ast.Type, left
12071207 g.expr (node.args[0 ].expr)
12081208 g.write (')' )
12091209 }
1210- 'first' , 'last' , 'pop' {
1210+ 'first' , 'last' , 'pop_left' , ' pop' {
12111211 mut noscan := ''
12121212 array_info := left_sym.info as ast.Array
1213- if node.name == ' pop' {
1213+ if node.name in [ 'pop_left' , ' pop'] {
12141214 noscan = g.check_noscan (array_info.elem_type)
12151215 }
12161216 return_type_str := g.styp (node.return_type)
12171217 g.write ('(*(${return_type_str }*)array_${node .name }${noscan }(' )
1218- if node.name == ' pop' {
1218+ if node.name in [ 'pop_left' , ' pop'] {
12191219 g.gen_arg_from_type (left_type, node.left)
12201220 } else {
12211221 if node.left_type.is_ptr () {
@@ -1475,7 +1475,7 @@ fn (mut g Gen) resolve_receiver_name(node ast.CallExpr, unwrapped_rec_type ast.T
14751475 receiver_type_name = 'map'
14761476 }
14771477 if final_left_sym.kind == .array && ! (left_sym.kind == .alias && left_sym.has_method (node.name))
1478- && node.name in ['clear' , 'repeat' , 'sort_with_compare' , 'sorted_with_compare' , 'push_many' , 'trim' , 'first' , 'last' , 'pop' , 'clone' , 'reverse' , 'slice' , 'pointers' ] {
1478+ && node.name in ['clear' , 'repeat' , 'sort_with_compare' , 'sorted_with_compare' , 'push_many' , 'trim' , 'first' , 'last' , 'pop_left' , ' pop' , 'clone' , 'reverse' , 'slice' , 'pointers' ] {
14791479 if ! (left_sym.info is ast.Alias && typ_sym.has_method (node.name)) {
14801480 // `array_Xyz_clone` => `array_clone`
14811481 receiver_type_name = 'array'
0 commit comments