Bug 247452
Summary: | unhelpful error message for TableGrow | ||
---|---|---|---|
Product: | WebKit | Reporter: | David Degazio <d_degazio> |
Component: | WebAssembly | Assignee: | David Degazio <d_degazio> |
Status: | RESOLVED FIXED | ||
Severity: | Normal | CC: | angelos, d_degazio, webkit-bug-importer |
Priority: | P2 | Keywords: | InRadar |
Version: | WebKit Nightly Build | ||
Hardware: | Unspecified | ||
OS: | Unspecified |
David Degazio
rdar://101241285
When typed function references are enabled, the TypeKind of the Funcref and Externref types becomes RefNull. This causes examples such as
(module
(type (;0;) (func (result i32)))
(func (;0;) (type 0) (result i32)
(local externref funcref)
local.get 0
i32.const 1
table.grow 0)
(table (;0;) 500 2000 funcref)
(table (;1;) 500 2000 externref))
to result in unhelpful error messages like `table.grow expects fill value of type RefNull got RefNull, in function at index 0`.
Since typed function references are just one instance of the WebAssembly type system becoming more complex in newer proposals, this is probably a good opportunity to improve our error messages in general to log more of the available type information.
Attachments | ||
---|---|---|
Add attachment proposed patch, testcase, etc. |
David Degazio
Pull request: https://github.com/WebKit/WebKit/pull/6098
EWS
Committed 256472@main (e04540b26853): <https://commits.webkit.org/256472@main>
Reviewed commits have been landed. Closing PR #6098 and removing active labels.
Angelos Oikonomopoulos
Caused a trivial regression on 32-bit ARM, see https://bugs.webkit.org/show_bug.cgi?id=247886.