| Age | Commit message (Collapse) | Author |
|
Shifting a value of type T by an amount that's greater or equal to the
size of the type itself is UB.
Spotted by @tgschultz
|
|
The pointer value for the `digits` field was being treated as if it were
a limb.
Fixes #2225
|
|
All current usages use base 10 and have a limb length of 1, hence why
we weren't hitting this error in practice.
|
|
The code path is tested by behavior tests.
Thanks to various contributors, but mostly Marc Tiehuis,
bigint.cpp now has full coverage.
closes #405
|
|
* bitreverse - give bswap behavior
* bitreverse, comptime_ints, negative values still not working?
* bitreverse working for negative comptime ints
* Finished bitreverse test cases
* Undo exporting a bigint function. @bitreverse test name includes ampersand
* added docs entry for @bitreverse
|
|
|
|
closes #1387
closes #1529
|
|
|
|
|
|
|
|
|
|
|
|
closes #948
|
|
|
|
|
|
See #405
|
|
See #405
|
|
also remove support for enums with 0 values
closes #305
|
|
closes #477
|
|
See #302
See #467
|
|
|
|
|
|
some tests still failing
|
|
previously we used the bigfloat abstraction to do all
compile-time float math. but runtime code and comptime code
are supposed to get the same result. so now if you add a
f32 to a f32 at compile time it does it with f32 math
instead of the bigfloat. float literals still get the
bigfloat math.
closes #424
|
|
and make bigfloat use __float128
|
|
|
|
closes #418
also make clz, ctz return smaller integer bit widths
and use smaller integer bit widths for enum tag types
|
|
* add u128 and i128 integer types
* add f128 floating point type
* implement big integer multiplication (See #405)
|
|
Before:
* << is left shift, not allowed to shift 1 bits out
* <<% is left shift, allowed to shift 1 bits out
* >> is right shift, allowed to shift 1 bits out
After:
* << is left shift, allowed to shift 1 bits out
* >> is right shift, allowed to shift 1 bits out
* @shlExact is left shift, not allowed to shift 1 bits out
* @shrExact is right shift, not allowed to shift 1 bits out
Closes #413
|
|
|