File tree Expand file tree Collapse file tree 7 files changed +10
-18
lines changed Expand file tree Collapse file tree 7 files changed +10
-18
lines changed Original file line number Diff line number Diff line change @@ -3160,14 +3160,7 @@ Expression* SExpressionWasmBuilder::makeArraySet(Element& s) {
3160
3160
}
3161
3161
3162
3162
Expression* SExpressionWasmBuilder::makeArrayLen (Element& s) {
3163
- // There may or may not be a type annotation.
3164
- Index i = 1 ;
3165
- try {
3166
- parseHeapType (*s[i]);
3167
- ++i;
3168
- } catch (...) {
3169
- }
3170
- auto ref = parseExpression (*s[i]);
3163
+ auto ref = parseExpression (*s[1 ]);
3171
3164
return Builder (wasm).makeArrayLen (ref);
3172
3165
}
3173
3166
Original file line number Diff line number Diff line change 60
60
;; ROUNDTRIP-NEXT: )
61
61
;; ROUNDTRIP-NEXT: )
62
62
(func $len (param $a (ref array )) (result i32 )
63
- ;; TODO: remove the unused type annotation
64
- (array.len $byte-array
63
+ (array.len
65
64
(local.get $a )
66
65
)
67
66
)
77
76
;; ROUNDTRIP-NEXT: )
78
77
;; ROUNDTRIP-NEXT: )
79
78
(func $impossible-len (param $none nullref) (result i32 )
80
- (array.len $byte-array
79
+ (array.len
81
80
(local.get $none )
82
81
)
83
82
)
91
90
;; ROUNDTRIP-NEXT: (unreachable)
92
91
;; ROUNDTRIP-NEXT: )
93
92
(func $unreachable-len (param $a arrayref) (result i32 )
94
- (array.len $byte-array
93
+ (array.len
95
94
(unreachable )
96
95
)
97
96
)
Original file line number Diff line number Diff line change 4153
4153
;; CHECK-NEXT: )
4154
4154
(func $arrays (param $B (ref $B ))
4155
4155
(drop
4156
- (array.len $B
4156
+ (array.len
4157
4157
(array.new_fixed $B 2
4158
4158
(ref.null none)
4159
4159
(ref.null none)
Original file line number Diff line number Diff line change 1803
1803
(i32.const 3 )
1804
1804
)
1805
1805
(drop
1806
- (array.len $B
1806
+ (array.len
1807
1807
(local.get $array.len )
1808
1808
)
1809
1809
)
Original file line number Diff line number Diff line change 366
366
)
367
367
)
368
368
(drop
369
- (array.len $array
369
+ (array.len
370
370
(ref.as_non_null
371
371
(local.get $y )
372
372
)
Original file line number Diff line number Diff line change 52
52
)
53
53
;; The length should be 50
54
54
(call $log
55
- (array.len $bytes (local.get $x ))
55
+ (array.len (local.get $x ))
56
56
)
57
57
;; The value should be 42
58
58
(call $log
281
281
)
282
282
;; The length should be 2
283
283
(call $log
284
- (array.len $bytes (local.get $x ))
284
+ (array.len (local.get $x ))
285
285
)
286
286
;; The first value should be 42
287
287
(call $log
Original file line number Diff line number Diff line change 83
83
)
84
84
85
85
(func $len (param $v (ref $vec )) (result i32 )
86
- (array.len $vec (local.get $v ))
86
+ (array.len (local.get $v ))
87
87
)
88
88
(func (export " len" ) (result i32 )
89
89
(call $len (array.new_default $vec (i32.const 3 )))
You can’t perform that action at this time.
0 commit comments