We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent 1f7e875 commit 06357e5Copy full SHA for 06357e5
1 file changed
src/tools/fuzzing/fuzzing.cpp
@@ -2513,9 +2513,13 @@ void TranslateToFuzzReader::mutateJSBoundary() {
2513
for (Index i = 0; i < call->operands.size(); i++) {
2514
auto type = call->operands[i]->type;
2515
if (type == Type::unreachable) {
2516
- // Nothing sent here, so use the declared type - what we refine to
2517
- // must still validate even though this call is unreachable.
+ // Nothing sent here. What we refine to must still validate, even
+ // though this call is unreachable. Using the non-nullable bottom type
2518
+ // is valid, and has the fewest restrictions.
2519
type = declaredParams[i];
2520
+ if (type.isRef()) {
2521
+ type = Type(type.getHeapType().getBottom(), NonNullable);
2522
+ }
2523
}
2524
sent.push_back(type);
2525
0 commit comments