Commit 9926b33
committed
Fix overflow checking in unsigned pow()
The pow() method for unsigned integers produced 0 instead of trapping
overflow for certain inputs. Calls such as 2u32.pow(1024) produced 0
when they should trap an overflow. This also adds tests for the
correctly handling overflow in unsigned pow().
For issue number #349131 parent ddf92ff commit 9926b33
File tree
3 files changed
+27
-15
lines changed- src
- libcore/num
- test/run-fail
3 files changed
+27
-15
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2217 | 2217 | | |
2218 | 2218 | | |
2219 | 2219 | | |
2220 | | - | |
2221 | | - | |
2222 | | - | |
| 2220 | + | |
2223 | 2221 | | |
2224 | | - | |
2225 | | - | |
2226 | | - | |
2227 | | - | |
2228 | | - | |
2229 | | - | |
2230 | | - | |
2231 | | - | |
| 2222 | + | |
2232 | 2223 | | |
2233 | | - | |
2234 | | - | |
2235 | | - | |
2236 | | - | |
2237 | 2224 | | |
| 2225 | + | |
2238 | 2226 | | |
| 2227 | + | |
| 2228 | + | |
| 2229 | + | |
| 2230 | + | |
| 2231 | + | |
| 2232 | + | |
| 2233 | + | |
| 2234 | + | |
2239 | 2235 | | |
2240 | 2236 | | |
2241 | 2237 | | |
| |||
File renamed without changes.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
0 commit comments