summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2016-02-02 19:07:29 -0800
committerAlon Zakai <alonzakai@gmail.com>2016-02-02 19:20:43 -0800
commit5273c5c4eb03e78c6226e928973301566c8abc2a (patch)
tree9806596993ec9071c75004783eb1c6b8985082c6
parenta28ccaece49c9c5a59eba7d951f2a61b9c27f18a (diff)
downloadbinaryen-5273c5c4eb03e78c6226e928973301566c8abc2a.tar.gz
binaryen-5273c5c4eb03e78c6226e928973301566c8abc2a.tar.bz2
binaryen-5273c5c4eb03e78c6226e928973301566c8abc2a.zip
parse nans with all due care
-rw-r--r--src/parsing.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/parsing.h b/src/parsing.h
index faa4ad8cb..ed2f65b59 100644
--- a/src/parsing.h
+++ b/src/parsing.h
@@ -80,7 +80,7 @@ Expression* parseConst(cashew::IString s, WasmType type, MixedArena& allocator)
}
if (negative) pattern |= 0x80000000U;
if (!isnan(bit_cast<float>(pattern))) pattern |= 1U;
- ret->value = Literal(bit_cast<float>(pattern)); // XXX
+ ret->value = Literal(pattern).castToF32();
break;
}
case f64: {
@@ -94,7 +94,7 @@ Expression* parseConst(cashew::IString s, WasmType type, MixedArena& allocator)
}
if (negative) pattern |= 0x8000000000000000ULL;
if (!isnan(bit_cast<double>(pattern))) pattern |= 1ULL;
- ret->value = Literal(bit_cast<double>(pattern)); // XXX
+ ret->value = Literal(pattern).castToF64();
break;
}
default: return nullptr;