| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
1 parent c8a658a commit b0d6742
2 files changed
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -36,7 +36,7 @@ | |||
| 36 | 36 | ||
| 37 | 37 | # Reset this number to 0 on major V8 upgrades. | |
| 38 | 38 | # Increment by one for each non-official patch applied to deps/v8. | |
| 39 | - 'v8_embedder_string': '-node.8', | ||
| 39 | + 'v8_embedder_string': '-node.9', | ||
| 40 | 40 | ||
| 41 | 41 | ##### V8 defaults for Node.js ##### | |
| 42 | 42 | ||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -1830,7 +1830,17 @@ base::Optional<ParseResult> MakeNumberLiteralExpression( | |||
| 1830 | 1830 | // Meanwhile, we type it as constexpr float64 when out of int32 range. | |
| 1831 | 1831 | double value = 0; | |
| 1832 | 1832 | try { | |
| 1833 | + #if defined(V8_OS_SOLARIS) | ||
| 1834 | + // stod() on Solaris does not currently support hex strings. Use strtol() | ||
| 1835 | + // specifically for hex literals until stod() support is available. | ||
| 1836 | + if (number.find("0x") || number.find("0X")) { | ||
| 1837 | + value = static_cast<double>(strtol(number.c_str(), nullptr, 0)); | ||
| 1838 | + } else { | ||
| 1839 | + value = std::stod(number); | ||
| 1840 | + } | ||
| 1841 | + #else | ||
| 1833 | 1842 | value = std::stod(number); | |
| 1843 | + #endif // !defined(V8_OS_SOLARIS) | ||
| 1834 | 1844 | } catch (const std::out_of_range&) { | |
| 1835 | 1845 | Error("double literal out-of-range").Throw(); | |
| 1836 | 1846 | } | |
| Back | FazBrowse Home | New Git URL |
0 commit comments